zwave-js 12.2.3 → 12.3.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.
Files changed (35) hide show
  1. package/build/lib/controller/Controller.d.ts.map +1 -1
  2. package/build/lib/controller/Controller.js +34 -13
  3. package/build/lib/controller/Controller.js.map +1 -1
  4. package/build/lib/driver/Driver.d.ts +5 -0
  5. package/build/lib/driver/Driver.d.ts.map +1 -1
  6. package/build/lib/driver/Driver.js +104 -68
  7. package/build/lib/driver/Driver.js.map +1 -1
  8. package/build/lib/driver/SerialAPICommandMachine.d.ts +1 -4
  9. package/build/lib/driver/SerialAPICommandMachine.d.ts.map +1 -1
  10. package/build/lib/driver/SerialAPICommandMachine.js +0 -9
  11. package/build/lib/driver/SerialAPICommandMachine.js.map +1 -1
  12. package/build/lib/driver/StateMachineShared.d.ts.map +1 -1
  13. package/build/lib/driver/StateMachineShared.js +0 -3
  14. package/build/lib/driver/StateMachineShared.js.map +1 -1
  15. package/build/lib/driver/ZWaveOptions.d.ts +36 -0
  16. package/build/lib/driver/ZWaveOptions.d.ts.map +1 -1
  17. package/build/lib/driver/ZWaveOptions.js +9 -0
  18. package/build/lib/driver/ZWaveOptions.js.map +1 -1
  19. package/build/lib/node/Endpoint.d.ts.map +1 -1
  20. package/build/lib/node/Endpoint.js +1 -1
  21. package/build/lib/node/Endpoint.js.map +1 -1
  22. package/build/lib/node/Node.d.ts.map +1 -1
  23. package/build/lib/node/Node.js +9 -12
  24. package/build/lib/node/Node.js.map +1 -1
  25. package/build/lib/node/mockCCBehaviors/Basic.d.ts.map +1 -1
  26. package/build/lib/node/mockCCBehaviors/Basic.js +2 -1
  27. package/build/lib/node/mockCCBehaviors/Basic.js.map +1 -1
  28. package/build/lib/node/utils.d.ts.map +1 -1
  29. package/build/lib/node/utils.js +1 -0
  30. package/build/lib/node/utils.js.map +1 -1
  31. package/build/mockServer.d.ts +3 -1
  32. package/build/mockServer.d.ts.map +1 -1
  33. package/build/mockServer.js +4 -0
  34. package/build/mockServer.js.map +1 -1
  35. package/package.json +9 -9
@@ -318,6 +318,11 @@ export declare class Driver extends TypedEventEmitter<DriverEventCallbacks> impl
318
318
  */
319
319
  softReset(): Promise<void>;
320
320
  private softResetInternal;
321
+ /**
322
+ * Checks whether recovering an unresponsive controller is enabled
323
+ * and whether the driver is in a state where it makes sense.
324
+ */
325
+ private mayRecoverUnresponsiveController;
321
326
  private ensureSerialAPI;
322
327
  /**
323
328
  * Performs a hard reset on the controller. This wipes out all configuration!
@@ -1 +1 @@
1
- {"version":3,"file":"Driver.d.ts","sourceRoot":"","sources":["../../../src/lib/driver/Driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Driver.d.ts","sourceRoot":"","sources":["../../../src/lib/driver/Driver.ts"],"names":[],"mappings":"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"}
@@ -79,12 +79,12 @@ exports.libVersion = packageJson.version;
79
79
  exports.libName = packageJson.name;
80
80
  // This is made with cfonts:
81
81
  const libNameString = `
82
- ███████╗ ██╗ ██╗ █████╗ ██╗ ██╗ ███████╗ ██╗ ███████╗
83
- ╚══███╔╝ ██║ ██║ ██╔══██╗ ██║ ██║ ██╔════╝ ██║ ██╔════╝
84
- ███╔╝ ██║ █╗ ██║ ███████║ ██║ ██║ █████╗ █████╗ ██║ ███████╗
85
- ███╔╝ ██║███╗██║ ██╔══██║ ╚██╗ ██╔╝ ██╔══╝ ╚════╝ ██ ██║ ╚════██║
86
- ███████╗ ╚███╔███╔╝ ██║ ██║ ╚████╔╝ ███████╗ ╚█████╔╝ ███████║
87
- ╚══════╝ ╚══╝╚══╝ ╚═╝ ╚═╝ ╚═══╝ ╚══════╝ ╚════╝ ╚══════╝
82
+ ███████╗ ██╗ ██╗ █████╗ ██╗ ██╗ ███████╗ ██╗ ███████╗
83
+ ╚══███╔╝ ██║ ██║ ██╔══██╗ ██║ ██║ ██╔════╝ ██║ ██╔════╝
84
+ ███╔╝ █████╗ ██║ █╗ ██║ ███████║ ██║ ██║ █████╗ ██║ ███████╗
85
+ ███╔╝ ╚════╝ ██║███╗██║ ██╔══██║ ╚██╗ ██╔╝ ██╔══╝ ██ ██║ ╚════██║
86
+ ███████╗ ╚███╔███╔╝ ██║ ██║ ╚████╔╝ ███████╗ ╚█████╔╝ ███████║
87
+ ╚══════╝ ╚══╝╚══╝ ╚═╝ ╚═╝ ╚═══╝ ╚══════╝ ╚════╝ ╚══════╝
88
88
  `;
89
89
  const defaultOptions = {
90
90
  timeouts: {
@@ -111,8 +111,13 @@ const defaultOptions = {
111
111
  nodeInterview: 5,
112
112
  },
113
113
  disableOptimisticValueUpdate: false,
114
- // By default enable soft reset unless the env variable is set
115
- enableSoftReset: !process.env.ZWAVEJS_DISABLE_SOFT_RESET,
114
+ features: {
115
+ // By default enable soft reset unless the env variable is set
116
+ softReset: !process.env.ZWAVEJS_DISABLE_SOFT_RESET,
117
+ // By default enable the unresponsive controller recovery unless the env variable is set
118
+ unresponsiveControllerRecovery: !process.env
119
+ .ZWAVEJS_DISABLE_UNRESPONSIVE_CONTROLLER_RECOVERY,
120
+ },
116
121
  interview: {
117
122
  queryAllUserCodes: false,
118
123
  },
@@ -243,6 +248,15 @@ class Driver extends shared_1.TypedEventEmitter {
243
248
  }
244
249
  // Finally apply the defaults, without overwriting any existing settings
245
250
  this._options = (0, shared_1.mergeDeep)(mergedOptions, (0, shared_1.cloneDeep)(defaultOptions));
251
+ // Normalize deprecated options
252
+ // TODO: Remove test in packages/zwave-js/src/lib/test/driver/sendDataMissingCallbackAbort.test.ts
253
+ // when the deprecated option is removed
254
+ if (
255
+ // eslint-disable-next-line deprecation/deprecation
256
+ this._options.enableSoftReset === false
257
+ && this._options.features.softReset) {
258
+ this._options.features.softReset = false;
259
+ }
246
260
  // And make sure they contain valid values
247
261
  checkOptions(this._options);
248
262
  if (this._options.userAgent) {
@@ -878,9 +892,9 @@ class Driver extends shared_1.TypedEventEmitter {
878
892
  await this.controller.identify();
879
893
  await this.initNetworkCache(this.controller.homeId);
880
894
  const maySoftReset = this.maySoftReset();
881
- if (this._options.enableSoftReset && !maySoftReset) {
895
+ if (this._options.features.softReset && !maySoftReset) {
882
896
  this.driverLog.print(`Soft reset is enabled through config, but this stick does not support it.`, "warn");
883
- this._options.enableSoftReset = false;
897
+ this._options.features.softReset = false;
884
898
  }
885
899
  if (maySoftReset) {
886
900
  await this.softResetInternal(false);
@@ -1660,7 +1674,7 @@ class Driver extends shared_1.TypedEventEmitter {
1660
1674
  return false;
1661
1675
  }
1662
1676
  // No clear indication, make the result depend on the config option
1663
- return !!this._options.enableSoftReset;
1677
+ return !!this._options.features.softReset;
1664
1678
  }
1665
1679
  /**
1666
1680
  * Soft-resets the controller if the feature is enabled
@@ -1755,6 +1769,17 @@ class Driver extends shared_1.TypedEventEmitter {
1755
1769
  this.emit("error", new core_1.ZWaveError(restartReason, core_1.ZWaveErrorCodes.Driver_Failed));
1756
1770
  });
1757
1771
  }
1772
+ /**
1773
+ * Checks whether recovering an unresponsive controller is enabled
1774
+ * and whether the driver is in a state where it makes sense.
1775
+ */
1776
+ mayRecoverUnresponsiveController() {
1777
+ if (!this._options.features.unresponsiveControllerRecovery) {
1778
+ return false;
1779
+ }
1780
+ // Only recover after we know the controller has been responsive
1781
+ return this._controllerInterviewed;
1782
+ }
1758
1783
  async ensureSerialAPI() {
1759
1784
  // Wait 1.5 seconds after reset to ensure that the module is ready for communication again
1760
1785
  // Z-Wave 700 sticks are relatively fast, so we also wait for the Serial API started command
@@ -2443,36 +2468,56 @@ class Driver extends shared_1.TypedEventEmitter {
2443
2468
  * Returns `true` if the transaction failure was handled, `false` if it needs to be rejected.
2444
2469
  */
2445
2470
  handleMissingControllerACK(transaction, error) {
2446
- if (!this._controller)
2471
+ if (!this._controller || !this.mayRecoverUnresponsiveController()) {
2447
2472
  return false;
2448
- const fail = (message) => {
2449
- this.rejectTransaction(transaction, error);
2450
- void this.destroyWithMessage(message);
2473
+ }
2474
+ const recoverByReopeningSerialport = async () => {
2475
+ if (!this.serial)
2476
+ return;
2477
+ this.driverLog.print("Attempting to recover unresponsive controller by reopening the serial port...", "warn");
2478
+ if (this.serial.isOpen)
2479
+ await this.serial.close();
2480
+ await (0, async_1.wait)(1000);
2481
+ await this.openSerialport();
2482
+ this.driverLog.print("Serial port reopened. Returning to normal operation and hoping for the best...", "warn");
2483
+ // We don't know if this worked
2484
+ // Go back to normal operation and hope for the best.
2485
+ this._controller?.setStatus(core_1.ControllerStatus.Ready);
2486
+ this._recoveryPhase = 0 /* ControllerRecoveryPhase.None */;
2451
2487
  };
2452
- if (this._controller.status !== core_1.ControllerStatus.Unresponsive) {
2488
+ if ((this._controller.status !== core_1.ControllerStatus.Unresponsive
2489
+ && !this.maySoftReset())
2490
+ || this._recoveryPhase
2491
+ === 2 /* ControllerRecoveryPhase.ACKTimeoutAfterReset */) {
2492
+ // Either we can/could not do a soft reset or the controller is still timing out afterwards
2493
+ void recoverByReopeningSerialport().catch(shared_1.noop);
2494
+ return true;
2495
+ }
2496
+ else if (this._controller.status !== core_1.ControllerStatus.Unresponsive) {
2453
2497
  // The controller was responsive before this transaction failed.
2454
2498
  // Mark it as unresponsive and try to soft-reset it.
2455
2499
  this.controller.setStatus(core_1.ControllerStatus.Unresponsive);
2456
- this._recoveryPhase = 1 /* ControllerRecoveryPhase.NoACK */;
2457
- this.driverLog.print("Attempting to recover unresponsive controller...", "warn");
2458
- // Re-queue the transaction.
2459
- // Its message generator may have finished, so reset that too.
2460
- transaction.reset();
2461
- this.queue.add(transaction.clone());
2500
+ this._recoveryPhase = 1 /* ControllerRecoveryPhase.ACKTimeout */;
2501
+ this.driverLog.print("Attempting to recover unresponsive controller by restarting it...", "warn");
2462
2502
  // Execute the soft-reset asynchronously
2463
2503
  void this.softReset().then(() => {
2464
2504
  // The controller responded. It is no longer unresponsive
2505
+ // Re-queue the transaction, so it can get handled next.
2506
+ // Its message generator may have finished, so reset that too.
2507
+ transaction.reset();
2508
+ this.queue.add(transaction.clone());
2465
2509
  this._controller?.setStatus(core_1.ControllerStatus.Ready);
2466
2510
  this._recoveryPhase = 0 /* ControllerRecoveryPhase.None */;
2467
2511
  }).catch(() => {
2468
- // Soft-reset failed. Reject the original transaction and try restarting the driver.
2469
- fail("Recovering unresponsive controller failed. Restarting the driver...");
2512
+ // Soft-reset failed. Reject the transaction
2513
+ this.rejectTransaction(transaction, error);
2514
+ // and reopen the serial port
2515
+ return recoverByReopeningSerialport();
2470
2516
  });
2471
2517
  return true;
2472
2518
  }
2473
2519
  else {
2474
- // We already attempted to recover from an unresponsive controller.
2475
- // Ending up here means the soft-reset also failed and the driver is about to be destroyed
2520
+ // Not sure what to do here
2476
2521
  return false;
2477
2522
  }
2478
2523
  }
@@ -2482,15 +2527,16 @@ class Driver extends shared_1.TypedEventEmitter {
2482
2527
  * Returns `true` if the transaction failure was handled, `false` if it needs to be rejected.
2483
2528
  */
2484
2529
  handleMissingSendDataResponseOrCallback(transaction, error) {
2485
- if (!this._controller)
2530
+ if (!this._controller || !this.mayRecoverUnresponsiveController()) {
2486
2531
  return false;
2532
+ }
2487
2533
  if (
2488
2534
  // The SendData response can time out on older controllers trying to reach a dead node.
2489
2535
  // In this case, we do not want to reset the controller, but just mark the node as dead.
2490
2536
  error.context === "response"
2491
2537
  // Also do this if the callback is timing out even after restarting the controller
2492
2538
  || this._recoveryPhase
2493
- === 3 /* ControllerRecoveryPhase.CallbackTimeoutAfterReset */) {
2539
+ === 4 /* ControllerRecoveryPhase.CallbackTimeoutAfterReset */) {
2494
2540
  const node = this.getNodeUnsafe(transaction.message);
2495
2541
  if (!node)
2496
2542
  return false; // This should never happen, but whatever
@@ -2531,24 +2577,33 @@ class Driver extends shared_1.TypedEventEmitter {
2531
2577
  }
2532
2578
  else if (this._controller.status !== core_1.ControllerStatus.Unresponsive) {
2533
2579
  // The controller was responsive before this transaction failed.
2534
- // Mark it as unresponsive and try to soft-reset it.
2535
- this.controller.setStatus(core_1.ControllerStatus.Unresponsive);
2536
- this._recoveryPhase = 2 /* ControllerRecoveryPhase.CallbackTimeout */;
2537
- this.driverLog.print("Controller missed Send Data callback. Attempting to recover...", "warn");
2538
- // Re-queue the transaction.
2539
- // Its message generator may have finished, so reset that too.
2540
- transaction.reset();
2541
- this.queue.add(transaction.clone());
2542
- // Execute the soft-reset asynchronously
2543
- void this.softReset().then(() => {
2544
- // The controller responded. It is no longer unresponsive
2545
- this._controller?.setStatus(core_1.ControllerStatus.Ready);
2546
- this._recoveryPhase =
2547
- 3 /* ControllerRecoveryPhase.CallbackTimeoutAfterReset */;
2548
- }).catch(() => {
2549
- // Soft-reset failed. Just reject the original transaction.
2580
+ if (this.maySoftReset()) {
2581
+ // Mark it as unresponsive and try to soft-reset it.
2582
+ this.controller.setStatus(core_1.ControllerStatus.Unresponsive);
2583
+ this._recoveryPhase = 3 /* ControllerRecoveryPhase.CallbackTimeout */;
2584
+ this.driverLog.print("Controller missed Send Data callback. Attempting to recover...", "warn");
2585
+ // Execute the soft-reset asynchronously
2586
+ void this.softReset().then(() => {
2587
+ // The controller responded. It is no longer unresponsive.
2588
+ // Re-queue the transaction, so it can get handled next.
2589
+ // Its message generator may have finished, so reset that too.
2590
+ transaction.reset();
2591
+ this.queue.add(transaction.clone());
2592
+ this._controller?.setStatus(core_1.ControllerStatus.Ready);
2593
+ this._recoveryPhase =
2594
+ 4 /* ControllerRecoveryPhase.CallbackTimeoutAfterReset */;
2595
+ }).catch(() => {
2596
+ // Soft-reset failed. Just reject the transaction
2597
+ this.rejectTransaction(transaction, error);
2598
+ this.driverLog.print("Automatic controller recovery failed. Returning to normal operation and hoping for the best.", "warn");
2599
+ this._recoveryPhase = 0 /* ControllerRecoveryPhase.None */;
2600
+ this._controller?.setStatus(core_1.ControllerStatus.Ready);
2601
+ });
2602
+ }
2603
+ else {
2604
+ this.driverLog.print("Controller missed Send Data callback. Cannot recover automatically because the soft reset feature is unsupported or disabled. Returning to normal operation and hoping for the best...", "warn");
2550
2605
  this.rejectTransaction(transaction, error);
2551
- });
2606
+ }
2552
2607
  return true;
2553
2608
  }
2554
2609
  else {
@@ -3454,20 +3509,8 @@ ${handlers.length} left`);
3454
3509
  zwError = (0, StateMachineShared_1.createMessageDroppedUnexpectedError)(e);
3455
3510
  }
3456
3511
  else {
3457
- if (e.code === core_1.ZWaveErrorCodes.Controller_CommandAborted) {
3458
- // This transaction was aborted by the driver due to a controller timeout.
3459
- // Rejections, re-queuing etc. have been handled, so just drop it silently and
3460
- // continue with the next message
3461
- transaction.setProgress({
3462
- state: core_1.TransactionState.Failed,
3463
- reason: "Aborted due to controller timeout",
3464
- });
3465
- return;
3466
- }
3467
- else if ((0, SendDataShared_1.isSendData)(msg) && (0, core_1.isMissingControllerCallback)(e)) {
3468
- // If the callback to SendData times out, we need to issue a SendDataAbort
3469
- await this.abortSendData();
3470
- // Reject the transaction - this will trigger the recovery mechanism and retry the command afterwards
3512
+ if ((0, SendDataShared_1.isSendData)(msg) && (0, core_1.isMissingControllerCallback)(e)) {
3513
+ // The controller is unresponsive. Reject the transaction, so we can attempt to recover
3471
3514
  throw e;
3472
3515
  }
3473
3516
  else if ((0, core_1.isMissingControllerACK)(e)) {
@@ -3547,7 +3590,7 @@ ${handlers.length} left`);
3547
3590
  async executeSerialAPICommand(msg, transactionSource) {
3548
3591
  const machine = (0, SerialAPICommandMachine_1.createSerialAPICommandMachine)(msg, {
3549
3592
  sendData: (data) => this.writeSerial(data),
3550
- sendDataAbort: () => this.abortSendData(false),
3593
+ sendDataAbort: () => this.abortSendData(),
3551
3594
  notifyUnsolicited: (msg) => {
3552
3595
  void this.handleUnsolicitedMessage(msg);
3553
3596
  },
@@ -3951,7 +3994,7 @@ ${handlers.length} left`);
3951
3994
  transmitOptions: core_1.TransmitOptions.AutoRoute | core_1.TransmitOptions.ACK,
3952
3995
  });
3953
3996
  }
3954
- async abortSendData(abortInterpreter = false) {
3997
+ async abortSendData() {
3955
3998
  try {
3956
3999
  const abort = new SendDataMessages_1.SendDataAbort(this);
3957
4000
  await this.writeSerial(abort.serialize());
@@ -3961,13 +4004,6 @@ ${handlers.length} left`);
3961
4004
  // We're bypassing the serial API machine, so we need to wait for the ACK ourselves
3962
4005
  // This could also cause a NAK or CAN, but we don't really care
3963
4006
  await this.waitForMessageHeader(() => true, 500).catch(shared_1.noop);
3964
- // Abort the currently active command machine only if the controller has timed out.
3965
- // SendData commands we abort early MUST result in the normal callback.
3966
- if (abortInterpreter
3967
- && this.serialAPIInterpreter?.status
3968
- === xstate_1.InterpreterStatus.Running) {
3969
- this.serialAPIInterpreter.send("abort");
3970
- }
3971
4007
  }
3972
4008
  catch {
3973
4009
  // ignore