@hangtime/grip-connect 0.10.6 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/cjs/interfaces/command.interface.d.ts +12 -1
- package/dist/cjs/interfaces/command.interface.d.ts.map +1 -1
- package/dist/cjs/interfaces/device/climbro.interface.d.ts +25 -0
- package/dist/cjs/interfaces/device/climbro.interface.d.ts.map +1 -1
- package/dist/cjs/interfaces/device/progressor.interface.d.ts +15 -5
- package/dist/cjs/interfaces/device/progressor.interface.d.ts.map +1 -1
- package/dist/cjs/models/device/climbro.model.d.ts +25 -0
- package/dist/cjs/models/device/climbro.model.d.ts.map +1 -1
- package/dist/cjs/models/device/climbro.model.js +95 -3
- package/dist/cjs/models/device/climbro.model.js.map +1 -1
- package/dist/cjs/models/device/entralpi.model.d.ts.map +1 -1
- package/dist/cjs/models/device/entralpi.model.js +3 -5
- package/dist/cjs/models/device/entralpi.model.js.map +1 -1
- package/dist/cjs/models/device/progressor.model.d.ts +23 -10
- package/dist/cjs/models/device/progressor.model.d.ts.map +1 -1
- package/dist/cjs/models/device/progressor.model.js +80 -18
- package/dist/cjs/models/device/progressor.model.js.map +1 -1
- package/dist/cjs/models/device.model.d.ts.map +1 -1
- package/dist/cjs/models/device.model.js +30 -25
- package/dist/cjs/models/device.model.js.map +1 -1
- package/dist/interfaces/command.interface.d.ts +12 -1
- package/dist/interfaces/command.interface.d.ts.map +1 -1
- package/dist/interfaces/device/climbro.interface.d.ts +25 -0
- package/dist/interfaces/device/climbro.interface.d.ts.map +1 -1
- package/dist/interfaces/device/progressor.interface.d.ts +15 -5
- package/dist/interfaces/device/progressor.interface.d.ts.map +1 -1
- package/dist/models/device/climbro.model.d.ts +25 -0
- package/dist/models/device/climbro.model.d.ts.map +1 -1
- package/dist/models/device/climbro.model.js +95 -3
- package/dist/models/device/climbro.model.js.map +1 -1
- package/dist/models/device/entralpi.model.d.ts.map +1 -1
- package/dist/models/device/entralpi.model.js +3 -5
- package/dist/models/device/entralpi.model.js.map +1 -1
- package/dist/models/device/progressor.model.d.ts +23 -10
- package/dist/models/device/progressor.model.d.ts.map +1 -1
- package/dist/models/device/progressor.model.js +80 -18
- package/dist/models/device/progressor.model.js.map +1 -1
- package/dist/models/device.model.d.ts.map +1 -1
- package/dist/models/device.model.js +30 -25
- package/dist/models/device.model.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/package.json +4 -1
- package/src/interfaces/command.interface.ts +14 -1
- package/src/interfaces/device/climbro.interface.ts +30 -0
- package/src/interfaces/device/progressor.interface.ts +17 -5
- package/src/models/device/climbro.model.ts +100 -3
- package/src/models/device/entralpi.model.ts +3 -5
- package/src/models/device/progressor.model.ts +84 -18
- package/src/models/device.model.ts +39 -25
package/README.md
CHANGED
|
@@ -38,8 +38,8 @@ Learn more: [Documentation](https://stevie-ray.github.io/hangtime-grip-connect/)
|
|
|
38
38
|
|
|
39
39
|
## Try it out
|
|
40
40
|
|
|
41
|
-
[
|
|
42
|
-
[Pong](https://hangtime-grip-connect-pong.vercel.app/) -
|
|
41
|
+
[Force Measurement App](https://grip-connect.vercel.app/) -
|
|
42
|
+
[Flappy Bird](https://grip-connect-flappy-bird.vercel.app/) - [Pong](https://hangtime-grip-connect-pong.vercel.app/) -
|
|
43
43
|
[Kilter Board](https://grip-connect-kilter-board.vercel.app/?route=p1083r15p1117r15p1164r12p1185r12p1233r13p1282r13p1303r13p1372r13p1392r14p1505r15)
|
|
44
44
|
|
|
45
45
|
```bash
|
|
@@ -48,7 +48,7 @@ npx @hangtime/cli
|
|
|
48
48
|
|
|
49
49
|
> The CLI requires Node.js 22 or newer
|
|
50
50
|
|
|
51
|
-

|
|
52
52
|
|
|
53
53
|
## Install
|
|
54
54
|
|
|
@@ -93,8 +93,19 @@ export interface Commands {
|
|
|
93
93
|
*/
|
|
94
94
|
GET_PROGRESSOR_ID?: string;
|
|
95
95
|
/**
|
|
96
|
-
* Set calibration
|
|
96
|
+
* Set calibration block. Payload at offsets +2,+6,+10.
|
|
97
|
+
* The 12-byte block is interpreted as 3× float32 LE: slope, intercept, trim.
|
|
97
98
|
*/
|
|
98
99
|
SET_CALIBRATION?: string;
|
|
100
|
+
/**
|
|
101
|
+
* Retrieves the advanced calibration table from the device.
|
|
102
|
+
* Used to inspect the hidden piecewise interpolation table exported by v2 firmware.
|
|
103
|
+
*/
|
|
104
|
+
GET_CALIBRATION_TABLE?: string;
|
|
105
|
+
/**
|
|
106
|
+
* Reboots the device immediately.
|
|
107
|
+
* Intended for diagnostic flows.
|
|
108
|
+
*/
|
|
109
|
+
REBOOT?: string;
|
|
99
110
|
}
|
|
100
111
|
//# sourceMappingURL=command.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.interface.d.ts","sourceRoot":"","sources":["../../../src/interfaces/command.interface.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,QAAQ;IAGvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAInB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAIxB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAIzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAE5B;;;OAGG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAA;IAEnC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAE5B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B
|
|
1
|
+
{"version":3,"file":"command.interface.d.ts","sourceRoot":"","sources":["../../../src/interfaces/command.interface.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,QAAQ;IAGvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAInB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAIxB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAIzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAE5B;;;OAGG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAA;IAEnC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAE5B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB"}
|
|
@@ -8,5 +8,30 @@ export interface IClimbro extends IDevice {
|
|
|
8
8
|
* @returns {Promise<string | undefined>} A Promise that resolves with the battery level.
|
|
9
9
|
*/
|
|
10
10
|
battery(): Promise<string | undefined>;
|
|
11
|
+
/**
|
|
12
|
+
* Retrieves hardware version from the device.
|
|
13
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the hardware version.
|
|
14
|
+
*/
|
|
15
|
+
hardware(): Promise<string | undefined>;
|
|
16
|
+
/**
|
|
17
|
+
* Retrieves manufacturer information from the device.
|
|
18
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the manufacturer information.
|
|
19
|
+
*/
|
|
20
|
+
manufacturer(): Promise<string | undefined>;
|
|
21
|
+
/**
|
|
22
|
+
* Retrieves model number from the device.
|
|
23
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the model number.
|
|
24
|
+
*/
|
|
25
|
+
model(): Promise<string | undefined>;
|
|
26
|
+
/**
|
|
27
|
+
* Retrieves software version from the device.
|
|
28
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the software version.
|
|
29
|
+
*/
|
|
30
|
+
software(): Promise<string | undefined>;
|
|
31
|
+
/**
|
|
32
|
+
* Retrieves system id from the device.
|
|
33
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the system id.
|
|
34
|
+
*/
|
|
35
|
+
system(): Promise<string | undefined>;
|
|
11
36
|
}
|
|
12
37
|
//# sourceMappingURL=climbro.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"climbro.interface.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/device/climbro.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAErD;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,OAAO;IACvC;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"climbro.interface.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/device/climbro.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAErD;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,OAAO;IACvC;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAEtC;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAEvC;;;OAGG;IACH,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAE3C;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAEpC;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAEvC;;;OAGG;IACH,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CACtC"}
|
|
@@ -19,11 +19,16 @@ export interface IProgressor extends IDevice {
|
|
|
19
19
|
*/
|
|
20
20
|
progressorId(): Promise<string | undefined>;
|
|
21
21
|
/**
|
|
22
|
-
* Retrieves calibration
|
|
23
|
-
*
|
|
24
|
-
*
|
|
22
|
+
* Retrieves the linear calibration block from the device (opcode 0x72).
|
|
23
|
+
* Parsed for display as raw hex plus 3× float32 LE coefficients:
|
|
24
|
+
* slope, intercept, and trim. Firmware uses: value = raw * slope + intercept + trim.
|
|
25
25
|
*/
|
|
26
26
|
calibration(): Promise<string | undefined>;
|
|
27
|
+
/**
|
|
28
|
+
* Retrieves the hidden 15-entry piecewise calibration table.
|
|
29
|
+
* Returns newline-separated decoded records in export order.
|
|
30
|
+
*/
|
|
31
|
+
calibrationTable(): Promise<string | undefined>;
|
|
27
32
|
/**
|
|
28
33
|
* Computes calibration curve from stored points and saves to flash.
|
|
29
34
|
* Call after addCalibrationPoint() for zero and reference. Normal flow: i → i → j.
|
|
@@ -35,9 +40,14 @@ export interface IProgressor extends IDevice {
|
|
|
35
40
|
*/
|
|
36
41
|
sleep(): Promise<void>;
|
|
37
42
|
/**
|
|
38
|
-
*
|
|
43
|
+
* Reboots the device immediately.
|
|
44
|
+
* Intended for diagnostic flows. Sends the firmware's required reboot-confirmation payload.
|
|
45
|
+
*/
|
|
46
|
+
reboot(): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Set a new calibration block.
|
|
39
49
|
* @warning Expert only. This will overwrite the current calibration curve.
|
|
40
|
-
* @param curve - The 12-byte calibration
|
|
50
|
+
* @param curve - The 12-byte calibration block to set (3× float32 LE: slope, intercept, trim).
|
|
41
51
|
*/
|
|
42
52
|
setCalibration(curve: Uint8Array): Promise<void>;
|
|
43
53
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progressor.interface.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/device/progressor.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAErD;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,OAAO;IAC1C;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAEtC;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAEvC;;;OAGG;IACH,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAE3C;;;;OAIG;IACH,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAE1C;;;OAGG;IACH,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEhC;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtB;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEhD;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAExC;;;OAGG;IACH,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/B;;;OAGG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAErB;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAExC;;;OAGG;IACH,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEpC,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAA;CAChC"}
|
|
1
|
+
{"version":3,"file":"progressor.interface.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/device/progressor.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAErD;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,OAAO;IAC1C;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAEtC;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAEvC;;;OAGG;IACH,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAE3C;;;;OAIG;IACH,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAE1C;;;OAGG;IACH,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAE/C;;;OAGG;IACH,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEhC;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtB;;;OAGG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEvB;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEhD;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAExC;;;OAGG;IACH,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/B;;;OAGG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAErB;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAExC;;;OAGG;IACH,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEpC,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAA;CAChC"}
|
|
@@ -31,6 +31,31 @@ export declare class Climbro extends Device implements IClimbro {
|
|
|
31
31
|
* @returns {Promise<string | undefined>} A Promise that resolves with the battery level.
|
|
32
32
|
*/
|
|
33
33
|
battery: () => Promise<string | undefined>;
|
|
34
|
+
/**
|
|
35
|
+
* Retrieves hardware version from the device.
|
|
36
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the hardware version.
|
|
37
|
+
*/
|
|
38
|
+
hardware: () => Promise<string | undefined>;
|
|
39
|
+
/**
|
|
40
|
+
* Retrieves manufacturer information from the device.
|
|
41
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the manufacturer information.
|
|
42
|
+
*/
|
|
43
|
+
manufacturer: () => Promise<string | undefined>;
|
|
44
|
+
/**
|
|
45
|
+
* Retrieves model number from the device.
|
|
46
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the model number.
|
|
47
|
+
*/
|
|
48
|
+
model: () => Promise<string | undefined>;
|
|
49
|
+
/**
|
|
50
|
+
* Retrieves software version from the device.
|
|
51
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the software version.
|
|
52
|
+
*/
|
|
53
|
+
software: () => Promise<string | undefined>;
|
|
54
|
+
/**
|
|
55
|
+
* Retrieves system id from the device.
|
|
56
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the system id.
|
|
57
|
+
*/
|
|
58
|
+
system: () => Promise<string | undefined>;
|
|
34
59
|
/**
|
|
35
60
|
* Handles data received from the device, processes force measurements and battery data
|
|
36
61
|
* according to the Climbro protocol.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"climbro.model.d.ts","sourceRoot":"","sources":["../../../../src/models/device/climbro.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8CAA8C,CAAA;AAoB5E;;;GAGG;AACH,qBAAa,OAAQ,SAAQ,MAAO,YAAW,QAAQ;IACrD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAc;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAc;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAoD;IACxF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAEtE;;;;;OAKG;IACH,OAAO,CAAC,WAAW,CAAI;IAEvB;;;;OAIG;IACH,OAAO,CAAC,YAAY,CAAI;;
|
|
1
|
+
{"version":3,"file":"climbro.model.d.ts","sourceRoot":"","sources":["../../../../src/models/device/climbro.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8CAA8C,CAAA;AAoB5E;;;GAGG;AACH,qBAAa,OAAQ,SAAQ,MAAO,YAAW,QAAQ;IACrD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAc;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAc;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAoD;IACxF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAEtE;;;;;OAKG;IACH,OAAO,CAAC,WAAW,CAAI;IAEvB;;;;OAIG;IACH,OAAO,CAAC,YAAY,CAAI;;IA+ExB;;;OAGG;IACH,OAAO,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAG9C;IAED;;;OAGG;IACH,QAAQ,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE/C;IAED;;;OAGG;IACH,YAAY,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEnD;IAED;;;OAGG;IACH,KAAK,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE5C;IAED;;;OAGG;IACH,QAAQ,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE/C;IAED;;;OAGG;IACH,MAAM,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7C;IAED;;;;;OAKG;IACM,mBAAmB,GAAI,OAAO,QAAQ,KAAG,IAAI,CA2FrD;CACF"}
|
|
@@ -36,10 +36,67 @@ class Climbro extends device_model_js_1.Device {
|
|
|
36
36
|
uuid: "49535343-fe7d-4ae5-8fa9-9fafd205e455",
|
|
37
37
|
characteristics: [
|
|
38
38
|
{
|
|
39
|
-
name: "
|
|
39
|
+
name: "UART Tramsmit (we set as rx)",
|
|
40
40
|
id: "rx",
|
|
41
41
|
uuid: "49535343-1e4d-4bd9-ba61-23c647249616",
|
|
42
42
|
},
|
|
43
|
+
{
|
|
44
|
+
name: "UART Receive (we set as tx)",
|
|
45
|
+
id: "tx",
|
|
46
|
+
uuid: "49535343-8841-43f4-a8d4-ecbe34729bb3",
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: "Transparent Control Point",
|
|
50
|
+
id: "tcp",
|
|
51
|
+
uuid: "49535343-4c8a-39b3-2f49-511cff073b7e",
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
name: "Device Information",
|
|
57
|
+
id: "device",
|
|
58
|
+
uuid: "0000180a-0000-1000-8000-00805f9b34fb",
|
|
59
|
+
characteristics: [
|
|
60
|
+
{
|
|
61
|
+
name: "System ID",
|
|
62
|
+
id: "system",
|
|
63
|
+
uuid: "00002a23-0000-1000-8000-00805f9b34fb",
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
name: "Model Number String",
|
|
67
|
+
id: "model", // RN487x
|
|
68
|
+
uuid: "00002a24-0000-1000-8000-00805f9b34fb",
|
|
69
|
+
},
|
|
70
|
+
// {
|
|
71
|
+
// name: "Serial Number String (Blocked)",
|
|
72
|
+
// id: "serial",
|
|
73
|
+
// uuid: "00002a25-0000-1000-8000-00805f9b34fb",
|
|
74
|
+
// },
|
|
75
|
+
{
|
|
76
|
+
name: "Firmware Revision String",
|
|
77
|
+
id: "firmware",
|
|
78
|
+
uuid: "00002a26-0000-1000-8000-00805f9b34fb",
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
name: "Hardware Revision String",
|
|
82
|
+
id: "hardware", // 5505 102_BLDK3
|
|
83
|
+
uuid: "00002a27-0000-1000-8000-00805f9b34fb",
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
name: "Software Revision String",
|
|
87
|
+
id: "software", // 1.30
|
|
88
|
+
uuid: "00002a28-0000-1000-8000-00805f9b34fb",
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
name: "Manufacturer Name String",
|
|
92
|
+
id: "manufacturer", // Microchip
|
|
93
|
+
uuid: "00002a29-0000-1000-8000-00805f9b34fb",
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
name: "IEEE 11073-20601 Regulatory Certification Data List",
|
|
97
|
+
id: "certification",
|
|
98
|
+
uuid: "00002a2a-0000-1000-8000-00805f9b34fb",
|
|
99
|
+
},
|
|
43
100
|
],
|
|
44
101
|
},
|
|
45
102
|
],
|
|
@@ -65,6 +122,41 @@ class Climbro extends device_model_js_1.Device {
|
|
|
65
122
|
// Battery level is continuously updated via notifications
|
|
66
123
|
return this.batteryLevel.toString();
|
|
67
124
|
};
|
|
125
|
+
/**
|
|
126
|
+
* Retrieves hardware version from the device.
|
|
127
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the hardware version.
|
|
128
|
+
*/
|
|
129
|
+
this.hardware = async () => {
|
|
130
|
+
return await this.read("device", "hardware", 250);
|
|
131
|
+
};
|
|
132
|
+
/**
|
|
133
|
+
* Retrieves manufacturer information from the device.
|
|
134
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the manufacturer information.
|
|
135
|
+
*/
|
|
136
|
+
this.manufacturer = async () => {
|
|
137
|
+
return await this.read("device", "manufacturer", 250);
|
|
138
|
+
};
|
|
139
|
+
/**
|
|
140
|
+
* Retrieves model number from the device.
|
|
141
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the model number.
|
|
142
|
+
*/
|
|
143
|
+
this.model = async () => {
|
|
144
|
+
return await this.read("device", "model", 250);
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* Retrieves software version from the device.
|
|
148
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the software version.
|
|
149
|
+
*/
|
|
150
|
+
this.software = async () => {
|
|
151
|
+
return await this.read("device", "software", 250);
|
|
152
|
+
};
|
|
153
|
+
/**
|
|
154
|
+
* Retrieves system id from the device.
|
|
155
|
+
* @returns {Promise<string | undefined>} A Promise that resolves with the system id.
|
|
156
|
+
*/
|
|
157
|
+
this.system = async () => {
|
|
158
|
+
return await this.read("device", "system", 250);
|
|
159
|
+
};
|
|
68
160
|
/**
|
|
69
161
|
* Handles data received from the device, processes force measurements and battery data
|
|
70
162
|
* according to the Climbro protocol.
|
|
@@ -80,7 +172,7 @@ class Climbro extends device_model_js_1.Device {
|
|
|
80
172
|
let flagSynchro = this.flagSynchro;
|
|
81
173
|
let forceCount = 0;
|
|
82
174
|
for (let i = 0; i < byteCount; i++) {
|
|
83
|
-
|
|
175
|
+
const b = buffer[i];
|
|
84
176
|
if (b === ClimbroResponses.BAT_DAT) {
|
|
85
177
|
flagSynchro = ClimbroResponses.BAT_DAT;
|
|
86
178
|
continue;
|
|
@@ -90,7 +182,7 @@ class Climbro extends device_model_js_1.Device {
|
|
|
90
182
|
continue;
|
|
91
183
|
}
|
|
92
184
|
if (b === ClimbroResponses.DAT_36KG) {
|
|
93
|
-
|
|
185
|
+
// 36kg sentinel: fall through to sync/force handling
|
|
94
186
|
}
|
|
95
187
|
if (flagSynchro === ClimbroResponses.BAT_DAT)
|
|
96
188
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"climbro.model.js","sourceRoot":"","sources":["../../../../src/models/device/climbro.model.ts"],"names":[],"mappings":";;;;AAAA,wDAA2C;AAG3C;;GAEG;AACH,IAAK,gBAaJ;AAbD,WAAK,gBAAgB;IACnB;;OAEG;IACH,+DAAc,CAAA;IACd;;OAEG;IACH,iEAAe,CAAA;IACf;;OAEG;IACH,iEAAe,CAAA;AACjB,CAAC,EAbI,gBAAgB,KAAhB,gBAAgB,QAapB;AAED;;;GAGG;AACH,MAAa,OAAQ,SAAQ,wBAAM;IAwBjC;QACE,KAAK,CAAC;YACJ,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;YACpC,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,0BAA0B;oBAChC,EAAE,EAAE,MAAM;oBACV,IAAI,EAAE,sCAAsC;oBAC5C,eAAe,EAAE;wBACf;4BACE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"climbro.model.js","sourceRoot":"","sources":["../../../../src/models/device/climbro.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entralpi.model.d.ts","sourceRoot":"","sources":["../../../../src/models/device/entralpi.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAA;AAE9E;;;GAGG;AACH,qBAAa,QAAS,SAAQ,MAAO,YAAW,SAAS;;IA2HvD;;;OAGG;IACH,OAAO,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE9C;IAED;;;OAGG;IACH,aAAa,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEpD;IAED;;;OAGG;IACH,QAAQ,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE/C;IAED;;;;;;OAMG;IACM,mBAAmB,GAAI,OAAO,QAAQ,KAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"entralpi.model.d.ts","sourceRoot":"","sources":["../../../../src/models/device/entralpi.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAA;AAE9E;;;GAGG;AACH,qBAAa,QAAS,SAAQ,MAAO,YAAW,SAAS;;IA2HvD;;;OAGG;IACH,OAAO,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE9C;IAED;;;OAGG;IACH,aAAa,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEpD;IAED;;;OAGG;IACH,QAAQ,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE/C;IAED;;;;;;OAMG;IACM,mBAAmB,GAAI,OAAO,QAAQ,KAAG,IAAI,CAqCrD;IAED;;;OAGG;IACH,QAAQ,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE/C;IAED;;;OAGG;IACH,YAAY,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEnD;IAED;;;OAGG;IACH,KAAK,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE5C;IAED;;;;OAIG;IACH,GAAG,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE1C;IAED;;;OAGG;IACH,QAAQ,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE/C;IAED;;;OAGG;IACH,MAAM,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7C;CACF"}
|
|
@@ -164,11 +164,9 @@ class Entralpi extends device_model_js_1.Device {
|
|
|
164
164
|
const receivedTime = Date.now();
|
|
165
165
|
const receivedData = (value.getUint16(0) / 100).toFixed(1);
|
|
166
166
|
const convertedData = Number(receivedData);
|
|
167
|
-
// Adjust weight by using the tare value
|
|
168
|
-
//
|
|
169
|
-
|
|
170
|
-
const tare = this.applyTare(convertedData);
|
|
171
|
-
const numericData = tare === 0 ? convertedData : (convertedData - tare) * -1;
|
|
167
|
+
// Adjust weight by using the tare value.
|
|
168
|
+
// Keep stream output consistent with other devices: positive load after tare.
|
|
169
|
+
const numericData = convertedData - this.applyTare(convertedData);
|
|
172
170
|
const currentMassTotal = Math.max(-1000, numericData);
|
|
173
171
|
// Update session stats before building packet
|
|
174
172
|
this.peak = Math.max(this.peak, numericData);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entralpi.model.js","sourceRoot":"","sources":["../../../../src/models/device/entralpi.model.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"entralpi.model.js","sourceRoot":"","sources":["../../../../src/models/device/entralpi.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,8 @@ import type { IProgressor } from "../../interfaces/device/progressor.interface.j
|
|
|
3
3
|
export declare class Progressor extends Device implements IProgressor {
|
|
4
4
|
/** Device timestamps (µs) of recent samples (samples in last 1s device time). */
|
|
5
5
|
private recentSampleTimestamps;
|
|
6
|
+
/** 1-based index for multi-packet calibration-table export responses. */
|
|
7
|
+
private calibrationTableRecordIndex;
|
|
6
8
|
constructor();
|
|
7
9
|
/**
|
|
8
10
|
* Retrieves battery or voltage information from the device.
|
|
@@ -10,39 +12,45 @@ export declare class Progressor extends Device implements IProgressor {
|
|
|
10
12
|
*/
|
|
11
13
|
battery: () => Promise<string | undefined>;
|
|
12
14
|
/**
|
|
13
|
-
* Retrieves firmware version from the device
|
|
15
|
+
* Retrieves firmware version from the device.
|
|
14
16
|
* @returns {Promise<string>} A Promise that resolves with the firmware version,
|
|
15
17
|
*/
|
|
16
18
|
firmware: () => Promise<string | undefined>;
|
|
17
19
|
/**
|
|
18
|
-
* Retrieves the Progressor ID from the device
|
|
20
|
+
* Retrieves the Progressor ID from the device.
|
|
19
21
|
* @returns {Promise<string>} A Promise that resolves with the raw response (hex of payload).
|
|
20
22
|
*/
|
|
21
23
|
progressorId: () => Promise<string | undefined>;
|
|
22
24
|
/**
|
|
23
|
-
* Retrieves calibration
|
|
24
|
-
*
|
|
25
|
+
* Retrieves the linear calibration block from the device.
|
|
26
|
+
* Returns raw hex plus decoded slope/intercept/trim coefficients.
|
|
25
27
|
*/
|
|
26
28
|
calibration: () => Promise<string | undefined>;
|
|
27
29
|
/**
|
|
28
|
-
*
|
|
30
|
+
* Retrieves the hidden 15-entry piecewise calibration table.
|
|
31
|
+
* Each response packet contains one 16-byte record.
|
|
32
|
+
* @returns {Promise<string | undefined>} Newline-separated decoded records.
|
|
33
|
+
*/
|
|
34
|
+
calibrationTable: () => Promise<string | undefined>;
|
|
35
|
+
/**
|
|
36
|
+
* Computes calibration curve from stored points and saves to flash.
|
|
29
37
|
* Requires addCalibrationPoint() for zero and reference. Normal flow: i → i → j.
|
|
30
38
|
* @returns {Promise<void>} A Promise that resolves when the command is sent.
|
|
31
39
|
*/
|
|
32
40
|
saveCalibration: () => Promise<void>;
|
|
33
41
|
/**
|
|
34
|
-
*
|
|
42
|
+
* Write calibration block directly (raw overwrite).
|
|
35
43
|
*
|
|
36
44
|
* Payload layout (14 bytes):
|
|
37
|
-
* - [0] opcode ('q'
|
|
45
|
+
* - [0] opcode ('q')
|
|
38
46
|
* - [1] reserved (ignored by firmware)
|
|
39
|
-
* - [2..13] 12-byte calibration
|
|
47
|
+
* - [2..13] 12-byte calibration block (3× float32 LE: slope, intercept, trim)
|
|
40
48
|
*
|
|
41
49
|
* Notes:
|
|
42
50
|
* - This command does not compute anything; it overwrites stored calibration data.
|
|
43
|
-
* - Sending only the opcode (no 12-byte
|
|
51
|
+
* - Sending only the opcode (no 12-byte calibration block) is not a supported "reset" mode.
|
|
44
52
|
*
|
|
45
|
-
* @param curve - Raw 12-byte calibration
|
|
53
|
+
* @param curve - Raw 12-byte calibration block (3× float32 LE: slope, intercept, trim) (required).
|
|
46
54
|
* @returns Promise that resolves when the command is sent.
|
|
47
55
|
*/
|
|
48
56
|
setCalibration: (curve: Uint8Array) => Promise<void>;
|
|
@@ -75,6 +83,11 @@ export declare class Progressor extends Device implements IProgressor {
|
|
|
75
83
|
* @returns {Promise<void>} A Promise that resolves when the command is sent.
|
|
76
84
|
*/
|
|
77
85
|
sleep: () => Promise<void>;
|
|
86
|
+
/**
|
|
87
|
+
* Reboots the device immediately.
|
|
88
|
+
* @returns {Promise<void>} A Promise that resolves when the command is sent.
|
|
89
|
+
*/
|
|
90
|
+
reboot: () => Promise<void>;
|
|
78
91
|
/**
|
|
79
92
|
* Retrieves error information from the device.
|
|
80
93
|
* @returns {Promise<string | undefined>} A Promise that resolves with the error info text.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progressor.model.d.ts","sourceRoot":"","sources":["../../../../src/models/device/progressor.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAA;
|
|
1
|
+
{"version":3,"file":"progressor.model.d.ts","sourceRoot":"","sources":["../../../../src/models/device/progressor.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAA;AAkHlF,qBAAa,UAAW,SAAQ,MAAO,YAAW,WAAW;IAC3D,iFAAiF;IACjF,OAAO,CAAC,sBAAsB,CAAe;IAC7C,yEAAyE;IACzE,OAAO,CAAC,2BAA2B,CAAI;;IA8DvC;;;OAGG;IACH,OAAO,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAM9C;IAED;;;OAGG;IACH,QAAQ,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAM/C;IAED;;;OAGG;IACH,YAAY,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAMnD;IAED;;;OAGG;IACH,WAAW,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAMlD;IAED;;;;OAIG;IACH,gBAAgB,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAOvD;IAED;;;;OAIG;IACH,eAAe,QAAa,OAAO,CAAC,IAAI,CAAC,CAExC;IAED;;;;;;;;;;;;;;OAcG;IACH,cAAc,GAAU,OAAO,UAAU,KAAG,OAAO,CAAC,IAAI,CAAC,CAWxD;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,mBAAmB,QAAa,OAAO,CAAC,IAAI,CAAC,CAG5C;IAED,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,QAAO;IAEvB,IAAI,CAAC,QAAQ,SAAO,GAAG,OAAO;IAOvC;;;OAGG;IACH,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAG9B;IAED;;;OAGG;IACH,MAAM,QAAa,OAAO,CAAC,IAAI,CAAC,CAI/B;IAED;;;OAGG;IACH,SAAS,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAMhD;IAED;;;OAGG;IACH,cAAc,QAAa,OAAO,CAAC,IAAI,CAAC,CAEvC;IAED;;;;;;OAMG;IACM,mBAAmB,GAAI,OAAO,QAAQ,KAAG,IAAI,CA2FrD;IAED;;;OAGG;IACH,IAAI,QAAa,OAAO,CAAC,IAAI,CAAC,CAE7B;IAED;;;;OAIG;IACH,MAAM,GAAU,iBAAY,KAAG,OAAO,CAAC,IAAI,CAAC,CAgB3C;CACF"}
|