@hangtime/grip-connect 0.10.3 → 0.10.5

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.
Files changed (30) hide show
  1. package/dist/cjs/interfaces/command.interface.d.ts +2 -2
  2. package/dist/cjs/interfaces/command.interface.d.ts.map +1 -1
  3. package/dist/cjs/interfaces/device/progressor.interface.d.ts +13 -16
  4. package/dist/cjs/interfaces/device/progressor.interface.d.ts.map +1 -1
  5. package/dist/cjs/models/device/progressor.model.d.ts +38 -16
  6. package/dist/cjs/models/device/progressor.model.d.ts.map +1 -1
  7. package/dist/cjs/models/device/progressor.model.js +141 -114
  8. package/dist/cjs/models/device/progressor.model.js.map +1 -1
  9. package/dist/cjs/models/device.model.d.ts +6 -0
  10. package/dist/cjs/models/device.model.d.ts.map +1 -1
  11. package/dist/cjs/models/device.model.js +11 -0
  12. package/dist/cjs/models/device.model.js.map +1 -1
  13. package/dist/interfaces/command.interface.d.ts +2 -2
  14. package/dist/interfaces/command.interface.d.ts.map +1 -1
  15. package/dist/interfaces/device/progressor.interface.d.ts +13 -16
  16. package/dist/interfaces/device/progressor.interface.d.ts.map +1 -1
  17. package/dist/models/device/progressor.model.d.ts +38 -16
  18. package/dist/models/device/progressor.model.d.ts.map +1 -1
  19. package/dist/models/device/progressor.model.js +141 -114
  20. package/dist/models/device/progressor.model.js.map +1 -1
  21. package/dist/models/device.model.d.ts +6 -0
  22. package/dist/models/device.model.d.ts.map +1 -1
  23. package/dist/models/device.model.js +11 -0
  24. package/dist/models/device.model.js.map +1 -1
  25. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  26. package/package.json +1 -1
  27. package/src/interfaces/command.interface.ts +2 -2
  28. package/src/interfaces/device/progressor.interface.ts +13 -16
  29. package/src/models/device/progressor.model.ts +142 -113
  30. package/src/models/device.model.ts +12 -0
@@ -1 +1 @@
1
- {"version":3,"file":"device.model.js","sourceRoot":"","sources":["../../../src/models/device.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.model.js","sourceRoot":"","sources":["../../../src/models/device.model.ts"],"names":[],"mappings":"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"}
@@ -93,8 +93,8 @@ export interface Commands {
93
93
  */
94
94
  GET_PROGRESSOR_ID?: string;
95
95
  /**
96
- * Reset calibration to default values of the device.
96
+ * Set calibration curve (3× u32 LE). Payload at offsets +2,+6,+10.
97
97
  */
98
- RESET_CALIBRATION?: string;
98
+ SET_CALIBRATION?: string;
99
99
  }
100
100
  //# 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;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B"}
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;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB"}
@@ -20,13 +20,13 @@ export interface IProgressor extends IDevice {
20
20
  progressorId(): Promise<string | undefined>;
21
21
  /**
22
22
  * Retrieves calibration curve from the device (opcode 0x72). Payload is 12 opaque bytes;
23
- * parsed for display as zero-point, ref-point, and version (3× uint32 LE) plus hex.
24
- * @returns {Promise<string | undefined>} A Promise that resolves with a display string (e.g. "hex — zero-point: X | ref-point: Y | version: Z").
23
+ * parsed for display as hex plus 3× uint32 LE.
24
+ * @returns {Promise<string | undefined>} A Promise that resolves with a display string (e.g. "hex — 1: X | 2: Y | 3: Z").
25
25
  */
26
26
  calibration(): Promise<string | undefined>;
27
27
  /**
28
- * Saves the current calibration settings to the device.
29
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
28
+ * Computes calibration curve from stored points and saves to flash.
29
+ * Call after addCalibrationPoint() for zero and reference. Normal flow: i → i → j.
30
30
  */
31
31
  saveCalibration(): Promise<void>;
32
32
  /**
@@ -35,10 +35,11 @@ export interface IProgressor extends IDevice {
35
35
  */
36
36
  sleep(): Promise<void>;
37
37
  /**
38
- * Resets the calibration to default values of the device.
39
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
38
+ * Set a new calibration curve.
39
+ * @warning Expert only. This will overwrite the current calibration curve.
40
+ * @param curve - The 12-byte calibration curve to set.
40
41
  */
41
- resetCalibration(): Promise<void>;
42
+ setCalibration(curve: Uint8Array): Promise<void>;
42
43
  /**
43
44
  * Retrieves error information from the device.
44
45
  * @returns {Promise<string | undefined>} A Promise that resolves with the error info text.
@@ -61,15 +62,11 @@ export interface IProgressor extends IDevice {
61
62
  */
62
63
  stream(duration?: number): Promise<void>;
63
64
  /**
64
- * Adds a calibration point. Use 0 for zero point, then known weight; then saveCalibration().
65
- * @param weightKg - Weight in kg (0 or known reference &lt; 150 kg).
66
- */
67
- addCalibrationPoint(weightKg: number): Promise<void>;
68
- /**
69
- * Sends the device tare command to zero the scale (hardware tare).
70
- * For software tare over a duration, use the base tare(duration) method.
71
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
65
+ * Adds a calibration point by capturing the current live ADC reading.
66
+ * Call with no load for zero point, then with known weight; then saveCalibration().
72
67
  */
73
- tareScale(): Promise<void>;
68
+ addCalibrationPoint(): Promise<void>;
69
+ /** True if tare() uses device hardware tare rather than software averaging. */
70
+ readonly usesHardwareTare: true;
74
71
  }
75
72
  //# sourceMappingURL=progressor.interface.d.ts.map
@@ -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;;;OAGG;IACH,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEjC;;;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,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEpD;;;;OAIG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3B"}
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"}
@@ -25,29 +25,51 @@ export declare class Progressor extends Device implements IProgressor {
25
25
  */
26
26
  calibration: () => Promise<string | undefined>;
27
27
  /**
28
- * Saves the current calibration to the device. Call after adding both calibration points.
28
+ * Computes calibration curve from stored points and saves to flash (opcode 0x6A).
29
+ * Requires addCalibrationPoint() for zero and reference. Normal flow: i → i → j.
29
30
  * @returns {Promise<void>} A Promise that resolves when the command is sent.
30
31
  */
31
32
  saveCalibration: () => Promise<void>;
32
33
  /**
33
- * Resets the calibration to default values of the device.
34
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
35
- */
36
- resetCalibration: () => Promise<void>;
37
- /**
38
- * Adds a calibration point: 0x69 + 32-bit float (weight in kg), 5 bytes to the control characteristic.
39
- * Use for two-point calibration: (1) zero weight — addCalibrationPoint(0); (2) known weight — addCalibrationPoint(knownKg).
40
- * Order can be either way; writing zero first is recommended (hysteresis). Then call saveCalibration().
41
- * @param {number} weightKg - Weight in kg (use 0 for zero point, or known reference weight &lt; 150 kg).
42
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
34
+ * Opcode 0x71 ('q'): write calibration curve directly (raw overwrite).
35
+ *
36
+ * Payload layout (14 bytes):
37
+ * - [0] opcode ('q' = 0x71)
38
+ * - [1] reserved (ignored by firmware)
39
+ * - [2..13] 12-byte calibration curve (3× u32 LE read at offsets +2, +6, +10)
40
+ *
41
+ * Notes:
42
+ * - This command does not compute anything; it overwrites stored calibration data.
43
+ * - Sending only the opcode (no 12-byte curve) is not a supported "reset" mode.
44
+ *
45
+ * @param curve - Raw 12-byte calibration curve (required).
46
+ * @returns Promise that resolves when the command is sent.
43
47
  */
44
- addCalibrationPoint: (weightKg: number) => Promise<void>;
48
+ setCalibration: (curve: Uint8Array) => Promise<void>;
45
49
  /**
46
- * Sends the device tare command to zero the scale (hardware tare).
47
- * For software tare over a duration, use the base tare(duration) method.
48
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
50
+ * Captures a calibration point from the *current live measurement*.
51
+ *
52
+ * Command: 0x69 ('i') written to the control characteristic.
53
+ *
54
+ * The firmware does **not** parse a float payload for this command. It simply snapshots the
55
+ * current raw ADC/force reading and stores it as the next calibration point (typically
56
+ * used as the zero point and the reference point for two-point calibration).
57
+ *
58
+ * Typical two-point calibration flow:
59
+ * 1) Ensure the device is stable with **no load** attached → send addCalibrationPoint() (zero point)
60
+ * 2) Attach a **known weight** and wait until stable → send addCalibrationPoint() (reference point)
61
+ * 3) Call saveCalibration() ('j') to compute + persist the curve
62
+ *
63
+ * Notes:
64
+ * - Order usually doesn’t matter, but capturing the zero point first is common practice.
65
+ * - Any extra payload bytes are ignored by the firmware for this command.
66
+ *
67
+ * @returns {Promise<void>} Resolves when the command is sent.
49
68
  */
50
- tareScale: () => Promise<void>;
69
+ addCalibrationPoint: () => Promise<void>;
70
+ /** True if tare() uses device hardware tare rather than software averaging. */
71
+ readonly usesHardwareTare = true;
72
+ tare(duration?: number): boolean;
51
73
  /**
52
74
  * Puts the device to sleep / shutdown.
53
75
  * @returns {Promise<void>} A Promise that resolves when the command is sent.
@@ -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;AAkFlF,qBAAa,UAAW,SAAQ,MAAO,YAAW,WAAW;IAC3D,iFAAiF;IACjF,OAAO,CAAC,sBAAsB,CAAe;;IAyD7C;;;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;;;OAGG;IACH,eAAe,QAAa,OAAO,CAAC,IAAI,CAAC,CAExC;IAED;;;OAGG;IACH,gBAAgB,QAAa,OAAO,CAAC,IAAI,CAAC,CAEzC;IAED;;;;;;OAMG;IACH,mBAAmB,GAAU,UAAU,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC,CAK5D;IAED;;;;OAIG;IACH,SAAS,QAAa,OAAO,CAAC,IAAI,CAAC,CAElC;IAED;;;OAGG;IACH,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAG9B;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,CA4FrD;IAED;;;OAGG;IACH,IAAI,QAAa,OAAO,CAAC,IAAI,CAAC,CAE7B;IAED;;;;OAIG;IACH,MAAM,GAAU,iBAAY,KAAG,OAAO,CAAC,IAAI,CAAC,CAgB3C;CACF"}
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;AAkFlF,qBAAa,UAAW,SAAQ,MAAO,YAAW,WAAW;IAC3D,iFAAiF;IACjF,OAAO,CAAC,sBAAsB,CAAe;;IAyD7C;;;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,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,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,CAwFrD;IAED;;;OAGG;IACH,IAAI,QAAa,OAAO,CAAC,IAAI,CAAC,CAE7B;IAED;;;;OAIG;IACH,MAAM,GAAU,iBAAY,KAAG,OAAO,CAAC,IAAI,CAAC,CAgB3C;CACF"}
@@ -28,7 +28,7 @@ var ProgressorResponses;
28
28
  * Low battery warning from the device.
29
29
  * Indicates that the battery level is below a critical threshold.
30
30
  */
31
- ProgressorResponses[ProgressorResponses["RESPONSE_LOW_PWR_WARNING"] = 4] = "RESPONSE_LOW_PWR_WARNING";
31
+ ProgressorResponses[ProgressorResponses["RESPONSE_LOW_POWER_WARNING"] = 4] = "RESPONSE_LOW_POWER_WARNING";
32
32
  })(ProgressorResponses || (ProgressorResponses = {}));
33
33
  /**
34
34
  * Represents a Tindeq Progressor device.
@@ -68,7 +68,7 @@ function parseCalibrationCurvePayload(payload) {
68
68
  return hex;
69
69
  const view = new DataView(payload.buffer, payload.byteOffset, payload.byteLength);
70
70
  const [v0, v1, v2] = [0, 4, 8].map((o) => view.getUint32(o, true));
71
- return `${hex} — zero-point: ${v1.toLocaleString()} | ref-point: ${v0.toLocaleString()} | version: ${v2} (0x${v2.toString(16)})`;
71
+ return `${hex} — 1: ${v1.toLocaleString()} | 2: ${v0.toLocaleString()} | 3: ${v2}`;
72
72
  }
73
73
  export class Progressor extends Device {
74
74
  /** Device timestamps (µs) of recent samples (samples in last 1s device time). */
@@ -122,7 +122,7 @@ export class Progressor extends Device {
122
122
  SLEEP: "n", // 110 (0x6e)
123
123
  GET_BATTERY_VOLTAGE: "o", // 111 (0x6f)
124
124
  GET_PROGRESSOR_ID: "p", // 112 (0x70)
125
- RESET_CALIBRATION: "q", // 113 (0x71)
125
+ SET_CALIBRATION: "q", // 113 (0x71)
126
126
  GET_CALIBRATION: "r", // 114 (0x72)
127
127
  },
128
128
  });
@@ -172,40 +172,70 @@ export class Progressor extends Device {
172
172
  return response;
173
173
  };
174
174
  /**
175
- * Saves the current calibration to the device. Call after adding both calibration points.
175
+ * Computes calibration curve from stored points and saves to flash (opcode 0x6A).
176
+ * Requires addCalibrationPoint() for zero and reference. Normal flow: i → i → j.
176
177
  * @returns {Promise<void>} A Promise that resolves when the command is sent.
177
178
  */
178
179
  saveCalibration = async () => {
179
180
  await this.write("progressor", "tx", this.commands.SAVE_CALIBRATION, 0);
180
181
  };
181
182
  /**
182
- * Resets the calibration to default values of the device.
183
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
184
- */
185
- resetCalibration = async () => {
186
- await this.write("progressor", "tx", this.commands.RESET_CALIBRATION, 0);
187
- };
188
- /**
189
- * Adds a calibration point: 0x69 + 32-bit float (weight in kg), 5 bytes to the control characteristic.
190
- * Use for two-point calibration: (1) zero weight addCalibrationPoint(0); (2) known weight addCalibrationPoint(knownKg).
191
- * Order can be either way; writing zero first is recommended (hysteresis). Then call saveCalibration().
192
- * @param {number} weightKg - Weight in kg (use 0 for zero point, or known reference weight &lt; 150 kg).
193
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
183
+ * Opcode 0x71 ('q'): write calibration curve directly (raw overwrite).
184
+ *
185
+ * Payload layout (14 bytes):
186
+ * - [0] opcode ('q' = 0x71)
187
+ * - [1] reserved (ignored by firmware)
188
+ * - [2..13] 12-byte calibration curve (3× u32 LE read at offsets +2, +6, +10)
189
+ *
190
+ * Notes:
191
+ * - This command does not compute anything; it overwrites stored calibration data.
192
+ * - Sending only the opcode (no 12-byte curve) is not a supported "reset" mode.
193
+ *
194
+ * @param curve - Raw 12-byte calibration curve (required).
195
+ * @returns Promise that resolves when the command is sent.
194
196
  */
195
- addCalibrationPoint = async (weightKg) => {
196
- const payload = new Uint8Array(5);
197
- payload[0] = this.commands.ADD_CALIBRATION_POINT.charCodeAt(0); // 0x69
198
- new DataView(payload.buffer).setFloat32(1, weightKg, true);
197
+ setCalibration = async (curve) => {
198
+ if (curve.length !== 12)
199
+ throw new Error("Curve must be 12 bytes");
200
+ const opcode = this.commands.SET_CALIBRATION.charCodeAt(0); // 0x71
201
+ const payload = new Uint8Array(14);
202
+ payload[0] = opcode;
203
+ payload[1] = 0; // reserved/ignored
204
+ payload.set(curve, 2);
199
205
  await this.write("progressor", "tx", payload, 0);
200
206
  };
201
207
  /**
202
- * Sends the device tare command to zero the scale (hardware tare).
203
- * For software tare over a duration, use the base tare(duration) method.
204
- * @returns {Promise<void>} A Promise that resolves when the command is sent.
208
+ * Captures a calibration point from the *current live measurement*.
209
+ *
210
+ * Command: 0x69 ('i') written to the control characteristic.
211
+ *
212
+ * The firmware does **not** parse a float payload for this command. It simply snapshots the
213
+ * current raw ADC/force reading and stores it as the next calibration point (typically
214
+ * used as the zero point and the reference point for two-point calibration).
215
+ *
216
+ * Typical two-point calibration flow:
217
+ * 1) Ensure the device is stable with **no load** attached → send addCalibrationPoint() (zero point)
218
+ * 2) Attach a **known weight** and wait until stable → send addCalibrationPoint() (reference point)
219
+ * 3) Call saveCalibration() ('j') to compute + persist the curve
220
+ *
221
+ * Notes:
222
+ * - Order usually doesn’t matter, but capturing the zero point first is common practice.
223
+ * - Any extra payload bytes are ignored by the firmware for this command.
224
+ *
225
+ * @returns {Promise<void>} Resolves when the command is sent.
205
226
  */
206
- tareScale = async () => {
207
- await this.write("progressor", "tx", this.commands.TARE_SCALE, 0);
227
+ addCalibrationPoint = async () => {
228
+ const payload = new Uint8Array([this.commands.ADD_CALIBRATION_POINT.charCodeAt(0)]); // 0x69
229
+ await this.write("progressor", "tx", payload, 0);
208
230
  };
231
+ /** True if tare() uses device hardware tare rather than software averaging. */
232
+ usesHardwareTare = true;
233
+ tare(duration = 5000) {
234
+ void duration; // Accepted for API compatibility; hardware tare ignores it
235
+ this.clearTareOffset();
236
+ void this.write("progressor", "tx", this.commands.TARE_SCALE, 0);
237
+ return true;
238
+ }
209
239
  /**
210
240
  * Puts the device to sleep / shutdown.
211
241
  * @returns {Promise<void>} A Promise that resolves when the command is sent.
@@ -240,96 +270,93 @@ export class Progressor extends Device {
240
270
  * @param {DataView} value - The notification event.
241
271
  */
242
272
  handleNotifications = (value) => {
243
- if (value) {
244
- // Update timestamp
245
- this.updateTimestamp();
246
- if (value.buffer) {
247
- const receivedTime = Date.now();
248
- // Read the first byte of the buffer to determine the kind of message
249
- const kind = value.getInt8(0);
250
- // Check if the message is a weight measurement
251
- if (kind === ProgressorResponses.RESPONSE_WEIGHT_MEASUREMENT) {
252
- // Payload = bytes from index 2 (skip byte 0 = message type, byte 1 = reserved/length)
253
- const payloadLength = value.byteLength - 2;
254
- if (payloadLength % 8 !== 0)
255
- return;
256
- const samplesPerPacket = payloadLength / 8;
257
- this.currentSamplesPerPacket = samplesPerPacket;
258
- this.recordPacketReceived();
259
- // for (i = 0; i < samplesPerPacket; i++) { offset = i*8; weight = getFloat32(offset); timestampUs = getUint32(offset+4); }
260
- for (let i = 0; i < samplesPerPacket; i++) {
261
- const offset = 2 + i * 8;
262
- const weight = value.getFloat32(offset, true);
263
- const timestampUs = value.getUint32(offset + 4, true);
264
- if (!isNaN(weight)) {
265
- const numericData = weight - this.applyTare(weight);
266
- const currentMassTotal = Math.max(-1000, Number(numericData));
267
- // Update session stats before building packet
268
- this.peak = Math.max(this.peak, Number(numericData));
269
- this.min = Math.min(this.min, Math.max(-1000, Number(numericData)));
270
- this.sum += currentMassTotal;
271
- this.dataPointCount++;
272
- this.mean = this.sum / this.dataPointCount;
273
- this.downloadPackets.push(this.buildDownloadPacket(currentMassTotal, [weight], {
274
- timestamp: receivedTime,
275
- sampleIndex: timestampUs,
276
- }));
277
- this.activityCheck(numericData);
278
- // Hz from device timestamps: keep only samples in last 1s
279
- this.recentSampleTimestamps.push(timestampUs);
280
- const latestUs = this.recentSampleTimestamps[this.recentSampleTimestamps.length - 1] ?? 0;
281
- this.recentSampleTimestamps = this.recentSampleTimestamps.filter((ts) => latestUs - ts <= ONE_SECOND_US);
282
- const samplingRateHz = this.recentSampleTimestamps.length;
283
- const payload = this.buildForceMeasurement(currentMassTotal);
284
- if (payload.performance)
285
- payload.performance.samplingRateHz = samplingRateHz;
286
- this.notifyCallback(payload);
287
- }
288
- }
289
- }
290
- // Command response
291
- else if (kind === ProgressorResponses.RESPONSE_COMMAND) {
292
- if (!this.writeLast)
293
- return;
294
- let output = "";
295
- const payload = new Uint8Array(value.buffer).slice(2);
296
- if (this.writeLast === this.commands.GET_BATTERY_VOLTAGE) {
297
- output = new DataView(value.buffer, 2).getUint32(0, true).toString();
298
- }
299
- else if (this.writeLast === this.commands.GET_FIRMWARE_VERSION) {
300
- output = new TextDecoder().decode(payload);
301
- }
302
- else if (this.writeLast === this.commands.GET_ERROR_INFORMATION) {
303
- output = new TextDecoder().decode(payload);
304
- }
305
- else if (this.writeLast === this.commands.GET_PROGRESSOR_ID) {
306
- output = parseProgressorIdPayload(payload);
307
- }
308
- else if (this.writeLast === this.commands.GET_CALIBRATION) {
309
- output = parseCalibrationCurvePayload(payload);
310
- }
311
- else {
312
- // Unknown command response: return raw hex
313
- output = toHex(payload);
314
- }
315
- this.writeCallback(output);
316
- }
317
- // RFD peak response
318
- else if (kind === ProgressorResponses.RESPONSE_RFD_PEAK) {
319
- console.warn("⚠️ RFD peak is currently unsupported.");
320
- }
321
- // RFD peak series response
322
- else if (kind === ProgressorResponses.RESPONSE_RFD_PEAK_SERIES) {
323
- console.warn("⚠️ RFD peak series is currently unsupported.");
324
- }
325
- // Low power warning response
326
- else if (kind === ProgressorResponses.RESPONSE_LOW_PWR_WARNING) {
327
- console.warn("⚠️ Low power detected. Please consider connecting to a power source.");
328
- }
329
- else {
330
- throw new Error(`Unknown message kind detected: ${kind}`);
331
- }
273
+ if (!value?.buffer)
274
+ return;
275
+ // Update timestamp
276
+ this.updateTimestamp();
277
+ const receivedTime = Date.now();
278
+ // Read the first byte of the buffer to determine the kind of message
279
+ const kind = value.getUint8(0);
280
+ const payloadLength = value.getUint8(1);
281
+ const bytes = new Uint8Array(value.buffer, value.byteOffset, value.byteLength);
282
+ const payload = bytes.slice(2, 2 + payloadLength);
283
+ // Check if the message is a weight measurement
284
+ if (kind === ProgressorResponses.RESPONSE_WEIGHT_MEASUREMENT) {
285
+ if (payloadLength % 8 !== 0)
286
+ return;
287
+ const samplesPerPacket = payloadLength / 8;
288
+ this.currentSamplesPerPacket = samplesPerPacket;
289
+ this.recordPacketReceived();
290
+ for (let i = 0; i < samplesPerPacket; i++) {
291
+ const offset = 2 + i * 8;
292
+ const weight = value.getFloat32(offset, true);
293
+ const timestampUs = value.getUint32(offset + 4, true);
294
+ if (Number.isNaN(weight))
295
+ continue;
296
+ const numericData = weight - this.applyTare(weight);
297
+ const currentMassTotal = Math.max(-1000, Number(numericData));
298
+ // Update session stats before building packet
299
+ this.peak = Math.max(this.peak, Number(numericData));
300
+ this.min = Math.min(this.min, Math.max(-1000, Number(numericData)));
301
+ this.sum += currentMassTotal;
302
+ this.dataPointCount++;
303
+ this.mean = this.sum / this.dataPointCount;
304
+ this.downloadPackets.push(this.buildDownloadPacket(currentMassTotal, [weight], {
305
+ timestamp: receivedTime,
306
+ sampleIndex: timestampUs,
307
+ }));
308
+ this.activityCheck(numericData);
309
+ // Hz from device timestamps: keep only samples in last 1s
310
+ this.recentSampleTimestamps.push(timestampUs);
311
+ const latestUs = this.recentSampleTimestamps[this.recentSampleTimestamps.length - 1] ?? 0;
312
+ this.recentSampleTimestamps = this.recentSampleTimestamps.filter((ts) => latestUs - ts <= ONE_SECOND_US);
313
+ const samplingRateHz = this.recentSampleTimestamps.length;
314
+ const payload = this.buildForceMeasurement(currentMassTotal);
315
+ if (payload.performance)
316
+ payload.performance.samplingRateHz = samplingRateHz;
317
+ this.notifyCallback(payload);
318
+ }
319
+ }
320
+ // Command response
321
+ else if (kind === ProgressorResponses.RESPONSE_COMMAND) {
322
+ if (!this.writeLast)
323
+ return;
324
+ let output = "";
325
+ if (this.writeLast === this.commands.GET_BATTERY_VOLTAGE) {
326
+ output = new DataView(payload.buffer, payload.byteOffset, payload.byteLength).getUint32(0, true).toString();
327
+ }
328
+ else if (this.writeLast === this.commands.GET_FIRMWARE_VERSION) {
329
+ output = new TextDecoder().decode(payload);
330
+ }
331
+ else if (this.writeLast === this.commands.GET_ERROR_INFORMATION) {
332
+ output = new TextDecoder().decode(payload);
333
+ }
334
+ else if (this.writeLast === this.commands.GET_PROGRESSOR_ID) {
335
+ output = parseProgressorIdPayload(payload);
332
336
  }
337
+ else if (this.writeLast === this.commands.GET_CALIBRATION) {
338
+ output = parseCalibrationCurvePayload(payload);
339
+ }
340
+ else {
341
+ // Unknown command response: return raw hex
342
+ output = toHex(payload);
343
+ }
344
+ this.writeCallback(output);
345
+ }
346
+ // RFD peak response
347
+ else if (kind === ProgressorResponses.RESPONSE_RFD_PEAK) {
348
+ console.warn("⚠️ RFD peak is currently unsupported.");
349
+ }
350
+ // RFD peak series response
351
+ else if (kind === ProgressorResponses.RESPONSE_RFD_PEAK_SERIES) {
352
+ console.warn("⚠️ RFD peak series is currently unsupported.");
353
+ }
354
+ // Low power warning response
355
+ else if (kind === ProgressorResponses.RESPONSE_LOW_POWER_WARNING) {
356
+ console.warn("⚠️ Low power detected. Please consider connecting to a power source.");
357
+ }
358
+ else {
359
+ throw new Error(`Unknown message kind detected: ${kind}`);
333
360
  }
334
361
  };
335
362
  /**