Skip to content

Releases: JovannMC/haritorax-interpreter

v3.5.1

Choose a tag to compare

@JovannMC JovannMC released this 24 Oct 19:58
abd9bc8

The v3.5.1 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.3. This is a hotfix that fixes mag data for HaritoraX 2 (cause I'm dumb).

Changelogs

  • Fix regular HX2 mag data
    • my bad
  • Update getAvailableDevices() for HX2

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

okay let's be real, that's not coming out lmao

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.5.0...v3.5.1

v3.5.0

Choose a tag to compare

@JovannMC JovannMC released this 24 Oct 19:05
41c6322

The v3.5.0 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.3. This is a critical "feature" (hotfix) update that fixes critical issues for HaritoraX 2 trackers: high idle acceleration & inaccurate leg data.

Changelogs

  • Add "HX2" to tracker models to fix issues
    • Fix high acceleration on idle
    • Fix HX2 leg trackers' mag data incorrect
  • Update packages

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

okay let's be real, that's not coming out lmao

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.4.5...v3.5.0

v3.4.5

Choose a tag to compare

@JovannMC JovannMC released this 16 Jul 14:56
d850887

The v3.4.5 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.2. This is another hotfix to fix some more non-major bugs. Girl you need to stop releasing multiple times a day lmao.

Changelogs

  • Fix write error when using getTrackerSettings() on Bluetooth
  • Fix switching to BT sometimes not working
  • help
    • girl why are you releasing it and immediately finding more issues

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

okay let's be real, that's not coming out lmao

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.4.4...v3.4.5

v3.4.4

Choose a tag to compare

@JovannMC JovannMC released this 16 Jul 14:43
f16398f

The v3.4.4 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.2. This is a hotfix simply fixing spam of "unknown data" for HaritoraX 2 on Bluetooth

Changelogs

  • Fix spam of "unknown data" for HaritoraX 2 on Bluetooth
  • help

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

okay let's be real, that's not coming out lmao

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.4.3...v3.4.4

v3.4.3

Choose a tag to compare

@JovannMC JovannMC released this 16 Jul 07:59
6749e44

The v3.4.3 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.2. This is a bugfix update that fixes additional trackers not working on HaritoraX Wired, and MAYBE auto-detection??

Changelogs

  • Fixed wired trackers hips/elbows not showing up
  • Fix wired auto detection (??????)
  • Package updates
  • help

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

okay let's be real, that's not coming out lmao

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.4.2...v3.4.3

v3.4.2

Choose a tag to compare

@JovannMC JovannMC released this 21 Jun 15:25
b418b27

The v3.4.2 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.1. This is a bugfix update that fixes more issues with HaritoraX 2 trackers & trackers disconnecting after a minute on Bluetooth. Oops, again.

Changelogs

  • Fix bluetooth disconnections after a minute
    • oops x2
  • Fix fireTrackerBattery() broken for HaritoraX 2
  • (DEV) Upload more test scripts
    • some of the test scripts i used to help RE the trackers lol, idk why i didnt upload them ages ago these are old
  • help

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

okay let's be real, that's not coming out lmao

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.4.1...v3.4.2

v3.4.1

Choose a tag to compare

@JovannMC JovannMC released this 21 Jun 00:12
999aa39

The v3.4.1 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.1. This is a bugfix update that fixes multiple issues with HaritoraX 2 trackers, trackers not turning off, and MAYBE fix some people's BT issues

Changelogs

  • Use new noble fork
    • MAYBE will fix some BT issues?
  • Fix trackers not turning off
    • oops
  • Fix multiple HaritoraX 2 bugs
    • Writing to HX2 extension writes to the main tracker, preventing write error
    • Tracker and extension not connecting/disconnecting properly
    • Mag status (almost) fixed, legs do not work still (for v2!!1)
  • help

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.4.0...v3.4.1

v3.4.0

Choose a tag to compare

@JovannMC JovannMC released this 18 May 19:48
ae8da27

The v3.4.0 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.0. This adds the long-awaited powering off BLE trackers and switching between connection modes, along with a few major bugfixes.

Changelogs

  • Add powering off trackers for BLE
    • Supports HaritoraX 2/Wireless
  • Add switching trackers between connection modes
  • Fix all trackers disconnecting if only one serial port is unavailable
    • oops, before i disconnected all even if the others were working lmao
  • Fix tracker assignments not working for assignments above 9 (hex)
  • Fix BLE devices not filtering when disconnected
  • Fix fireTrackerMag() not working on HaritoraX 2

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.3.2...v3.4.0

v3.3.2

Choose a tag to compare

@JovannMC JovannMC released this 10 Apr 19:18
d172935

The v3.3.2 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.0. sigh, again.

Changelogs

  • Remove debug spam, again.
    • sigh.

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.3.1...v3.3.2

v3.3.1

Choose a tag to compare

@JovannMC JovannMC released this 10 Apr 10:59
f780f39

The v3.3.1 release of the HaritoraX-Interpreter package is now out to coincide with SlimeTora v1.5.0. i forgot to remove debugs lol

Changelogs

  • Remove debug spam
    • i rushed this lmfao i forgot to remove

Installation

npm install haritorax-interpreter

Documentation

Will write actual documentation at some point, for now refer to the source code, examples, and JSDoc comments. You may also see how it's used in SlimeTora!

Supported devices

Device Supported Elbow/Hip support Additional trackers Extensions
HaritoraX 2 Y Y Y Y
HaritoraX Wireless Y Y Y N
HaritoraX 1.1B Y Y N N
HaritoraX 1.1 Y Y N N
HaritoraX 1.0 Y Y N N
Haritora ? ? N N
Communication mode Supported
Bluetooth (Low Energy) Y
Bluetooth Classic (serial) Y
GX6 Communication Dongle Y
GX2 Communication Dongle Y

Example

import { HaritoraX } from "haritorax-interpreter";

// connect to haritorax wireless, enable debug logs, allow printing of processIMUData() logs (lots of spam), print raw unprocessed data (more spam!)
let device = new HaritoraX("wireless", true, true, true);
// start connecting to dongles via GX dongles (COM connection), with the ports COM4, COM5, COM6, and COM7
device.startConnection("com", ["COM4", "COM5", "COM6", "COM7"]);

device.on("imu", (trackerName, rotation, gravity, ankle) => {
    // IMU data received, do stuff
});

setTimeout(() => {
    // apply the following settings to the rightAnkle tracker:
    // sensor mode: 1 (magnetometer enabled)
    // posture data transfer rate: 100FPS
    // sensor auto correction mode: accelerometer and gyroscope
    // ankle motion detection: enabled
    device.setTrackerSettings("rightAnkle", 1, 100, ['accel', 'gyro'], true);
}, 2000)

setTimeout(() => {
    device.stopConnection("com");
}, 10000)

Full Changelog: v3.3.0...v3.3.1