zwave-js 15.4.2 → 15.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/lib/_version.d.ts +1 -1
- package/build/cjs/lib/_version.js +1 -1
- package/build/cjs/lib/_version.js.map +1 -1
- package/build/cjs/lib/controller/Controller.js +37 -13
- package/build/cjs/lib/controller/Controller.js.map +2 -2
- package/build/cjs/lib/controller/FirmwareUpdateService.js +0 -1
- package/build/cjs/lib/controller/FirmwareUpdateService.js.map +2 -2
- package/build/cjs/lib/controller/_Types.d.ts +1 -0
- package/build/cjs/lib/controller/_Types.js +16 -0
- package/build/cjs/lib/controller/_Types.js.map +3 -3
- package/build/cjs/lib/driver/Driver.d.ts +11 -1
- package/build/cjs/lib/driver/Driver.js +133 -37
- package/build/cjs/lib/driver/Driver.js.map +2 -2
- package/build/cjs/lib/driver/Task.d.ts +7 -120
- package/build/cjs/lib/driver/Task.js +6 -340
- package/build/cjs/lib/driver/Task.js.map +3 -3
- package/build/cjs/lib/driver/ZWaveOptions.d.ts +26 -6
- package/build/cjs/lib/driver/ZWaveOptions.js.map +2 -2
- package/build/cjs/lib/node/CCHandlers/VersionCC.d.ts +1 -1
- package/build/cjs/lib/node/CCHandlers/VersionCC.js +2 -2
- package/build/cjs/lib/node/CCHandlers/VersionCC.js.map +2 -2
- package/build/cjs/lib/node/Node.js +5 -1
- package/build/cjs/lib/node/Node.js.map +2 -2
- package/build/esm/lib/_version.d.ts +1 -1
- package/build/esm/lib/_version.js +1 -1
- package/build/esm/lib/controller/Controller.d.ts.map +1 -1
- package/build/esm/lib/controller/Controller.js +48 -18
- package/build/esm/lib/controller/Controller.js.map +1 -1
- package/build/esm/lib/controller/FirmwareUpdateService.d.ts.map +1 -1
- package/build/esm/lib/controller/FirmwareUpdateService.js +0 -1
- package/build/esm/lib/controller/FirmwareUpdateService.js.map +1 -1
- package/build/esm/lib/controller/_Types.d.ts +1 -0
- package/build/esm/lib/controller/_Types.d.ts.map +1 -1
- package/build/esm/lib/controller/_Types.js +14 -1
- package/build/esm/lib/controller/_Types.js.map +1 -1
- package/build/esm/lib/driver/Driver.d.ts +11 -1
- package/build/esm/lib/driver/Driver.d.ts.map +1 -1
- package/build/esm/lib/driver/Driver.js +122 -8
- package/build/esm/lib/driver/Driver.js.map +1 -1
- package/build/esm/lib/driver/Task.d.ts +7 -120
- package/build/esm/lib/driver/Task.d.ts.map +1 -1
- package/build/esm/lib/driver/Task.js +3 -403
- package/build/esm/lib/driver/Task.js.map +1 -1
- package/build/esm/lib/driver/ZWaveOptions.d.ts +26 -6
- package/build/esm/lib/driver/ZWaveOptions.d.ts.map +1 -1
- package/build/esm/lib/driver/ZWaveOptions.js.map +1 -1
- package/build/esm/lib/node/CCHandlers/VersionCC.d.ts +1 -1
- package/build/esm/lib/node/CCHandlers/VersionCC.d.ts.map +1 -1
- package/build/esm/lib/node/CCHandlers/VersionCC.js +2 -2
- package/build/esm/lib/node/CCHandlers/VersionCC.js.map +1 -1
- package/build/esm/lib/node/Node.d.ts.map +1 -1
- package/build/esm/lib/node/Node.js +8 -1
- package/build/esm/lib/node/Node.js.map +1 -1
- package/package.json +10 -9
|
@@ -22,7 +22,7 @@ __export(version_exports, {
|
|
|
22
22
|
PACKAGE_VERSION: () => PACKAGE_VERSION
|
|
23
23
|
});
|
|
24
24
|
module.exports = __toCommonJS(version_exports);
|
|
25
|
-
const PACKAGE_VERSION = "15.
|
|
25
|
+
const PACKAGE_VERSION = "15.6.0";
|
|
26
26
|
const PACKAGE_NAME = "zwave-js";
|
|
27
27
|
// Annotate the CommonJS export names for ESM import in node:
|
|
28
28
|
0 && (module.exports = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/lib/_version.ts"],
|
|
4
|
-
"sourcesContent": ["// This file is auto-generated by the codegen maintenance script\nexport const PACKAGE_VERSION = \"15.
|
|
4
|
+
"sourcesContent": ["// This file is auto-generated by the codegen maintenance script\nexport const PACKAGE_VERSION = \"15.6.0\";\nexport const PACKAGE_NAME = \"zwave-js\";\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;;;;;;AACO,MAAM,kBAAkB;AACxB,MAAM,eAAe;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -736,6 +736,8 @@ let ZWaveController = (() => {
|
|
|
736
736
|
}
|
|
737
737
|
}
|
|
738
738
|
let desiredRFRegion;
|
|
739
|
+
let desiredTXPowerlevelMesh;
|
|
740
|
+
let desiredTXPowerlevelLR;
|
|
739
741
|
if (this.driver.options.rf?.region != void 0) {
|
|
740
742
|
desiredRFRegion = this.driver.options.rf.region;
|
|
741
743
|
}
|
|
@@ -747,25 +749,48 @@ let ZWaveController = (() => {
|
|
|
747
749
|
}
|
|
748
750
|
if (this.isSerialAPISetupCommandSupported(import_serialapi.SerialAPISetupCommand.SetRFRegion) && desiredRFRegion != void 0 && this.rfRegion != desiredRFRegion) {
|
|
749
751
|
this.driver.controllerLog.print(`Current RF region (${(0, import_shared.getEnumMemberName)(import_core.RFRegion, this.rfRegion ?? import_core.RFRegion.Unknown)}) differs from desired region (${(0, import_shared.getEnumMemberName)(import_core.RFRegion, desiredRFRegion)}), configuring it...`);
|
|
752
|
+
const isRegionActuallyDifferent = this.tryGetLRCapableRegion(this.rfRegion ?? import_core.RFRegion.Unknown) !== this.tryGetLRCapableRegion(desiredRFRegion);
|
|
750
753
|
const resp = await this.setRFRegionInternal(
|
|
751
754
|
desiredRFRegion,
|
|
752
755
|
// Do not soft reset here, we'll do it later
|
|
753
756
|
false
|
|
754
757
|
).catch((e) => e.message);
|
|
755
758
|
if (resp === true) {
|
|
756
|
-
|
|
759
|
+
let message = `Changed RF region to ${(0, import_shared.getEnumMemberName)(import_core.RFRegion, desiredRFRegion)}.`;
|
|
760
|
+
const applyLimitsForProtocol = [];
|
|
761
|
+
if (isRegionActuallyDifferent && this.driver.options.rf?.txPower?.powerlevel === "auto") {
|
|
762
|
+
desiredTXPowerlevelMesh = (0, import_core.getLegalPowerlevelMesh)(desiredRFRegion);
|
|
763
|
+
applyLimitsForProtocol.push("Z-Wave Classic");
|
|
764
|
+
}
|
|
765
|
+
if (isRegionActuallyDifferent && this.driver.options.rf?.maxLongRangePowerlevel === "auto") {
|
|
766
|
+
desiredTXPowerlevelLR = (0, import_core.getLegalPowerlevelLR)(desiredRFRegion);
|
|
767
|
+
applyLimitsForProtocol.push("Long Range");
|
|
768
|
+
}
|
|
769
|
+
if (applyLimitsForProtocol.length > 0) {
|
|
770
|
+
message += ` The legal powerlevel limits for ${applyLimitsForProtocol.join(" and ")} will be applied.`;
|
|
771
|
+
}
|
|
772
|
+
this.driver.controllerLog.print(message);
|
|
757
773
|
} else {
|
|
758
774
|
this.driver.controllerLog.print(`Changing the RF region failed!${resp ? ` Reason: ${resp}` : ""}`, "warn");
|
|
759
775
|
}
|
|
760
776
|
}
|
|
761
|
-
if (
|
|
762
|
-
|
|
777
|
+
if (typeof this.driver.options.rf?.txPower?.powerlevel === "number") {
|
|
778
|
+
desiredTXPowerlevelMesh = this.driver.options.rf.txPower.powerlevel;
|
|
779
|
+
}
|
|
780
|
+
if (typeof this.driver.options.rf?.maxLongRangePowerlevel === "number") {
|
|
781
|
+
desiredTXPowerlevelLR = this.driver.options.rf.maxLongRangePowerlevel;
|
|
782
|
+
}
|
|
783
|
+
if (this.isSerialAPISetupCommandSupported(import_serialapi.SerialAPISetupCommand.GetPowerlevel) && this.isSerialAPISetupCommandSupported(import_serialapi.SerialAPISetupCommand.SetPowerlevel) && desiredTXPowerlevelMesh != void 0) {
|
|
784
|
+
const desired = {
|
|
785
|
+
powerlevel: desiredTXPowerlevelMesh,
|
|
786
|
+
measured0dBm: this.driver.options.rf?.txPower?.measured0dBm
|
|
787
|
+
};
|
|
763
788
|
this.driver.controllerLog.print(`Querying configured powerlevel...`);
|
|
764
789
|
const current = await this.getPowerlevel().catch(() => void 0);
|
|
765
790
|
if (current != void 0) {
|
|
766
|
-
if (current.powerlevel !== desired.powerlevel || current.measured0dBm !== desired.measured0dBm) {
|
|
767
|
-
this.driver.controllerLog.print(`Current powerlevel ${current.powerlevel} dBm (${current.measured0dBm} dBm) differs from desired powerlevel ${desired.powerlevel} dBm (${desired.measured0dBm} dBm), configuring it...`);
|
|
768
|
-
const resp = await this.setPowerlevel(desired.powerlevel, desired.measured0dBm).catch((e) => e.message);
|
|
791
|
+
if (current.powerlevel !== desired.powerlevel || desired.measured0dBm != void 0 && current.measured0dBm !== desired.measured0dBm) {
|
|
792
|
+
this.driver.controllerLog.print(`Current powerlevel ${current.powerlevel} dBm (${current.measured0dBm} dBm) differs from desired powerlevel ${desired.powerlevel} dBm (${desired.measured0dBm ?? current.measured0dBm} dBm), configuring it...`);
|
|
793
|
+
const resp = await this.setPowerlevel(desired.powerlevel, desired.measured0dBm ?? current.measured0dBm).catch((e) => e.message);
|
|
769
794
|
if (resp === true) {
|
|
770
795
|
this.driver.controllerLog.print(`Powerlevel updated`);
|
|
771
796
|
} else {
|
|
@@ -785,10 +810,9 @@ let ZWaveController = (() => {
|
|
|
785
810
|
this.driver.controllerLog.print(`Querying the max. Long Range powerlevel failed!`, "warn");
|
|
786
811
|
}
|
|
787
812
|
}
|
|
788
|
-
if (this.isSerialAPISetupCommandSupported(import_serialapi.SerialAPISetupCommand.SetLongRangeMaximumTxPower) &&
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
const resp = await this.setMaxLongRangePowerlevel(desired).catch((e) => e.message);
|
|
813
|
+
if (this.isSerialAPISetupCommandSupported(import_serialapi.SerialAPISetupCommand.SetLongRangeMaximumTxPower) && desiredTXPowerlevelLR != void 0 && this.maxLongRangePowerlevel !== desiredTXPowerlevelLR) {
|
|
814
|
+
this.driver.controllerLog.print(`Current max. Long Range powerlevel ${this.maxLongRangePowerlevel?.toFixed(1)} dBm differs from desired powerlevel ${desiredTXPowerlevelLR} dBm, configuring it...`);
|
|
815
|
+
const resp = await this.setMaxLongRangePowerlevel(desiredTXPowerlevelLR).catch((e) => e.message);
|
|
792
816
|
if (resp === true) {
|
|
793
817
|
this.driver.controllerLog.print(`max. Long Range powerlevel updated`);
|
|
794
818
|
} else {
|
|
@@ -2541,6 +2565,7 @@ let ZWaveController = (() => {
|
|
|
2541
2565
|
return {
|
|
2542
2566
|
priority: import_Task.TaskPriority.Lower,
|
|
2543
2567
|
tag: { id: "rebuild-routes" },
|
|
2568
|
+
// @ts-expect-error FIXME: Figure out why the return types are not compatible
|
|
2544
2569
|
task: /* @__PURE__ */ __name(async function* rebuildRoutesTask() {
|
|
2545
2570
|
try {
|
|
2546
2571
|
const neighbors = await self.getNodeNeighbors(self._ownNodeId);
|
|
@@ -4610,10 +4635,9 @@ let ZWaveController = (() => {
|
|
|
4610
4635
|
throw new import_core.ZWaveError(`Cannot check for firmware updates for node ${node.id}: Failed to query firmware version from the node!`, import_core.ZWaveErrorCodes.FWUpdateService_MissingInformation);
|
|
4611
4636
|
}
|
|
4612
4637
|
}
|
|
4613
|
-
|
|
4614
|
-
if (manufacturerId !== node.manufacturerId || productType !== node.productType || productId !== node.productId) {
|
|
4638
|
+
if (node.manufacturerId !== deviceId.manufacturerId || node.productType !== deviceId.productType || node.productId !== deviceId.productId) {
|
|
4615
4639
|
throw new import_core.ZWaveError(`Cannot update firmware for node ${node.id}: The firmware update is for a different device!`, import_core.ZWaveErrorCodes.FWUpdateService_DeviceMismatch);
|
|
4616
|
-
} else if (firmwareVersion !== deviceId.firmwareVersion) {
|
|
4640
|
+
} else if (node.firmwareVersion !== deviceId.firmwareVersion) {
|
|
4617
4641
|
throw new import_core.ZWaveError(`Cannot update firmware for node ${node.id}: The update is for a different original firmware version!`, import_core.ZWaveErrorCodes.FWUpdateService_DeviceMismatch);
|
|
4618
4642
|
}
|
|
4619
4643
|
}
|