@ovok/native 1.16.1-dev.2151 → 1.16.1-dev.2155

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 (49) hide show
  1. package/lib/commonjs/modules/bt-management/services/custom/compile-custom-lepu.js +3 -2
  2. package/lib/commonjs/modules/bt-management/services/custom/compile-custom-lepu.js.map +1 -1
  3. package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +5 -3
  4. package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map +1 -1
  5. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js +10 -2
  6. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  7. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js +2 -2
  8. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  9. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  10. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-files.js +74 -17
  11. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-files.js.map +1 -1
  12. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js +4 -4
  13. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map +1 -1
  14. package/lib/module/modules/bt-management/services/custom/compile-custom-lepu.js +3 -2
  15. package/lib/module/modules/bt-management/services/custom/compile-custom-lepu.js.map +1 -1
  16. package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +5 -3
  17. package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map +1 -1
  18. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js +10 -2
  19. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  20. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js +2 -2
  21. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  22. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  23. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-files.js +74 -17
  24. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-files.js.map +1 -1
  25. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js +4 -4
  26. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map +1 -1
  27. package/lib/typescript/commonjs/src/modules/bt-management/services/custom/compile-custom-lepu.d.ts.map +1 -1
  28. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts.map +1 -1
  29. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts +2 -0
  30. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  31. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  32. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +2 -1
  33. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  34. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.ecg-files.d.ts +9 -3
  35. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.ecg-files.d.ts.map +1 -1
  36. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-lepu-spec.d.ts +5 -2
  37. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-lepu-spec.d.ts.map +1 -1
  38. package/lib/typescript/module/src/modules/bt-management/services/custom/compile-custom-lepu.d.ts.map +1 -1
  39. package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts.map +1 -1
  40. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts +2 -0
  41. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  42. package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  43. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +2 -1
  44. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  45. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.ecg-files.d.ts +9 -3
  46. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.ecg-files.d.ts.map +1 -1
  47. package/lib/typescript/module/src/modules/bt-management/types/custom-lepu-spec.d.ts +5 -2
  48. package/lib/typescript/module/src/modules/bt-management/types/custom-lepu-spec.d.ts.map +1 -1
  49. package/package.json +1 -1
@@ -13,6 +13,7 @@ const HEX_BYTE = /^[0-9a-f]{2}$/;
13
13
  const MAX_OPCODE = 0xff;
14
14
  const MAX_DEVICE_TYPE = 0xffff;
15
15
  const MAX_POLL_INTERVAL_MS = 6_000_000;
16
+ const ECG_FILE_DECODERS = ["viatom-compressed", "raw-int16"];
16
17
  const assertFileTransfer = (id, fileTransfer) => {
17
18
  if (fileTransfer === undefined) {
18
19
  return undefined;
@@ -109,8 +110,8 @@ const compileCustomLepu = (id, spec, serviceUuids) => {
109
110
  const pollIntervalMs = assertPollInterval(id, lepu.pollIntervalMs);
110
111
  const fileTransfer = assertFileTransfer(id, lepu.fileTransfer);
111
112
  const ecgFileDecoder = lepu.ecgFileDecoder;
112
- if (ecgFileDecoder !== undefined && ecgFileDecoder !== "raw-int16") {
113
- throw (0, _customDeviceError.customDeviceError)(id, "lepu.ecgFileDecoder", `is "${String(ecgFileDecoder)}"; expected "raw-int16"`);
113
+ if (ecgFileDecoder !== undefined && !ECG_FILE_DECODERS.includes(ecgFileDecoder)) {
114
+ throw (0, _customDeviceError.customDeviceError)(id, "lepu.ecgFileDecoder", `is "${String(ecgFileDecoder)}"; expected "viatom-compressed"`);
114
115
  }
115
116
  const requestStartByte = lepu.requestStartByte ?? startBytes[0];
116
117
  if (!requestStartByte || !HEX_BYTE.test(requestStartByte.toLowerCase())) {
@@ -1 +1 @@
1
- {"version":3,"names":["_assertIntegerInRange","require","_customDeviceError","_normalizeBleUuid","HEX_BYTE","MAX_OPCODE","MAX_DEVICE_TYPE","MAX_POLL_INTERVAL_MS","assertFileTransfer","id","fileTransfer","undefined","customDeviceError","String","assertProtocol","protocol","assertClockSyncProtocol","assertStartBytes","startBytes","Array","isArray","length","map","byte","index","normalized","toLowerCase","test","assertDeviceTypes","deviceTypes","deviceType","Number","isInteger","assertPollCommand","lepu","pollCommand","assertIntegerInRange","assertPollInterval","interval","compileCustomLepu","spec","serviceUuids","services","some","service","write","clockSyncProtocol","expectedDeviceTypes","pollIntervalMs","ecgFileDecoder","requestStartByte","serviceUuid","normalizeBleUuid","includes","rejectEncryptionAtBytes","writeWithoutResponse","Boolean","setClockBeforeInfo","manufacturerDataProtocol","characteristicUuid","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/custom/compile-custom-lepu.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_assertIntegerInRange","require","_customDeviceError","_normalizeBleUuid","HEX_BYTE","MAX_OPCODE","MAX_DEVICE_TYPE","MAX_POLL_INTERVAL_MS","ECG_FILE_DECODERS","assertFileTransfer","id","fileTransfer","undefined","customDeviceError","String","assertProtocol","protocol","assertClockSyncProtocol","assertStartBytes","startBytes","Array","isArray","length","map","byte","index","normalized","toLowerCase","test","assertDeviceTypes","deviceTypes","deviceType","Number","isInteger","assertPollCommand","lepu","pollCommand","assertIntegerInRange","assertPollInterval","interval","compileCustomLepu","spec","serviceUuids","services","some","service","write","clockSyncProtocol","expectedDeviceTypes","pollIntervalMs","ecgFileDecoder","includes","requestStartByte","serviceUuid","normalizeBleUuid","rejectEncryptionAtBytes","writeWithoutResponse","Boolean","setClockBeforeInfo","manufacturerDataProtocol","characteristicUuid","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/custom/compile-custom-lepu.ts"],"mappings":"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","ignoreList":[]}
@@ -17,10 +17,12 @@ const BP2_REALTIME_COMMAND = exports.BP2_REALTIME_COMMAND = 0x08;
17
17
  const BP2_RESULT_STATES = new Set(["05", "07", "11"]);
18
18
  const BP2_ECG_STATE = "06";
19
19
  const BP2_IDLE_STATES = new Set(["00", "01", "03"]);
20
- const BP2_POLL_INTERVAL_MS = 200;
21
20
 
22
- /** How long a realtime poll may go unanswered before it is sent again. */
23
- const BP2_POLL_ANSWER_TIMEOUT_MS = 1_000;
21
+ /** The pace of Viatom's own BP2 client, which the device keeps up with while it measures. */
22
+ const BP2_POLL_INTERVAL_MS = 500;
23
+
24
+ /** How long a queued realtime poll may go unanswered before it is sent again. */
25
+ const BP2_POLL_ANSWER_TIMEOUT_MS = BP2_POLL_INTERVAL_MS + 1_000;
24
26
  /** Reads unseen BP2 history on connect and after each realtime result. */
25
27
  class BP2HistorySequencer {
26
28
  builder = new _lepuCommandBuilder.LepuCommandBuilder();
@@ -1 +1 @@
1
- {"version":3,"names":["_sentryLogger","require","_clockSync","_hexToByte","_lepuCommandBuilder","_lepuCommands","_lepuEcgTransfer","_lepuFileTransfer","_lepuFrame","_lepuResponseType","BP2_REALTIME_COMMAND","exports","BP2_RESULT_STATES","Set","BP2_ECG_STATE","BP2_IDLE_STATES","BP2_POLL_INTERVAL_MS","BP2_POLL_ANSWER_TIMEOUT_MS","BP2HistorySequencer","builder","LepuCommandBuilder","lastRunStatusFrameCount","realtimeEcgActive","phase","constructor","params","initialCommands","isClockSyncEnabled","clockSync","write","frame","build","LepuCommand","SET_TIME","clockPayload","startTransfer","isHistoryTransfer","commandTimeoutMs","isPolling","undefined","onCommandTimeout","commands","pollCommand","commandProgress","lepuCommandOf","nextCommand","isLepuSuccess","onError","describeLepuResponseType","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","LepuFileTransfer","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","hexToByte","has","toLowerCase","runStatus","lastRunStatus","sentryLogger"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_sentryLogger","require","_clockSync","_hexToByte","_lepuCommandBuilder","_lepuCommands","_lepuEcgTransfer","_lepuFileTransfer","_lepuFrame","_lepuResponseType","BP2_REALTIME_COMMAND","exports","BP2_RESULT_STATES","Set","BP2_ECG_STATE","BP2_IDLE_STATES","BP2_POLL_INTERVAL_MS","BP2_POLL_ANSWER_TIMEOUT_MS","BP2HistorySequencer","builder","LepuCommandBuilder","lastRunStatusFrameCount","realtimeEcgActive","phase","constructor","params","initialCommands","isClockSyncEnabled","clockSync","write","frame","build","LepuCommand","SET_TIME","clockPayload","startTransfer","isHistoryTransfer","commandTimeoutMs","isPolling","undefined","onCommandTimeout","commands","pollCommand","commandProgress","lepuCommandOf","nextCommand","isLepuSuccess","onError","describeLepuResponseType","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","LepuFileTransfer","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","hexToByte","has","toLowerCase","runStatus","lastRunStatus","sentryLogger"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"mappings":"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","ignoreList":[]}
@@ -179,7 +179,7 @@ class BTDataProcessor {
179
179
  message: "Device is stuck"
180
180
  }
181
181
  }));
182
- this.device.cancelConnection?.();
182
+ this.cancelConnection(_measurementFeedback.MeasurementFeedbackKey.STUCK);
183
183
  }, this.stuckDataTimeoutDuration);
184
184
  };
185
185
  startCommandTimeout = () => {
@@ -198,10 +198,18 @@ class BTDataProcessor {
198
198
  }
199
199
  if (result?.terminal) {
200
200
  this.callbacks.onError?.(new Error(_measurementFeedback.MeasurementFeedbackKey.COMMAND_TIMEOUT));
201
- void this.device.cancelConnection?.();
201
+ this.cancelConnection(_measurementFeedback.MeasurementFeedbackKey.COMMAND_TIMEOUT);
202
202
  }
203
203
  }, duration);
204
204
  };
205
+
206
+ /** Ends the link from this side, logged so it is never mistaken for the device hanging up. */
207
+ cancelConnection = reason => {
208
+ (0, _sentryLogger.sentryLogger)("warning", "BT_MANAGER: Cancelling the connection", {
209
+ reason
210
+ });
211
+ void this.device.cancelConnection?.();
212
+ };
205
213
  }
206
214
  exports.BTDataProcessor = BTDataProcessor;
207
215
  //# sourceMappingURL=bt-data-processor.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_sentryLogger","require","_measurementFeedback","_caseType","_frameReadStatus","_frameParser","_measurementStateMachine","BTDataProcessor","buffers","Map","constructor","device","mainServices","stuckDataTimeoutDuration","callbacks","frameReader","frameParser","FrameParser","measurementState","MeasurementStateMachine","onStatusChanged","onStreamStart","onMeasurementEnd","onResult","currentUuid","destroy","clear","reset","clearTimeout","stuckDataTimeout","undefined","commandTimeout","processData","uuid","hexValue","String","toLowerCase","buffer","get","push","set","startStuckTimeout","readFramesFromBuffer","readWholeBuffer","armStuckTimeout","armCommandTimeout","startCommandTimeout","reader","length","result","readFrame","hasProgressed","consumedBytes","splice","status","FrameReadStatus","COMPLETE","handleFrame","frame","answerFrame","CORRUPT","reportCorruptFrame","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","sentryLogger","frameLength","dependentData","parsingCase","caseType","CaseType","DEPENDENT","handleDependentResult","isMeasuring","measuring","advance","onError","Error","MeasurementFeedbackKey","CORRUPT_FRAME","cause","message","setTimeout","STUCK","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal","COMMAND_TIMEOUT","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_sentryLogger","require","_measurementFeedback","_caseType","_frameReadStatus","_frameParser","_measurementStateMachine","BTDataProcessor","buffers","Map","constructor","device","mainServices","stuckDataTimeoutDuration","callbacks","frameReader","frameParser","FrameParser","measurementState","MeasurementStateMachine","onStatusChanged","onStreamStart","onMeasurementEnd","onResult","currentUuid","destroy","clear","reset","clearTimeout","stuckDataTimeout","undefined","commandTimeout","processData","uuid","hexValue","String","toLowerCase","buffer","get","push","set","startStuckTimeout","readFramesFromBuffer","readWholeBuffer","armStuckTimeout","armCommandTimeout","startCommandTimeout","reader","length","result","readFrame","hasProgressed","consumedBytes","splice","status","FrameReadStatus","COMPLETE","handleFrame","frame","answerFrame","CORRUPT","reportCorruptFrame","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","sentryLogger","frameLength","dependentData","parsingCase","caseType","CaseType","DEPENDENT","handleDependentResult","isMeasuring","measuring","advance","onError","Error","MeasurementFeedbackKey","CORRUPT_FRAME","cause","message","setTimeout","STUCK","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal","COMMAND_TIMEOUT","reason","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":"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","ignoreList":[]}
@@ -116,7 +116,7 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
116
116
  onRefused: this.onIdentityRefused,
117
117
  onFile: lepu.fileTransfer === "ecg" ? this.reportViatomEcgFile : lepu.fileTransfer === "bp2" ? this.reportViatomBp2File : this.reportViatomBp3File,
118
118
  skipFiles: lepu.fileTransfer === "bp3" ? undefined : this.deliveredFileNames,
119
- acceptFile: lepu.fileTransfer === "ecg" ? name => lepu.ecgFileDecoder === "raw-int16" && /^R/i.test(name) : lepu.fileTransfer === "bp3" ? name => /^bp\.list$/i.test(name) : undefined,
119
+ acceptFile: lepu.fileTransfer === "ecg" ? name => lepu.ecgFileDecoder !== undefined && /^R/i.test(name) : lepu.fileTransfer === "bp3" ? name => /^bp\.list$/i.test(name) : undefined,
120
120
  pollCommand: lepu.fileTransfer === "ecg" ? undefined : lepu.pollCommand,
121
121
  pollIntervalMs: lepu.fileTransfer === "ecg" ? undefined : lepu.pollIntervalMs,
122
122
  afterTransfer: lepu.fileTransfer === "ecg" && lepu.pollCommand ? () => [{
@@ -144,7 +144,7 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
144
144
  reportViatomEcgFile = file => {
145
145
  const decoded = (0, _viatomEcgFiles.decodeViatomEcgRecording)(file.content);
146
146
  if (decoded.samples.length === 0) {
147
- this.onError?.(new Error(`Viatom ECG: file "${file.name}" had no samples.`));
147
+ this.onError?.(new Error(`Viatom ECG: file "${file.name}" does not decode to its recorded length.`));
148
148
  return;
149
149
  }
150
150
  this.onResult?.({
@@ -1 +1 @@
1
- {"version":3,"names":["_next","require","_caseType","_createFrameValidator","_parseMeasurement","_rejectCustomReading","_bp2Files","_btManagedDevice","_lepuCommandBuilder","_lepuEcgTransfer","_lepuFrameReader","_tmbCommandSequencer","_tmbFrameReader","_viatomBp3Files","_viatomEcgFiles","_customLepuSequencer","CustomDevice","BTManagedDevice","reportedHistoryIds","Set","validators","Map","sessionAggregates","constructor","device","params","definition","oneReadingPerConnection","frameHandler","createFrameHandler","sessionPolicy","deviceData","clockSync","deliveredFileNames","deliveredEcgFileNames","selectedLepu","lepu","selectLepu","manufacturerData","undefined","mainServices","manufacturerDataProtocol","filter","service","uuid","write","serviceUuid","frameReader","stuckDataTimeout","reportsBondedEvent","syncsCurrentTime","preferredMtu","declareLepuProtocol","declareTmbProtocol","declareSequencerFactory","frames","forEach","frame","set","createFrameValidator","create","createCommandSequencer","deviceId","id","recordCursorStorage","tmb","TmbFrameReader","TmbCommandSequencer","protocol","LepuFrameReader","startBytes","fileTransfer","clear","LepuEcgTransferSequencer","characteristicUuid","builder","LepuCommandBuilder","rejectEncryptionAtBytes","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","reportViatomBp2File","reportViatomBp3File","skipFiles","acceptFile","name","ecgFileDecoder","test","pollCommand","pollIntervalMs","afterTransfer","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","createLepuSequencer","file","decoded","decodeViatomEcgRecording","content","samples","length","onResult","measurementTypeKey","MeasurementTypeKey","ecg","caseType","CaseType","RESULT","diagramPoints","duration","recordedAt","recordedAtFromViatomFileName","recordingId","decodeBP2File","reportHistoryOnce","decodeViatomBp3File","has","add","info","recordLepuIdentity","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","parsingCase","requiresStream","isMeasuring","OTHER","handleFrame","parsedData","handlerOnly","captureSessionSample","STREAM","shouldReportDependentResult","reportFrame","error","_data","handleSuccessResult","successResult","collectedValues","emit","reading","handleMeasurementEnd","policy","aggregates","values","sessionStartedAt","aggregate","count","minSamples","summary","sample","Object","fromEntries","sums","entries","map","sessionAverage","decorateReading","value","decimals","fields","Math","trunc","Number","toFixed","measurements","frameRecordedAt","Date","measurement","createMeasurement","rejection","measurementRejection","policyFor","key","existing","readingFields","fieldNames","recordOffset","decorate","repeated","repeatedRecords","report","records","floor","from","recordBytes","record","parseMeasurement","discard","reportMeasurement","discardedReadingError","parsedFields","rejectCustomReading","find","message","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_next","require","_caseType","_createFrameValidator","_parseMeasurement","_rejectCustomReading","_bp2Files","_btManagedDevice","_lepuCommandBuilder","_lepuEcgTransfer","_lepuFrameReader","_tmbCommandSequencer","_tmbFrameReader","_viatomBp3Files","_viatomEcgFiles","_customLepuSequencer","CustomDevice","BTManagedDevice","reportedHistoryIds","Set","validators","Map","sessionAggregates","constructor","device","params","definition","oneReadingPerConnection","frameHandler","createFrameHandler","sessionPolicy","deviceData","clockSync","deliveredFileNames","deliveredEcgFileNames","selectedLepu","lepu","selectLepu","manufacturerData","undefined","mainServices","manufacturerDataProtocol","filter","service","uuid","write","serviceUuid","frameReader","stuckDataTimeout","reportsBondedEvent","syncsCurrentTime","preferredMtu","declareLepuProtocol","declareTmbProtocol","declareSequencerFactory","frames","forEach","frame","set","createFrameValidator","create","createCommandSequencer","deviceId","id","recordCursorStorage","tmb","TmbFrameReader","TmbCommandSequencer","protocol","LepuFrameReader","startBytes","fileTransfer","clear","LepuEcgTransferSequencer","characteristicUuid","builder","LepuCommandBuilder","rejectEncryptionAtBytes","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","reportViatomBp2File","reportViatomBp3File","skipFiles","acceptFile","name","ecgFileDecoder","test","pollCommand","pollIntervalMs","afterTransfer","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","createLepuSequencer","file","decoded","decodeViatomEcgRecording","content","samples","length","onResult","measurementTypeKey","MeasurementTypeKey","ecg","caseType","CaseType","RESULT","diagramPoints","duration","recordedAt","recordedAtFromViatomFileName","recordingId","decodeBP2File","reportHistoryOnce","decodeViatomBp3File","has","add","info","recordLepuIdentity","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","parsingCase","requiresStream","isMeasuring","OTHER","handleFrame","parsedData","handlerOnly","captureSessionSample","STREAM","shouldReportDependentResult","reportFrame","error","_data","handleSuccessResult","successResult","collectedValues","emit","reading","handleMeasurementEnd","policy","aggregates","values","sessionStartedAt","aggregate","count","minSamples","summary","sample","Object","fromEntries","sums","entries","map","sessionAverage","decorateReading","value","decimals","fields","Math","trunc","Number","toFixed","measurements","frameRecordedAt","Date","measurement","createMeasurement","rejection","measurementRejection","policyFor","key","existing","readingFields","fieldNames","recordOffset","decorate","repeated","repeatedRecords","report","records","floor","from","recordBytes","record","parseMeasurement","discard","reportMeasurement","discardedReadingError","parsedFields","rejectCustomReading","find","message","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_preferredMtu","require","_defineCustomDevice","_checkmeProtocol","STANDARD_SERVICE","CHECKME_SERVICE","STANDARD_WRITE","CHECKME_WRITE","STANDARD_NOTIFY","CHECKME_NOTIFY","AW1_SERVICE","AW1_WRITE","AW1_NOTIFY","DING_SERVICE","DING_WRITE","DING_NOTIFY","AI_TELE_SERVICE","AI_TELE_WRITE","AI_TELE_NOTIFY","MINIMUM_MTU","DEFAULT_STUCK_TIMEOUT_MS","START_BYTE","lepuTransports","exports","standard","serviceUuid","notifyUuid","writeUuid","preferredMtu","PREFERRED_MTU","standardSmallMtu","aw1","ding","aiTele","COMMAND_BYTE","lepuDevice","params","transport","viatomOxygen","protocol","monitor","each","uuid","frame","minLengthBytes","caseSelectorBytes","undefined","cases","services","v2","defineCustomDevice","id","nameMatch","matchByService","stuckDataTimeoutMs","clockSync","sessionPolicy","lepu","startBytes","manufacturerDataProtocol","requestStartByte","rejectEncryptionAtBytes","write","characteristicUuid","expectedDeviceTypes","fileTransfer","ecgFileDecoder","pollCommand","pollIntervalMs","writeWithoutResponse","setClockBeforeInfo","clockSyncProtocol","map","service","decorateReading","createFrameHandler"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.transports.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_preferredMtu","require","_defineCustomDevice","_checkmeProtocol","STANDARD_SERVICE","CHECKME_SERVICE","STANDARD_WRITE","CHECKME_WRITE","STANDARD_NOTIFY","CHECKME_NOTIFY","AW1_SERVICE","AW1_WRITE","AW1_NOTIFY","DING_SERVICE","DING_WRITE","DING_NOTIFY","AI_TELE_SERVICE","AI_TELE_WRITE","AI_TELE_NOTIFY","MINIMUM_MTU","DEFAULT_STUCK_TIMEOUT_MS","START_BYTE","lepuTransports","exports","standard","serviceUuid","notifyUuid","writeUuid","preferredMtu","PREFERRED_MTU","standardSmallMtu","aw1","ding","aiTele","COMMAND_BYTE","lepuDevice","params","transport","viatomOxygen","protocol","monitor","each","uuid","frame","minLengthBytes","caseSelectorBytes","undefined","cases","services","v2","defineCustomDevice","id","nameMatch","matchByService","stuckDataTimeoutMs","clockSync","sessionPolicy","lepu","startBytes","manufacturerDataProtocol","requestStartByte","rejectEncryptionAtBytes","write","characteristicUuid","expectedDeviceTypes","fileTransfer","ecgFileDecoder","pollCommand","pollIntervalMs","writeWithoutResponse","setClockBeforeInfo","clockSyncProtocol","map","service","decorateReading","createFrameHandler"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.transports.ts"],"mappings":"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","ignoreList":[]}
@@ -26,29 +26,86 @@ const recordedAtFromViatomFileName = name => {
26
26
  }
27
27
  return validDate(2000 + Number(digits.slice(0, 2)), Number(digits.slice(2, 4)), Number(digits.slice(4, 6)), Number(digits.slice(6, 8)), Number(digits.slice(8, 10)), Number(digits.slice(10, 12)));
28
28
  };
29
+
30
+ /** The file version and reserved bytes that precede the waveform. */
29
31
  exports.recordedAtFromViatomFileName = recordedAtFromViatomFileName;
30
- const readUInt32LittleEndian = (bytes, from) => (0, _hexToByte.hexToByte)(bytes[from] ?? "0") | (0, _hexToByte.hexToByte)(bytes[from + 1] ?? "0") << 8 | (0, _hexToByte.hexToByte)(bytes[from + 2] ?? "0") << 16 | (0, _hexToByte.hexToByte)(bytes[from + 3] ?? "0") << 24;
32
+ const FILE_HEAD_BYTES = 10;
33
+
34
+ /** The bytes after the waveform, opened by the recording time in seconds. */
35
+ const FILE_TAIL_BYTES = 20;
36
+
37
+ /** The count Viatom stores where the recorder had no signal. */
38
+ const NO_SIGNAL_COUNT = 0x7fff;
39
+
40
+ /** A large step's extra byte counts on from the largest one-byte step. */
41
+ const LARGE_STEP_BASE = 127;
42
+
43
+ /** How far the decoded length may stray from the recorded time before a file is refused. */
44
+ const RECORDED_TIME_TOLERANCE_SECONDS = 1;
45
+
46
+ /** A decoded ER1/ER2 recording. */
47
+
48
+ const emptyRecording = () => ({
49
+ samples: [],
50
+ duration: 0
51
+ });
52
+ const toInt8 = byte => byte << 24 >> 24;
53
+ const toInt16 = value => value << 16 >> 16;
54
+ const ONE_BYTE_STEP = {
55
+ width: 1,
56
+ next: (current, bytes, at) => current + toInt8(bytes[at] ?? 0)
57
+ };
58
+
59
+ /** Marker bytes that escape the one-byte step. */
60
+ const ESCAPED_STEPS = new Map([[0x80, {
61
+ width: 3,
62
+ next: (_current, bytes, at) => (bytes[at + 1] ?? 0) | (bytes[at + 2] ?? 0) << 8
63
+ }], [0x7f, {
64
+ width: 2,
65
+ next: (current, bytes, at) => current + (bytes[at + 1] ?? 0) + LARGE_STEP_BASE
66
+ }], [0x81, {
67
+ width: 2,
68
+ next: (current, bytes, at) => current - (bytes[at + 1] ?? 0) - LARGE_STEP_BASE
69
+ }]]);
70
+
71
+ /** Expands Viatom's delta-compressed waveform into signed counts. */
72
+ const decompressWaveform = bytes => {
73
+ const counts = [];
74
+ let current = 0;
75
+ let at = 0;
76
+ while (at < bytes.length) {
77
+ const step = ESCAPED_STEPS.get(bytes[at] ?? 0) ?? ONE_BYTE_STEP;
78
+ if (at + step.width > bytes.length) {
79
+ break;
80
+ }
81
+ current = toInt16(step.next(current, bytes, at));
82
+ counts.push(current);
83
+ at += step.width;
84
+ }
85
+ return counts;
86
+ };
87
+ const readUInt32LittleEndian = (bytes, from) => ((bytes[from] ?? 0) | (bytes[from + 1] ?? 0) << 8 | (bytes[from + 2] ?? 0) << 16 | (bytes[from + 3] ?? 0) << 24) >>> 0;
88
+ const matchesRecordedTime = (sampleCount, seconds) => seconds > 0 && Math.abs(sampleCount - seconds * VIATOM_ECG_SAMPLE_RATE_HZ) <= RECORDED_TIME_TOLERANCE_SECONDS * VIATOM_ECG_SAMPLE_RATE_HZ;
89
+ const toMillivolts = count => count === NO_SIGNAL_COUNT ? 0 : count * VIATOM_ECG_MILLIVOLTS_PER_COUNT;
31
90
 
32
- /** Decodes the official ER1/ER2 file container and its signed ECG samples. */
91
+ /**
92
+ * Decodes an ER1/ER2 recording. A file whose waveform does not last as long as its tail
93
+ * records is returned empty, because that file is in a format this decoder does not read.
94
+ */
33
95
  const decodeViatomEcgRecording = content => {
34
- if (content.length <= 30) {
35
- return {
36
- samples: [],
37
- duration: 0
38
- };
96
+ if (content.length <= FILE_HEAD_BYTES + FILE_TAIL_BYTES) {
97
+ return emptyRecording();
39
98
  }
40
- const waveStart = 10;
41
- const waveEnd = content.length - 20;
42
- const samples = [];
43
- for (let index = waveStart; index + 1 < waveEnd; index += 2) {
44
- const raw = (0, _hexToByte.hexToByte)(content[index] ?? "0") | (0, _hexToByte.hexToByte)(content[index + 1] ?? "0") << 8;
45
- const signed = raw & 0x8000 ? raw - 0x10000 : raw;
46
- samples.push(raw === 0x7fff ? 0 : signed * VIATOM_ECG_MILLIVOLTS_PER_COUNT);
99
+ const bytes = content.map(_hexToByte.hexToByte);
100
+ const tailStart = bytes.length - FILE_TAIL_BYTES;
101
+ const duration = readUInt32LittleEndian(bytes, tailStart);
102
+ const counts = decompressWaveform(bytes.slice(FILE_HEAD_BYTES, tailStart));
103
+ if (!matchesRecordedTime(counts.length, duration)) {
104
+ return emptyRecording();
47
105
  }
48
- const recordedSeconds = readUInt32LittleEndian(content, content.length - 20);
49
106
  return {
50
- samples,
51
- duration: recordedSeconds || samples.length / VIATOM_ECG_SAMPLE_RATE_HZ
107
+ samples: counts.map(toMillivolts),
108
+ duration
52
109
  };
53
110
  };
54
111
  exports.decodeViatomEcgRecording = decodeViatomEcgRecording;
@@ -1 +1 @@
1
- {"version":3,"names":["_hexToByte","require","VIATOM_ECG_SAMPLE_RATE_HZ","exports","VIATOM_ECG_MILLIVOLTS_PER_COUNT","validDate","year","month","day","hour","minute","second","date","Date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","undefined","recordedAtFromViatomFileName","name","digits","match","length","Number","slice","readUInt32LittleEndian","bytes","from","hexToByte","decodeViatomEcgRecording","content","samples","duration","waveStart","waveEnd","index","raw","signed","push","recordedSeconds"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-files.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_hexToByte","require","VIATOM_ECG_SAMPLE_RATE_HZ","exports","VIATOM_ECG_MILLIVOLTS_PER_COUNT","validDate","year","month","day","hour","minute","second","date","Date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","undefined","recordedAtFromViatomFileName","name","digits","match","length","Number","slice","FILE_HEAD_BYTES","FILE_TAIL_BYTES","NO_SIGNAL_COUNT","LARGE_STEP_BASE","RECORDED_TIME_TOLERANCE_SECONDS","emptyRecording","samples","duration","toInt8","byte","toInt16","value","ONE_BYTE_STEP","width","next","current","bytes","at","ESCAPED_STEPS","Map","_current","decompressWaveform","counts","step","get","push","readUInt32LittleEndian","from","matchesRecordedTime","sampleCount","seconds","Math","abs","toMillivolts","count","decodeViatomEcgRecording","content","map","hexToByte","tailStart"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-files.ts"],"mappings":"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","ignoreList":[]}
@@ -82,8 +82,8 @@ const declareRecorder = (advertisedName, profile, params) => (0, _lepuTransports
82
82
  ...(profile.fileTransfer === undefined ? {} : {
83
83
  fileTransfer: profile.fileTransfer
84
84
  }),
85
- ...(RAW_ECG_MODEL_NAMES.has(advertisedName) ? {
86
- ecgFileDecoder: "raw-int16"
85
+ ...(DECODED_ECG_MODEL_NAMES.has(advertisedName) ? {
86
+ ecgFileDecoder: "viatom-compressed"
87
87
  } : {})
88
88
  });
89
89
 
@@ -125,8 +125,8 @@ const ER1_MODEL_NAMES = exports.ER1_MODEL_NAMES = ["ER1", "ER1-H", "ER1-L", "ER1
125
125
  /** The names the ER2 recorders advertise, all of them on the small-MTU link. */
126
126
  const ER2_MODEL_NAMES = exports.ER2_MODEL_NAMES = ["ER2", "ER2-S", "HHM2", "HHM3", "LP ER2", "DuoEK", "CMTouch", "EM-B", "EM-W"];
127
127
 
128
- /** These are the only Viatom recorders whose stored waveform is verified raw int16. */
129
- const RAW_ECG_MODEL_NAMES = new Set(["ER1-L", "ER1-S", "ER1-W"]);
128
+ /** The recorders whose stored recordings are decoded; the rest report live heart rate. */
129
+ const DECODED_ECG_MODEL_NAMES = new Set(["ER1-L", "ER1-S", "ER1-W"]);
130
130
 
131
131
  /** The ER3 family is identified separately from the ER1/ER2 opcode family. */
132
132
  const ER3_MODEL_NAMES = exports.ER3_MODEL_NAMES = ["ER3", "M5", "M12"];
@@ -1 +1 @@
1
- {"version":3,"names":["_next","require","_lepuNameMatch","_lepuTransports","RT_DATA","ER3_RT_DATA","HEART_RATE_UNIT","ER_HEART_RATE_BYTES","declareRecorder","advertisedName","profile","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","transport","clockSync","sessionPolicy","minSamples","emit","pollCommand","minLengthBytes","heartRateBytes","caseSelectorBytes","cases","selector","toString","padStart","kind","measurementTypeKey","MeasurementTypeKey","heartRate","description","fields","name","byteIndexes","byteOrder","encoding","unit","expectedDeviceTypes","fileTransfer","undefined","RAW_ECG_MODEL_NAMES","has","ecgFileDecoder","er1Recorder","exports","er2Recorder","er3Recorder","ER1_MODEL_NAMES","ER2_MODEL_NAMES","Set","ER3_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-recorders.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_next","require","_lepuNameMatch","_lepuTransports","RT_DATA","ER3_RT_DATA","HEART_RATE_UNIT","ER_HEART_RATE_BYTES","declareRecorder","advertisedName","profile","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","transport","clockSync","sessionPolicy","minSamples","emit","pollCommand","minLengthBytes","heartRateBytes","caseSelectorBytes","cases","selector","toString","padStart","kind","measurementTypeKey","MeasurementTypeKey","heartRate","description","fields","name","byteIndexes","byteOrder","encoding","unit","expectedDeviceTypes","fileTransfer","undefined","DECODED_ECG_MODEL_NAMES","has","ecgFileDecoder","er1Recorder","exports","er2Recorder","er3Recorder","ER1_MODEL_NAMES","ER2_MODEL_NAMES","Set","ER3_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-recorders.ts"],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,7 @@ const HEX_BYTE = /^[0-9a-f]{2}$/;
9
9
  const MAX_OPCODE = 0xff;
10
10
  const MAX_DEVICE_TYPE = 0xffff;
11
11
  const MAX_POLL_INTERVAL_MS = 6_000_000;
12
+ const ECG_FILE_DECODERS = ["viatom-compressed", "raw-int16"];
12
13
  const assertFileTransfer = (id, fileTransfer) => {
13
14
  if (fileTransfer === undefined) {
14
15
  return undefined;
@@ -105,8 +106,8 @@ export const compileCustomLepu = (id, spec, serviceUuids) => {
105
106
  const pollIntervalMs = assertPollInterval(id, lepu.pollIntervalMs);
106
107
  const fileTransfer = assertFileTransfer(id, lepu.fileTransfer);
107
108
  const ecgFileDecoder = lepu.ecgFileDecoder;
108
- if (ecgFileDecoder !== undefined && ecgFileDecoder !== "raw-int16") {
109
- throw customDeviceError(id, "lepu.ecgFileDecoder", `is "${String(ecgFileDecoder)}"; expected "raw-int16"`);
109
+ if (ecgFileDecoder !== undefined && !ECG_FILE_DECODERS.includes(ecgFileDecoder)) {
110
+ throw customDeviceError(id, "lepu.ecgFileDecoder", `is "${String(ecgFileDecoder)}"; expected "viatom-compressed"`);
110
111
  }
111
112
  const requestStartByte = lepu.requestStartByte ?? startBytes[0];
112
113
  if (!requestStartByte || !HEX_BYTE.test(requestStartByte.toLowerCase())) {
@@ -1 +1 @@
1
- {"version":3,"names":["assertIntegerInRange","customDeviceError","normalizeBleUuid","HEX_BYTE","MAX_OPCODE","MAX_DEVICE_TYPE","MAX_POLL_INTERVAL_MS","assertFileTransfer","id","fileTransfer","undefined","String","assertProtocol","protocol","assertClockSyncProtocol","assertStartBytes","startBytes","Array","isArray","length","map","byte","index","normalized","toLowerCase","test","assertDeviceTypes","deviceTypes","deviceType","Number","isInteger","assertPollCommand","lepu","pollCommand","assertPollInterval","interval","compileCustomLepu","spec","serviceUuids","services","some","service","write","clockSyncProtocol","expectedDeviceTypes","pollIntervalMs","ecgFileDecoder","requestStartByte","serviceUuid","includes","rejectEncryptionAtBytes","writeWithoutResponse","Boolean","setClockBeforeInfo","manufacturerDataProtocol","characteristicUuid"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/custom/compile-custom-lepu.ts"],"mappings":";;AAAA;;AAKA,SAASA,oBAAoB,QAAQ,8BAA2B;AAChE,SAASC,iBAAiB,QAAQ,0BAAuB;AACzD,SAASC,gBAAgB,QAAQ,yBAAsB;AAEvD,MAAMC,QAAQ,GAAG,eAAe;AAChC,MAAMC,UAAU,GAAG,IAAI;AACvB,MAAMC,eAAe,GAAG,MAAM;AAC9B,MAAMC,oBAAoB,GAAG,SAAS;AAEtC,MAAMC,kBAAkB,GAAGA,CACzBC,EAAU,EACVC,YAAqB,KACiB;EACtC,IAAIA,YAAY,KAAKC,SAAS,EAAE;IAC9B,OAAOA,SAAS;EAClB;EAEA,IACED,YAAY,KAAK,KAAK,IACtBA,YAAY,KAAK,KAAK,IACtBA,YAAY,KAAK,KAAK,EACtB;IACA,MAAMR,iBAAiB,CACrBO,EAAE,EACF,mBAAmB,EACnB,OAAOG,MAAM,CAACF,YAAY,CAAC,mCAC7B,CAAC;EACH;EAEA,OAAOA,YAAY;AACrB,CAAC;AAED,MAAMG,cAAc,GAAGA,CACrBJ,EAAU,EACVK,QAAiB,KACsB;EACvC,IAAIA,QAAQ,KAAKH,SAAS,EAAE;IAC1B,OAAOA,SAAS;EAClB;EAEA,IAAIG,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,eAAe,EAAE;IACrD,MAAMZ,iBAAiB,CACrBO,EAAE,EACF,eAAe,EACf,OAAOG,MAAM,CAACE,QAAQ,CAAC,qCACzB,CAAC;EACH;EAEA,OAAOA,QAAQ;AACjB,CAAC;AAED,MAAMC,uBAAuB,GAAGA,CAC9BN,EAAU,EACVK,QAAiB,KACa;EAC9B,IAAIA,QAAQ,KAAKH,SAAS,EAAE;IAC1B,OAAOA,SAAS;EAClB;EAEA,IAAIG,QAAQ,KAAK,KAAK,IAAIA,QAAQ,KAAK,KAAK,EAAE;IAC5C,MAAMZ,iBAAiB,CACrBO,EAAE,EACF,wBAAwB,EACxB,OAAOG,MAAM,CAACE,QAAQ,CAAC,4BACzB,CAAC;EACH;EAEA,OAAOA,QAAQ;AACjB,CAAC;AAED,MAAME,gBAAgB,GAAGA,CAACP,EAAU,EAAEQ,UAAmB,KAAe;EACtE,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,UAAU,CAAC,IAAIA,UAAU,CAACG,MAAM,KAAK,CAAC,EAAE;IACzD,MAAMlB,iBAAiB,CACrBO,EAAE,EACF,iBAAiB,EACjB,yDACF,CAAC;EACH;EAEA,OAAOQ,UAAU,CAACI,GAAG,CAAC,CAACC,IAAI,EAAEC,KAAK,KAAK;IACrC,MAAMC,UAAU,GAAGZ,MAAM,CAACU,IAAI,CAAC,CAACG,WAAW,CAAC,CAAC;IAE7C,IAAI,CAACrB,QAAQ,CAACsB,IAAI,CAACF,UAAU,CAAC,EAAE;MAC9B,MAAMtB,iBAAiB,CACrBO,EAAE,EACF,mBAAmBc,KAAK,GAAG,EAC3B,OAAOX,MAAM,CAACU,IAAI,CAAC,sCACrB,CAAC;IACH;IAEA,OAAOE,UAAU;EACnB,CAAC,CAAC;AACJ,CAAC;AAED,MAAMG,iBAAiB,GAAGA,CAAClB,EAAU,EAAEmB,WAAoB,KAAe;EACxE,IAAI,CAACV,KAAK,CAACC,OAAO,CAACS,WAAW,CAAC,EAAE;IAC/B,MAAM1B,iBAAiB,CACrBO,EAAE,EACF,0BAA0B,EAC1B,wEACF,CAAC;EACH;EAEA,OAAOmB,WAAW,CAACP,GAAG,CAAC,CAACQ,UAAU,EAAEN,KAAK,KAAK;IAC5C,IACE,CAACO,MAAM,CAACC,SAAS,CAACF,UAAU,CAAC,IAC5BA,UAAU,GAAc,CAAC,IACzBA,UAAU,GAAcvB,eAAe,EACxC;MACA,MAAMJ,iBAAiB,CACrBO,EAAE,EACF,4BAA4Bc,KAAK,GAAG,EACpC,MAAMX,MAAM,CAACiB,UAAU,CAAC,oDAAoDvB,eAAe,EAC7F,CAAC;IACH;IAEA,OAAOuB,UAAU;EACnB,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMG,iBAAiB,GAAGA,CACxBvB,EAAU,EACVwB,IAAoB,KACG;EACvB,MAAM;IAAEC;EAAY,CAAC,GAAGD,IAAI;EAE5B,OAAOC,WAAW,KAAKvB,SAAS,GAC5BA,SAAS,GACTV,oBAAoB,CAClBQ,EAAE,EACF,kBAAkB,EAClByB,WAAW,EACX,CAAC,CAAC,EAAE7B,UAAU,CAAC,EACf,MAAMO,MAAM,CAACsB,WAAW,CAAC,+CAA+C7B,UAAU,EACpF,CAAC;AACP,CAAC;AAED,MAAM8B,kBAAkB,GAAGA,CACzB1B,EAAU,EACV2B,QAAiB,KAEjBA,QAAQ,KAAKzB,SAAS,GAClBA,SAAS,GACTV,oBAAoB,CAClBQ,EAAE,EACF,qBAAqB,EACrB2B,QAAQ,EACR,CAAC,CAAC,EAAE7B,oBAAoB,CAAC,EACzB,MAAMK,MAAM,CAACwB,QAAQ,CAAC,6CAA6C7B,oBAAoB,EACzF,CAAC;;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAM8B,iBAAiB,GAAGA,CAC/B5B,EAAU,EACV6B,IAAsB,EACtBC,YAA+B,KACA;EAC/B,MAAMN,IAAI,GAAGK,IAAI,CAACL,IAAI;EAEtB,IAAI,CAACA,IAAI,EAAE;IACT,OAAOtB,SAAS;EAClB;EAEA,IAAI2B,IAAI,CAACE,QAAQ,CAACC,IAAI,CAAEC,OAAO,IAAKA,OAAO,CAACC,KAAK,CAAC,EAAE;IAClD,MAAMzC,iBAAiB,CACrBO,EAAE,EACF,kBAAkB,EAClB,wGACF,CAAC;EACH;EAEA,MAAMQ,UAAU,GAAGD,gBAAgB,CAACP,EAAE,EAAEwB,IAAI,CAAChB,UAAU,CAAC;EACxD,MAAMH,QAAQ,GAAGD,cAAc,CAACJ,EAAE,EAAEwB,IAAI,CAACnB,QAAQ,CAAC;EAElD,MAAM8B,iBAAiB,GAAG7B,uBAAuB,CAACN,EAAE,EAAEwB,IAAI,CAACW,iBAAiB,CAAC;EAE7E,MAAMC,mBAAmB,GAAGlB,iBAAiB,CAAClB,EAAE,EAAEwB,IAAI,CAACY,mBAAmB,CAAC;EAC3E,MAAMX,WAAW,GAAGF,iBAAiB,CAACvB,EAAE,EAAEwB,IAAI,CAAC;EAC/C,MAAMa,cAAc,GAAGX,kBAAkB,CAAC1B,EAAE,EAAEwB,IAAI,CAACa,cAAc,CAAC;EAClE,MAAMpC,YAAY,GAAGF,kBAAkB,CAACC,EAAE,EAAEwB,IAAI,CAACvB,YAAY,CAAC;EAC9D,MAAMqC,cAAc,GAAGd,IAAI,CAACc,cAAc;EAE1C,IAAIA,cAAc,KAAKpC,SAAS,IAAIoC,cAAc,KAAK,WAAW,EAAE;IAClE,MAAM7C,iBAAiB,CACrBO,EAAE,EACF,qBAAqB,EACrB,OAAOG,MAAM,CAACmC,cAAc,CAAC,yBAC/B,CAAC;EACH;EACA,MAAMC,gBAAgB,GAAGf,IAAI,CAACe,gBAAgB,IAAI/B,UAAU,CAAC,CAAC,CAAC;EAE/D,IAAI,CAAC+B,gBAAgB,IAAI,CAAC5C,QAAQ,CAACsB,IAAI,CAACsB,gBAAgB,CAACvB,WAAW,CAAC,CAAC,CAAC,EAAE;IACvE,MAAMvB,iBAAiB,CACrBO,EAAE,EACF,uBAAuB,EACvB,OAAOG,MAAM,CAACqB,IAAI,CAACe,gBAAgB,CAAC,sCACtC,CAAC;EACH;EAEA,MAAMC,WAAW,GAAG9C,gBAAgB,CAClCM,EAAE,EACF,wBAAwB,EACxBwB,IAAI,CAACU,KAAK,EAAEM,WACd,CAAC;EAED,IAAI,CAACV,YAAY,CAACW,QAAQ,CAACD,WAAW,CAAC,EAAE;IACvC,MAAM/C,iBAAiB,CACrBO,EAAE,EACF,wBAAwB,EACxB,OAAOwC,WAAW,0DACpB,CAAC;EACH;EAEA,MAAME,uBAAuB,GAAGlB,IAAI,CAACkB,uBAAuB;EAE5D,IACEA,uBAAuB,KAAKxC,SAAS,KACpC,CAACO,KAAK,CAACC,OAAO,CAACgC,uBAAuB,CAAC,IACtCA,uBAAuB,CAACV,IAAI,CACzBlB,KAAK,IAAK,CAACO,MAAM,CAACC,SAAS,CAACR,KAAK,CAAC,IAAIA,KAAK,GAAG,CACjD,CAAC,CAAC,EACJ;IACA,MAAMrB,iBAAiB,CACrBO,EAAE,EACF,8BAA8B,EAC9B,+DACF,CAAC;EACH;EAEA,OAAO;IACL,IAAIK,QAAQ,KAAKH,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEG;IAAS,CAAC,CAAC;IAC/C,IAAI8B,iBAAiB,KAAKjC,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEiC;IAAkB,CAAC,CAAC;IACjE,IAAIlC,YAAY,KAAKC,SAAS,GAAG,CAAC,CAAC,GAAG;MAAED;IAAa,CAAC,CAAC;IACvD,IAAIqC,cAAc,KAAKpC,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEoC;IAAe,CAAC,CAAC;IAE3D9B,UAAU;IACV+B,gBAAgB,EAAEA,gBAAgB,CAACvB,WAAW,CAAC,CAAC;IAChDoB,mBAAmB;IACnB,IAAIX,WAAW,KAAKvB,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEuB;IAAY,CAAC,CAAC;IACrD,IAAIY,cAAc,KAAKnC,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEmC;IAAe,CAAC,CAAC;IAC3D,IAAIb,IAAI,CAACmB,oBAAoB,KAAKzC,SAAS,GACvC,CAAC,CAAC,GACF;MAAEyC,oBAAoB,EAAEC,OAAO,CAACpB,IAAI,CAACmB,oBAAoB;IAAE,CAAC,CAAC;IACjE,IAAInB,IAAI,CAACqB,kBAAkB,KAAK3C,SAAS,GACrC,CAAC,CAAC,GACF;MAAE2C,kBAAkB,EAAED,OAAO,CAACpB,IAAI,CAACqB,kBAAkB;IAAE,CAAC,CAAC;IAC7D,IAAIrB,IAAI,CAACsB,wBAAwB,KAAK5C,SAAS,GAC3C,CAAC,CAAC,GACF;MAAE4C,wBAAwB,EAAEtB,IAAI,CAACsB;IAAyB,CAAC,CAAC;IAChE,IAAIJ,uBAAuB,KAAKxC,SAAS,GACrC,CAAC,CAAC,GACF;MAAEwC,uBAAuB,EAAE,CAAC,GAAGA,uBAAuB;IAAE,CAAC,CAAC;IAC9DR,KAAK,EAAE;MACLM,WAAW;MACXO,kBAAkB,EAAErD,gBAAgB,CAClCM,EAAE,EACF,+BAA+B,EAC/BwB,IAAI,CAACU,KAAK,EAAEa,kBACd;IACF;EACF,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["assertIntegerInRange","customDeviceError","normalizeBleUuid","HEX_BYTE","MAX_OPCODE","MAX_DEVICE_TYPE","MAX_POLL_INTERVAL_MS","ECG_FILE_DECODERS","assertFileTransfer","id","fileTransfer","undefined","String","assertProtocol","protocol","assertClockSyncProtocol","assertStartBytes","startBytes","Array","isArray","length","map","byte","index","normalized","toLowerCase","test","assertDeviceTypes","deviceTypes","deviceType","Number","isInteger","assertPollCommand","lepu","pollCommand","assertPollInterval","interval","compileCustomLepu","spec","serviceUuids","services","some","service","write","clockSyncProtocol","expectedDeviceTypes","pollIntervalMs","ecgFileDecoder","includes","requestStartByte","serviceUuid","rejectEncryptionAtBytes","writeWithoutResponse","Boolean","setClockBeforeInfo","manufacturerDataProtocol","characteristicUuid"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/custom/compile-custom-lepu.ts"],"mappings":";;AAAA;;AAKA,SAASA,oBAAoB,QAAQ,8BAA2B;AAChE,SAASC,iBAAiB,QAAQ,0BAAuB;AACzD,SAASC,gBAAgB,QAAQ,yBAAsB;AAEvD,MAAMC,QAAQ,GAAG,eAAe;AAChC,MAAMC,UAAU,GAAG,IAAI;AACvB,MAAMC,eAAe,GAAG,MAAM;AAC9B,MAAMC,oBAAoB,GAAG,SAAS;AAEtC,MAAMC,iBAAqC,GAAG,CAAC,mBAAmB,EAAE,WAAW,CAAC;AAEhF,MAAMC,kBAAkB,GAAGA,CACzBC,EAAU,EACVC,YAAqB,KACiB;EACtC,IAAIA,YAAY,KAAKC,SAAS,EAAE;IAC9B,OAAOA,SAAS;EAClB;EAEA,IACED,YAAY,KAAK,KAAK,IACtBA,YAAY,KAAK,KAAK,IACtBA,YAAY,KAAK,KAAK,EACtB;IACA,MAAMT,iBAAiB,CACrBQ,EAAE,EACF,mBAAmB,EACnB,OAAOG,MAAM,CAACF,YAAY,CAAC,mCAC7B,CAAC;EACH;EAEA,OAAOA,YAAY;AACrB,CAAC;AAED,MAAMG,cAAc,GAAGA,CACrBJ,EAAU,EACVK,QAAiB,KACsB;EACvC,IAAIA,QAAQ,KAAKH,SAAS,EAAE;IAC1B,OAAOA,SAAS;EAClB;EAEA,IAAIG,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,eAAe,EAAE;IACrD,MAAMb,iBAAiB,CACrBQ,EAAE,EACF,eAAe,EACf,OAAOG,MAAM,CAACE,QAAQ,CAAC,qCACzB,CAAC;EACH;EAEA,OAAOA,QAAQ;AACjB,CAAC;AAED,MAAMC,uBAAuB,GAAGA,CAC9BN,EAAU,EACVK,QAAiB,KACa;EAC9B,IAAIA,QAAQ,KAAKH,SAAS,EAAE;IAC1B,OAAOA,SAAS;EAClB;EAEA,IAAIG,QAAQ,KAAK,KAAK,IAAIA,QAAQ,KAAK,KAAK,EAAE;IAC5C,MAAMb,iBAAiB,CACrBQ,EAAE,EACF,wBAAwB,EACxB,OAAOG,MAAM,CAACE,QAAQ,CAAC,4BACzB,CAAC;EACH;EAEA,OAAOA,QAAQ;AACjB,CAAC;AAED,MAAME,gBAAgB,GAAGA,CAACP,EAAU,EAAEQ,UAAmB,KAAe;EACtE,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,UAAU,CAAC,IAAIA,UAAU,CAACG,MAAM,KAAK,CAAC,EAAE;IACzD,MAAMnB,iBAAiB,CACrBQ,EAAE,EACF,iBAAiB,EACjB,yDACF,CAAC;EACH;EAEA,OAAOQ,UAAU,CAACI,GAAG,CAAC,CAACC,IAAI,EAAEC,KAAK,KAAK;IACrC,MAAMC,UAAU,GAAGZ,MAAM,CAACU,IAAI,CAAC,CAACG,WAAW,CAAC,CAAC;IAE7C,IAAI,CAACtB,QAAQ,CAACuB,IAAI,CAACF,UAAU,CAAC,EAAE;MAC9B,MAAMvB,iBAAiB,CACrBQ,EAAE,EACF,mBAAmBc,KAAK,GAAG,EAC3B,OAAOX,MAAM,CAACU,IAAI,CAAC,sCACrB,CAAC;IACH;IAEA,OAAOE,UAAU;EACnB,CAAC,CAAC;AACJ,CAAC;AAED,MAAMG,iBAAiB,GAAGA,CAAClB,EAAU,EAAEmB,WAAoB,KAAe;EACxE,IAAI,CAACV,KAAK,CAACC,OAAO,CAACS,WAAW,CAAC,EAAE;IAC/B,MAAM3B,iBAAiB,CACrBQ,EAAE,EACF,0BAA0B,EAC1B,wEACF,CAAC;EACH;EAEA,OAAOmB,WAAW,CAACP,GAAG,CAAC,CAACQ,UAAU,EAAEN,KAAK,KAAK;IAC5C,IACE,CAACO,MAAM,CAACC,SAAS,CAACF,UAAU,CAAC,IAC5BA,UAAU,GAAc,CAAC,IACzBA,UAAU,GAAcxB,eAAe,EACxC;MACA,MAAMJ,iBAAiB,CACrBQ,EAAE,EACF,4BAA4Bc,KAAK,GAAG,EACpC,MAAMX,MAAM,CAACiB,UAAU,CAAC,oDAAoDxB,eAAe,EAC7F,CAAC;IACH;IAEA,OAAOwB,UAAU;EACnB,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMG,iBAAiB,GAAGA,CACxBvB,EAAU,EACVwB,IAAoB,KACG;EACvB,MAAM;IAAEC;EAAY,CAAC,GAAGD,IAAI;EAE5B,OAAOC,WAAW,KAAKvB,SAAS,GAC5BA,SAAS,GACTX,oBAAoB,CAClBS,EAAE,EACF,kBAAkB,EAClByB,WAAW,EACX,CAAC,CAAC,EAAE9B,UAAU,CAAC,EACf,MAAMQ,MAAM,CAACsB,WAAW,CAAC,+CAA+C9B,UAAU,EACpF,CAAC;AACP,CAAC;AAED,MAAM+B,kBAAkB,GAAGA,CACzB1B,EAAU,EACV2B,QAAiB,KAEjBA,QAAQ,KAAKzB,SAAS,GAClBA,SAAS,GACTX,oBAAoB,CAClBS,EAAE,EACF,qBAAqB,EACrB2B,QAAQ,EACR,CAAC,CAAC,EAAE9B,oBAAoB,CAAC,EACzB,MAAMM,MAAM,CAACwB,QAAQ,CAAC,6CAA6C9B,oBAAoB,EACzF,CAAC;;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAM+B,iBAAiB,GAAGA,CAC/B5B,EAAU,EACV6B,IAAsB,EACtBC,YAA+B,KACA;EAC/B,MAAMN,IAAI,GAAGK,IAAI,CAACL,IAAI;EAEtB,IAAI,CAACA,IAAI,EAAE;IACT,OAAOtB,SAAS;EAClB;EAEA,IAAI2B,IAAI,CAACE,QAAQ,CAACC,IAAI,CAAEC,OAAO,IAAKA,OAAO,CAACC,KAAK,CAAC,EAAE;IAClD,MAAM1C,iBAAiB,CACrBQ,EAAE,EACF,kBAAkB,EAClB,wGACF,CAAC;EACH;EAEA,MAAMQ,UAAU,GAAGD,gBAAgB,CAACP,EAAE,EAAEwB,IAAI,CAAChB,UAAU,CAAC;EACxD,MAAMH,QAAQ,GAAGD,cAAc,CAACJ,EAAE,EAAEwB,IAAI,CAACnB,QAAQ,CAAC;EAElD,MAAM8B,iBAAiB,GAAG7B,uBAAuB,CAACN,EAAE,EAAEwB,IAAI,CAACW,iBAAiB,CAAC;EAE7E,MAAMC,mBAAmB,GAAGlB,iBAAiB,CAAClB,EAAE,EAAEwB,IAAI,CAACY,mBAAmB,CAAC;EAC3E,MAAMX,WAAW,GAAGF,iBAAiB,CAACvB,EAAE,EAAEwB,IAAI,CAAC;EAC/C,MAAMa,cAAc,GAAGX,kBAAkB,CAAC1B,EAAE,EAAEwB,IAAI,CAACa,cAAc,CAAC;EAClE,MAAMpC,YAAY,GAAGF,kBAAkB,CAACC,EAAE,EAAEwB,IAAI,CAACvB,YAAY,CAAC;EAC9D,MAAMqC,cAAc,GAAGd,IAAI,CAACc,cAAc;EAE1C,IACEA,cAAc,KAAKpC,SAAS,IAC5B,CAACJ,iBAAiB,CAACyC,QAAQ,CAACD,cAAc,CAAC,EAC3C;IACA,MAAM9C,iBAAiB,CACrBQ,EAAE,EACF,qBAAqB,EACrB,OAAOG,MAAM,CAACmC,cAAc,CAAC,iCAC/B,CAAC;EACH;EACA,MAAME,gBAAgB,GAAGhB,IAAI,CAACgB,gBAAgB,IAAIhC,UAAU,CAAC,CAAC,CAAC;EAE/D,IAAI,CAACgC,gBAAgB,IAAI,CAAC9C,QAAQ,CAACuB,IAAI,CAACuB,gBAAgB,CAACxB,WAAW,CAAC,CAAC,CAAC,EAAE;IACvE,MAAMxB,iBAAiB,CACrBQ,EAAE,EACF,uBAAuB,EACvB,OAAOG,MAAM,CAACqB,IAAI,CAACgB,gBAAgB,CAAC,sCACtC,CAAC;EACH;EAEA,MAAMC,WAAW,GAAGhD,gBAAgB,CAClCO,EAAE,EACF,wBAAwB,EACxBwB,IAAI,CAACU,KAAK,EAAEO,WACd,CAAC;EAED,IAAI,CAACX,YAAY,CAACS,QAAQ,CAACE,WAAW,CAAC,EAAE;IACvC,MAAMjD,iBAAiB,CACrBQ,EAAE,EACF,wBAAwB,EACxB,OAAOyC,WAAW,0DACpB,CAAC;EACH;EAEA,MAAMC,uBAAuB,GAAGlB,IAAI,CAACkB,uBAAuB;EAE5D,IACEA,uBAAuB,KAAKxC,SAAS,KACpC,CAACO,KAAK,CAACC,OAAO,CAACgC,uBAAuB,CAAC,IACtCA,uBAAuB,CAACV,IAAI,CACzBlB,KAAK,IAAK,CAACO,MAAM,CAACC,SAAS,CAACR,KAAK,CAAC,IAAIA,KAAK,GAAG,CACjD,CAAC,CAAC,EACJ;IACA,MAAMtB,iBAAiB,CACrBQ,EAAE,EACF,8BAA8B,EAC9B,+DACF,CAAC;EACH;EAEA,OAAO;IACL,IAAIK,QAAQ,KAAKH,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEG;IAAS,CAAC,CAAC;IAC/C,IAAI8B,iBAAiB,KAAKjC,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEiC;IAAkB,CAAC,CAAC;IACjE,IAAIlC,YAAY,KAAKC,SAAS,GAAG,CAAC,CAAC,GAAG;MAAED;IAAa,CAAC,CAAC;IACvD,IAAIqC,cAAc,KAAKpC,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEoC;IAAe,CAAC,CAAC;IAE3D9B,UAAU;IACVgC,gBAAgB,EAAEA,gBAAgB,CAACxB,WAAW,CAAC,CAAC;IAChDoB,mBAAmB;IACnB,IAAIX,WAAW,KAAKvB,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEuB;IAAY,CAAC,CAAC;IACrD,IAAIY,cAAc,KAAKnC,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEmC;IAAe,CAAC,CAAC;IAC3D,IAAIb,IAAI,CAACmB,oBAAoB,KAAKzC,SAAS,GACvC,CAAC,CAAC,GACF;MAAEyC,oBAAoB,EAAEC,OAAO,CAACpB,IAAI,CAACmB,oBAAoB;IAAE,CAAC,CAAC;IACjE,IAAInB,IAAI,CAACqB,kBAAkB,KAAK3C,SAAS,GACrC,CAAC,CAAC,GACF;MAAE2C,kBAAkB,EAAED,OAAO,CAACpB,IAAI,CAACqB,kBAAkB;IAAE,CAAC,CAAC;IAC7D,IAAIrB,IAAI,CAACsB,wBAAwB,KAAK5C,SAAS,GAC3C,CAAC,CAAC,GACF;MAAE4C,wBAAwB,EAAEtB,IAAI,CAACsB;IAAyB,CAAC,CAAC;IAChE,IAAIJ,uBAAuB,KAAKxC,SAAS,GACrC,CAAC,CAAC,GACF;MAAEwC,uBAAuB,EAAE,CAAC,GAAGA,uBAAuB;IAAE,CAAC,CAAC;IAC9DR,KAAK,EAAE;MACLO,WAAW;MACXM,kBAAkB,EAAEtD,gBAAgB,CAClCO,EAAE,EACF,+BAA+B,EAC/BwB,IAAI,CAACU,KAAK,EAAEa,kBACd;IACF;EACF,CAAC;AACH,CAAC","ignoreList":[]}
@@ -13,10 +13,12 @@ const BP2_REALTIME_COMMAND = 0x08;
13
13
  const BP2_RESULT_STATES = new Set(["05", "07", "11"]);
14
14
  const BP2_ECG_STATE = "06";
15
15
  const BP2_IDLE_STATES = new Set(["00", "01", "03"]);
16
- const BP2_POLL_INTERVAL_MS = 200;
17
16
 
18
- /** How long a realtime poll may go unanswered before it is sent again. */
19
- const BP2_POLL_ANSWER_TIMEOUT_MS = 1_000;
17
+ /** The pace of Viatom's own BP2 client, which the device keeps up with while it measures. */
18
+ const BP2_POLL_INTERVAL_MS = 500;
19
+
20
+ /** How long a queued realtime poll may go unanswered before it is sent again. */
21
+ const BP2_POLL_ANSWER_TIMEOUT_MS = BP2_POLL_INTERVAL_MS + 1_000;
20
22
  /** Reads unseen BP2 history on connect and after each realtime result. */
21
23
  class BP2HistorySequencer {
22
24
  builder = new LepuCommandBuilder();