@zwave-js/cc 13.10.1 → 14.0.0-beta.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/cc/AlarmSensorCC.d.ts +31 -20
- package/build/cc/AlarmSensorCC.d.ts.map +1 -1
- package/build/cc/AlarmSensorCC.js +106 -87
- package/build/cc/AlarmSensorCC.js.map +1 -1
- package/build/cc/AssociationCC.d.ts +38 -32
- package/build/cc/AssociationCC.d.ts.map +1 -1
- package/build/cc/AssociationCC.js +193 -176
- package/build/cc/AssociationCC.js.map +1 -1
- package/build/cc/AssociationGroupInfoCC.d.ts +42 -36
- package/build/cc/AssociationGroupInfoCC.d.ts.map +1 -1
- package/build/cc/AssociationGroupInfoCC.js +218 -200
- package/build/cc/AssociationGroupInfoCC.js.map +1 -1
- package/build/cc/BarrierOperatorCC.d.ts +41 -24
- package/build/cc/BarrierOperatorCC.d.ts.map +1 -1
- package/build/cc/BarrierOperatorCC.js +143 -109
- package/build/cc/BarrierOperatorCC.js.map +1 -1
- package/build/cc/BasicCC.d.ts +22 -23
- package/build/cc/BasicCC.d.ts.map +1 -1
- package/build/cc/BasicCC.js +83 -77
- package/build/cc/BasicCC.js.map +1 -1
- package/build/cc/BatteryCC.d.ts +22 -14
- package/build/cc/BatteryCC.d.ts.map +1 -1
- package/build/cc/BatteryCC.js +116 -87
- package/build/cc/BatteryCC.js.map +1 -1
- package/build/cc/BinarySensorCC.d.ts +22 -19
- package/build/cc/BinarySensorCC.d.ts.map +1 -1
- package/build/cc/BinarySensorCC.js +103 -93
- package/build/cc/BinarySensorCC.js.map +1 -1
- package/build/cc/BinarySwitchCC.d.ts +20 -20
- package/build/cc/BinarySwitchCC.d.ts.map +1 -1
- package/build/cc/BinarySwitchCC.js +71 -59
- package/build/cc/BinarySwitchCC.js.map +1 -1
- package/build/cc/CRC16CC.d.ts +9 -9
- package/build/cc/CRC16CC.d.ts.map +1 -1
- package/build/cc/CRC16CC.js +36 -36
- package/build/cc/CRC16CC.js.map +1 -1
- package/build/cc/CentralSceneCC.d.ts +34 -16
- package/build/cc/CentralSceneCC.d.ts.map +1 -1
- package/build/cc/CentralSceneCC.js +116 -79
- package/build/cc/CentralSceneCC.js.map +1 -1
- package/build/cc/ClimateControlScheduleCC.d.ts +38 -21
- package/build/cc/ClimateControlScheduleCC.d.ts.map +1 -1
- package/build/cc/ClimateControlScheduleCC.js +113 -81
- package/build/cc/ClimateControlScheduleCC.js.map +1 -1
- package/build/cc/ClockCC.d.ts +18 -11
- package/build/cc/ClockCC.d.ts.map +1 -1
- package/build/cc/ClockCC.js +57 -43
- package/build/cc/ClockCC.js.map +1 -1
- package/build/cc/ColorSwitchCC.d.ts +37 -33
- package/build/cc/ColorSwitchCC.d.ts.map +1 -1
- package/build/cc/ColorSwitchCC.js +216 -189
- package/build/cc/ColorSwitchCC.js.map +1 -1
- package/build/cc/ConfigurationCC.d.ts +89 -74
- package/build/cc/ConfigurationCC.d.ts.map +1 -1
- package/build/cc/ConfigurationCC.js +541 -485
- package/build/cc/ConfigurationCC.js.map +1 -1
- package/build/cc/DeviceResetLocallyCC.d.ts +3 -3
- package/build/cc/DeviceResetLocallyCC.d.ts.map +1 -1
- package/build/cc/DeviceResetLocallyCC.js +14 -14
- package/build/cc/DeviceResetLocallyCC.js.map +1 -1
- package/build/cc/DoorLockCC.d.ts +66 -27
- package/build/cc/DoorLockCC.d.ts.map +1 -1
- package/build/cc/DoorLockCC.js +288 -197
- package/build/cc/DoorLockCC.js.map +1 -1
- package/build/cc/DoorLockLoggingCC.d.ts +23 -13
- package/build/cc/DoorLockLoggingCC.d.ts.map +1 -1
- package/build/cc/DoorLockLoggingCC.js +81 -63
- package/build/cc/DoorLockLoggingCC.js.map +1 -1
- package/build/cc/EnergyProductionCC.d.ts +16 -14
- package/build/cc/EnergyProductionCC.d.ts.map +1 -1
- package/build/cc/EnergyProductionCC.js +58 -52
- package/build/cc/EnergyProductionCC.js.map +1 -1
- package/build/cc/EntryControlCC.d.ts +44 -18
- package/build/cc/EntryControlCC.d.ts.map +1 -1
- package/build/cc/EntryControlCC.js +163 -112
- package/build/cc/EntryControlCC.js.map +1 -1
- package/build/cc/FirmwareUpdateMetaDataCC.d.ts +69 -34
- package/build/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -1
- package/build/cc/FirmwareUpdateMetaDataCC.js +311 -245
- package/build/cc/FirmwareUpdateMetaDataCC.js.map +1 -1
- package/build/cc/HumidityControlModeCC.d.ts +24 -16
- package/build/cc/HumidityControlModeCC.d.ts.map +1 -1
- package/build/cc/HumidityControlModeCC.js +80 -65
- package/build/cc/HumidityControlModeCC.js.map +1 -1
- package/build/cc/HumidityControlOperatingStateCC.d.ts +11 -7
- package/build/cc/HumidityControlOperatingStateCC.d.ts.map +1 -1
- package/build/cc/HumidityControlOperatingStateCC.js +31 -22
- package/build/cc/HumidityControlOperatingStateCC.js.map +1 -1
- package/build/cc/HumidityControlSetpointCC.d.ts +68 -49
- package/build/cc/HumidityControlSetpointCC.d.ts.map +1 -1
- package/build/cc/HumidityControlSetpointCC.js +203 -181
- package/build/cc/HumidityControlSetpointCC.js.map +1 -1
- package/build/cc/InclusionControllerCC.d.ts +13 -11
- package/build/cc/InclusionControllerCC.d.ts.map +1 -1
- package/build/cc/InclusionControllerCC.js +49 -42
- package/build/cc/InclusionControllerCC.js.map +1 -1
- package/build/cc/IndicatorCC.d.ts +46 -39
- package/build/cc/IndicatorCC.d.ts.map +1 -1
- package/build/cc/IndicatorCC.js +298 -277
- package/build/cc/IndicatorCC.js.map +1 -1
- package/build/cc/IrrigationCC.d.ts +127 -57
- package/build/cc/IrrigationCC.d.ts.map +1 -1
- package/build/cc/IrrigationCC.js +496 -352
- package/build/cc/IrrigationCC.js.map +1 -1
- package/build/cc/LanguageCC.d.ts +17 -11
- package/build/cc/LanguageCC.d.ts.map +1 -1
- package/build/cc/LanguageCC.js +54 -44
- package/build/cc/LanguageCC.js.map +1 -1
- package/build/cc/LockCC.d.ts +16 -11
- package/build/cc/LockCC.d.ts.map +1 -1
- package/build/cc/LockCC.js +48 -38
- package/build/cc/LockCC.js.map +1 -1
- package/build/cc/ManufacturerProprietaryCC.d.ts +12 -11
- package/build/cc/ManufacturerProprietaryCC.d.ts.map +1 -1
- package/build/cc/ManufacturerProprietaryCC.js +45 -50
- package/build/cc/ManufacturerProprietaryCC.js.map +1 -1
- package/build/cc/ManufacturerSpecificCC.d.ts +20 -13
- package/build/cc/ManufacturerSpecificCC.d.ts.map +1 -1
- package/build/cc/ManufacturerSpecificCC.js +79 -63
- package/build/cc/ManufacturerSpecificCC.js.map +1 -1
- package/build/cc/MeterCC.d.ts +30 -26
- package/build/cc/MeterCC.d.ts.map +1 -1
- package/build/cc/MeterCC.js +236 -204
- package/build/cc/MeterCC.js.map +1 -1
- package/build/cc/MultiChannelAssociationCC.d.ts +31 -26
- package/build/cc/MultiChannelAssociationCC.d.ts.map +1 -1
- package/build/cc/MultiChannelAssociationCC.js +177 -168
- package/build/cc/MultiChannelAssociationCC.js.map +1 -1
- package/build/cc/MultiChannelCC.d.ts +70 -49
- package/build/cc/MultiChannelCC.d.ts.map +1 -1
- package/build/cc/MultiChannelCC.js +377 -318
- package/build/cc/MultiChannelCC.js.map +1 -1
- package/build/cc/MultiCommandCC.d.ts +9 -9
- package/build/cc/MultiCommandCC.d.ts.map +1 -1
- package/build/cc/MultiCommandCC.js +35 -36
- package/build/cc/MultiCommandCC.js.map +1 -1
- package/build/cc/MultilevelSensorCC.d.ts +38 -33
- package/build/cc/MultilevelSensorCC.d.ts.map +1 -1
- package/build/cc/MultilevelSensorCC.js +172 -152
- package/build/cc/MultilevelSensorCC.js.map +1 -1
- package/build/cc/MultilevelSwitchCC.d.ts +29 -25
- package/build/cc/MultilevelSwitchCC.d.ts.map +1 -1
- package/build/cc/MultilevelSwitchCC.js +147 -127
- package/build/cc/MultilevelSwitchCC.js.map +1 -1
- package/build/cc/NoOperationCC.d.ts +0 -8
- package/build/cc/NoOperationCC.d.ts.map +1 -1
- package/build/cc/NoOperationCC.js +2 -11
- package/build/cc/NoOperationCC.js.map +1 -1
- package/build/cc/NodeNamingCC.d.ts +27 -17
- package/build/cc/NodeNamingCC.d.ts.map +1 -1
- package/build/cc/NodeNamingCC.js +86 -69
- package/build/cc/NodeNamingCC.js.map +1 -1
- package/build/cc/NotificationCC.d.ts +46 -43
- package/build/cc/NotificationCC.d.ts.map +1 -1
- package/build/cc/NotificationCC.js +317 -303
- package/build/cc/NotificationCC.js.map +1 -1
- package/build/cc/PowerlevelCC.d.ts +22 -18
- package/build/cc/PowerlevelCC.d.ts.map +1 -1
- package/build/cc/PowerlevelCC.js +125 -95
- package/build/cc/PowerlevelCC.js.map +1 -1
- package/build/cc/ProtectionCC.d.ts +49 -26
- package/build/cc/ProtectionCC.d.ts.map +1 -1
- package/build/cc/ProtectionCC.js +172 -126
- package/build/cc/ProtectionCC.js.map +1 -1
- package/build/cc/SceneActivationCC.d.ts +8 -7
- package/build/cc/SceneActivationCC.d.ts.map +1 -1
- package/build/cc/SceneActivationCC.js +28 -23
- package/build/cc/SceneActivationCC.js.map +1 -1
- package/build/cc/SceneActuatorConfigurationCC.d.ts +23 -15
- package/build/cc/SceneActuatorConfigurationCC.d.ts.map +1 -1
- package/build/cc/SceneActuatorConfigurationCC.js +79 -62
- package/build/cc/SceneActuatorConfigurationCC.js.map +1 -1
- package/build/cc/SceneControllerConfigurationCC.d.ts +25 -17
- package/build/cc/SceneControllerConfigurationCC.d.ts.map +1 -1
- package/build/cc/SceneControllerConfigurationCC.js +92 -78
- package/build/cc/SceneControllerConfigurationCC.js.map +1 -1
- package/build/cc/ScheduleEntryLockCC.d.ts +86 -72
- package/build/cc/ScheduleEntryLockCC.d.ts.map +1 -1
- package/build/cc/ScheduleEntryLockCC.js +607 -455
- package/build/cc/ScheduleEntryLockCC.js.map +1 -1
- package/build/cc/Security2CC.d.ts +78 -87
- package/build/cc/Security2CC.d.ts.map +1 -1
- package/build/cc/Security2CC.js +798 -765
- package/build/cc/Security2CC.js.map +1 -1
- package/build/cc/SecurityCC.d.ts +47 -42
- package/build/cc/SecurityCC.d.ts.map +1 -1
- package/build/cc/SecurityCC.js +240 -218
- package/build/cc/SecurityCC.js.map +1 -1
- package/build/cc/SoundSwitchCC.d.ts +36 -29
- package/build/cc/SoundSwitchCC.d.ts.map +1 -1
- package/build/cc/SoundSwitchCC.js +180 -157
- package/build/cc/SoundSwitchCC.js.map +1 -1
- package/build/cc/SupervisionCC.d.ts +17 -14
- package/build/cc/SupervisionCC.d.ts.map +1 -1
- package/build/cc/SupervisionCC.js +86 -66
- package/build/cc/SupervisionCC.js.map +1 -1
- package/build/cc/ThermostatFanModeCC.d.ts +25 -15
- package/build/cc/ThermostatFanModeCC.d.ts.map +1 -1
- package/build/cc/ThermostatFanModeCC.js +79 -60
- package/build/cc/ThermostatFanModeCC.js.map +1 -1
- package/build/cc/ThermostatFanStateCC.d.ts +11 -7
- package/build/cc/ThermostatFanStateCC.d.ts.map +1 -1
- package/build/cc/ThermostatFanStateCC.js +31 -22
- package/build/cc/ThermostatFanStateCC.js.map +1 -1
- package/build/cc/ThermostatModeCC.d.ts +24 -21
- package/build/cc/ThermostatModeCC.d.ts.map +1 -1
- package/build/cc/ThermostatModeCC.js +106 -90
- package/build/cc/ThermostatModeCC.js.map +1 -1
- package/build/cc/ThermostatOperatingStateCC.d.ts +11 -7
- package/build/cc/ThermostatOperatingStateCC.d.ts.map +1 -1
- package/build/cc/ThermostatOperatingStateCC.js +31 -22
- package/build/cc/ThermostatOperatingStateCC.js.map +1 -1
- package/build/cc/ThermostatSetbackCC.d.ts +14 -13
- package/build/cc/ThermostatSetbackCC.d.ts.map +1 -1
- package/build/cc/ThermostatSetbackCC.js +64 -57
- package/build/cc/ThermostatSetbackCC.js.map +1 -1
- package/build/cc/ThermostatSetpointCC.d.ts +38 -57
- package/build/cc/ThermostatSetpointCC.d.ts.map +1 -1
- package/build/cc/ThermostatSetpointCC.js +200 -264
- package/build/cc/ThermostatSetpointCC.js.map +1 -1
- package/build/cc/TimeCC.d.ts +24 -20
- package/build/cc/TimeCC.d.ts.map +1 -1
- package/build/cc/TimeCC.js +119 -108
- package/build/cc/TimeCC.js.map +1 -1
- package/build/cc/TimeParametersCC.d.ts +18 -14
- package/build/cc/TimeParametersCC.d.ts.map +1 -1
- package/build/cc/TimeParametersCC.js +77 -69
- package/build/cc/TimeParametersCC.js.map +1 -1
- package/build/cc/TransportServiceCC.d.ts +29 -32
- package/build/cc/TransportServiceCC.d.ts.map +1 -1
- package/build/cc/TransportServiceCC.js +159 -161
- package/build/cc/TransportServiceCC.js.map +1 -1
- package/build/cc/UserCodeCC.d.ts +83 -66
- package/build/cc/UserCodeCC.d.ts.map +1 -1
- package/build/cc/UserCodeCC.js +449 -402
- package/build/cc/UserCodeCC.js.map +1 -1
- package/build/cc/VersionCC.d.ts +36 -20
- package/build/cc/VersionCC.d.ts.map +1 -1
- package/build/cc/VersionCC.js +190 -149
- package/build/cc/VersionCC.js.map +1 -1
- package/build/cc/WakeUpCC.d.ts +27 -13
- package/build/cc/WakeUpCC.d.ts.map +1 -1
- package/build/cc/WakeUpCC.js +105 -77
- package/build/cc/WakeUpCC.js.map +1 -1
- package/build/cc/WindowCoveringCC.d.ts +39 -27
- package/build/cc/WindowCoveringCC.d.ts.map +1 -1
- package/build/cc/WindowCoveringCC.js +169 -137
- package/build/cc/WindowCoveringCC.js.map +1 -1
- package/build/cc/ZWavePlusCC.d.ts +8 -7
- package/build/cc/ZWavePlusCC.d.ts.map +1 -1
- package/build/cc/ZWavePlusCC.js +44 -37
- package/build/cc/ZWavePlusCC.js.map +1 -1
- package/build/cc/ZWaveProtocolCC.d.ts +111 -84
- package/build/cc/ZWaveProtocolCC.d.ts.map +1 -1
- package/build/cc/ZWaveProtocolCC.js +583 -508
- package/build/cc/ZWaveProtocolCC.js.map +1 -1
- package/build/cc/index.d.ts +37 -34
- package/build/cc/index.d.ts.map +1 -1
- package/build/cc/index.js +6 -7
- package/build/cc/index.js.map +1 -1
- package/build/cc/manufacturerProprietary/FibaroCC.d.ts +29 -24
- package/build/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -1
- package/build/cc/manufacturerProprietary/FibaroCC.js +109 -112
- package/build/cc/manufacturerProprietary/FibaroCC.js.map +1 -1
- package/build/index.d.ts +0 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +0 -1
- package/build/index.js.map +1 -1
- package/build/lib/API.d.ts +21 -18
- package/build/lib/API.d.ts.map +1 -1
- package/build/lib/API.js +25 -49
- package/build/lib/API.js.map +1 -1
- package/build/lib/CommandClass.d.ts +51 -89
- package/build/lib/CommandClass.d.ts.map +1 -1
- package/build/lib/CommandClass.js +177 -249
- package/build/lib/CommandClass.js.map +1 -1
- package/build/lib/EncapsulatingCommandClass.d.ts +1 -15
- package/build/lib/EncapsulatingCommandClass.d.ts.map +1 -1
- package/build/lib/EncapsulatingCommandClass.js.map +1 -1
- package/build/lib/ICommandClassContainer.d.ts +1 -8
- package/build/lib/ICommandClassContainer.d.ts.map +1 -1
- package/build/lib/ICommandClassContainer.js +0 -8
- package/build/lib/ICommandClassContainer.js.map +1 -1
- package/build/lib/Values.d.ts +3 -3
- package/build/lib/Values.d.ts.map +1 -1
- package/build/lib/_Types.d.ts.map +1 -1
- package/build/lib/_Types.js +1 -0
- package/build/lib/_Types.js.map +1 -1
- package/build/lib/utils.d.ts +14 -13
- package/build/lib/utils.d.ts.map +1 -1
- package/build/lib/utils.js +94 -92
- package/build/lib/utils.js.map +1 -1
- package/package.json +4 -5
|
@@ -5,6 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
+
var FirmwareUpdateMetaDataCCMetaDataReport_1, FirmwareUpdateMetaDataCCRequestReport_1, FirmwareUpdateMetaDataCCGet_1, FirmwareUpdateMetaDataCCStatusReport_1, FirmwareUpdateMetaDataCCActivationReport_1, FirmwareUpdateMetaDataCCPrepareReport_1;
|
|
8
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
10
|
exports.FirmwareUpdateMetaDataCCPrepareGet = exports.FirmwareUpdateMetaDataCCPrepareReport = exports.FirmwareUpdateMetaDataCCActivationSet = exports.FirmwareUpdateMetaDataCCActivationReport = exports.FirmwareUpdateMetaDataCCStatusReport = exports.FirmwareUpdateMetaDataCCReport = exports.FirmwareUpdateMetaDataCCGet = exports.FirmwareUpdateMetaDataCCRequestGet = exports.FirmwareUpdateMetaDataCCRequestReport = exports.FirmwareUpdateMetaDataCCMetaDataGet = exports.FirmwareUpdateMetaDataCCMetaDataReport = exports.FirmwareUpdateMetaDataCC = exports.FirmwareUpdateMetaDataCCAPI = exports.FirmwareUpdateMetaDataCCValues = void 0;
|
|
10
11
|
function __assertType(argName, typeName, boundHasError) {
|
|
@@ -369,11 +370,11 @@ let FirmwareUpdateMetaDataCCAPI = class FirmwareUpdateMetaDataCCAPI extends API_
|
|
|
369
370
|
*/
|
|
370
371
|
async getMetaData() {
|
|
371
372
|
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.MetaDataGet);
|
|
372
|
-
const cc = new FirmwareUpdateMetaDataCCMetaDataGet(
|
|
373
|
+
const cc = new FirmwareUpdateMetaDataCCMetaDataGet({
|
|
373
374
|
nodeId: this.endpoint.nodeId,
|
|
374
|
-
|
|
375
|
+
endpointIndex: this.endpoint.index,
|
|
375
376
|
});
|
|
376
|
-
const response = await this.
|
|
377
|
+
const response = await this.host.sendCommand(cc, this.commandOptions);
|
|
377
378
|
if (response) {
|
|
378
379
|
return (0, safe_2.pick)(response, [
|
|
379
380
|
"manufacturerId",
|
|
@@ -393,41 +394,30 @@ let FirmwareUpdateMetaDataCCAPI = class FirmwareUpdateMetaDataCCAPI extends API_
|
|
|
393
394
|
async reportMetaData(options) {
|
|
394
395
|
__assertType("options", "FirmwareUpdateMetaDataCCMetaDataReportOptions", __assertType__FirmwareUpdateMetaDataCCMetaDataReportOptions.bind(void 0, options));
|
|
395
396
|
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.Report);
|
|
396
|
-
const cc = new FirmwareUpdateMetaDataCCMetaDataReport(
|
|
397
|
+
const cc = new FirmwareUpdateMetaDataCCMetaDataReport({
|
|
397
398
|
nodeId: this.endpoint.nodeId,
|
|
398
|
-
|
|
399
|
+
endpointIndex: this.endpoint.index,
|
|
399
400
|
...options,
|
|
400
401
|
});
|
|
401
|
-
await this.
|
|
402
|
+
await this.host.sendCommand(cc, this.commandOptions);
|
|
402
403
|
}
|
|
403
404
|
/**
|
|
404
405
|
* Requests the device to start the firmware update process.
|
|
405
|
-
*
|
|
406
|
+
* This does not wait for the reply - that is up to the caller of this method.
|
|
406
407
|
*/
|
|
407
408
|
async requestUpdate(options) {
|
|
408
409
|
__assertType("options", "FirmwareUpdateMetaDataCCRequestGetOptions", __assertType__FirmwareUpdateMetaDataCCRequestGetOptions.bind(void 0, options));
|
|
409
410
|
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.RequestGet);
|
|
410
|
-
const cc = new FirmwareUpdateMetaDataCCRequestGet(
|
|
411
|
+
const cc = new FirmwareUpdateMetaDataCCRequestGet({
|
|
411
412
|
nodeId: this.endpoint.nodeId,
|
|
412
|
-
|
|
413
|
+
endpointIndex: this.endpoint.index,
|
|
413
414
|
...options,
|
|
414
415
|
});
|
|
415
|
-
|
|
416
|
-
// we do not use the built-in waiting functionality, which would block
|
|
417
|
-
// all other communication.
|
|
418
|
-
await this.applHost.sendCommand(cc, {
|
|
416
|
+
await this.host.sendCommand(cc, {
|
|
419
417
|
...this.commandOptions,
|
|
420
418
|
// Do not wait for Nonce Reports
|
|
421
419
|
s2VerifyDelivery: false,
|
|
422
420
|
});
|
|
423
|
-
const result = await this.applHost
|
|
424
|
-
.waitForCommand((cc) => cc instanceof FirmwareUpdateMetaDataCCRequestReport
|
|
425
|
-
&& cc.nodeId === this.endpoint.nodeId, 60000);
|
|
426
|
-
return (0, safe_2.pick)(result, [
|
|
427
|
-
"status",
|
|
428
|
-
"resume",
|
|
429
|
-
"nonSecureTransfer",
|
|
430
|
-
]);
|
|
431
421
|
}
|
|
432
422
|
/**
|
|
433
423
|
* Sends a fragment of the new firmware to the device
|
|
@@ -437,14 +427,14 @@ let FirmwareUpdateMetaDataCCAPI = class FirmwareUpdateMetaDataCCAPI extends API_
|
|
|
437
427
|
__assertType("isLastFragment", "boolean", __assertType__boolean.bind(void 0, isLastFragment));
|
|
438
428
|
__assertType("data", "Buffer", __assertType__Buffer.bind(void 0, data));
|
|
439
429
|
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.Report);
|
|
440
|
-
const cc = new FirmwareUpdateMetaDataCCReport(
|
|
430
|
+
const cc = new FirmwareUpdateMetaDataCCReport({
|
|
441
431
|
nodeId: this.endpoint.nodeId,
|
|
442
|
-
|
|
432
|
+
endpointIndex: this.endpoint.index,
|
|
443
433
|
reportNumber: fragmentNumber,
|
|
444
434
|
isLast: isLastFragment,
|
|
445
435
|
firmwareData: data,
|
|
446
436
|
});
|
|
447
|
-
await this.
|
|
437
|
+
await this.host.sendCommand(cc, {
|
|
448
438
|
...this.commandOptions,
|
|
449
439
|
// Do not wait for Nonce Reports
|
|
450
440
|
s2VerifyDelivery: false,
|
|
@@ -454,12 +444,12 @@ let FirmwareUpdateMetaDataCCAPI = class FirmwareUpdateMetaDataCCAPI extends API_
|
|
|
454
444
|
async activateFirmware(options) {
|
|
455
445
|
__assertType("options", "FirmwareUpdateMetaDataCCActivationSetOptions", __assertType__FirmwareUpdateMetaDataCCActivationSetOptions.bind(void 0, options));
|
|
456
446
|
this.assertSupportsCommand(_Types_1.FirmwareUpdateMetaDataCommand, _Types_1.FirmwareUpdateMetaDataCommand.ActivationSet);
|
|
457
|
-
const cc = new FirmwareUpdateMetaDataCCActivationSet(
|
|
447
|
+
const cc = new FirmwareUpdateMetaDataCCActivationSet({
|
|
458
448
|
nodeId: this.endpoint.nodeId,
|
|
459
|
-
|
|
449
|
+
endpointIndex: this.endpoint.index,
|
|
460
450
|
...options,
|
|
461
451
|
});
|
|
462
|
-
const response = await this.
|
|
452
|
+
const response = await this.host.sendCommand(cc, this.commandOptions);
|
|
463
453
|
return response?.activationStatus;
|
|
464
454
|
}
|
|
465
455
|
};
|
|
@@ -471,18 +461,18 @@ let FirmwareUpdateMetaDataCC = class FirmwareUpdateMetaDataCC extends CommandCla
|
|
|
471
461
|
skipEndpointInterview() {
|
|
472
462
|
return true;
|
|
473
463
|
}
|
|
474
|
-
async interview(
|
|
475
|
-
const node = this.getNode(
|
|
476
|
-
const endpoint = this.getEndpoint(
|
|
477
|
-
const api = API_1.CCAPI.create(safe_1.CommandClasses["Firmware Update Meta Data"],
|
|
464
|
+
async interview(ctx) {
|
|
465
|
+
const node = this.getNode(ctx);
|
|
466
|
+
const endpoint = this.getEndpoint(ctx);
|
|
467
|
+
const api = API_1.CCAPI.create(safe_1.CommandClasses["Firmware Update Meta Data"], ctx, endpoint).withOptions({
|
|
478
468
|
priority: safe_1.MessagePriority.NodeQuery,
|
|
479
469
|
});
|
|
480
|
-
|
|
470
|
+
ctx.logNode(node.id, {
|
|
481
471
|
endpoint: this.endpointIndex,
|
|
482
472
|
message: `Interviewing ${this.ccName}...`,
|
|
483
473
|
direction: "none",
|
|
484
474
|
});
|
|
485
|
-
|
|
475
|
+
ctx.logNode(node.id, {
|
|
486
476
|
endpoint: this.endpointIndex,
|
|
487
477
|
message: "Querying firmware update capabilities...",
|
|
488
478
|
direction: "outbound",
|
|
@@ -507,21 +497,21 @@ let FirmwareUpdateMetaDataCC = class FirmwareUpdateMetaDataCC extends CommandCla
|
|
|
507
497
|
else {
|
|
508
498
|
logMessage += `\nfirmware upgradeable: false`;
|
|
509
499
|
}
|
|
510
|
-
|
|
500
|
+
ctx.logNode(node.id, {
|
|
511
501
|
endpoint: this.endpointIndex,
|
|
512
502
|
message: logMessage,
|
|
513
503
|
direction: "inbound",
|
|
514
504
|
});
|
|
515
505
|
}
|
|
516
506
|
else {
|
|
517
|
-
|
|
507
|
+
ctx.logNode(node.id, {
|
|
518
508
|
endpoint: this.endpointIndex,
|
|
519
509
|
message: "Firmware update capability query timed out",
|
|
520
510
|
direction: "inbound",
|
|
521
511
|
});
|
|
522
512
|
}
|
|
523
513
|
// Remember that the interview is complete
|
|
524
|
-
this.setInterviewComplete(
|
|
514
|
+
this.setInterviewComplete(ctx, true);
|
|
525
515
|
}
|
|
526
516
|
};
|
|
527
517
|
exports.FirmwareUpdateMetaDataCC = FirmwareUpdateMetaDataCC;
|
|
@@ -530,61 +520,79 @@ exports.FirmwareUpdateMetaDataCC = FirmwareUpdateMetaDataCC = __decorate([
|
|
|
530
520
|
(0, CommandClassDecorators_1.implementedVersion)(8),
|
|
531
521
|
(0, CommandClassDecorators_1.ccValues)(exports.FirmwareUpdateMetaDataCCValues)
|
|
532
522
|
], FirmwareUpdateMetaDataCC);
|
|
533
|
-
let FirmwareUpdateMetaDataCCMetaDataReport = class FirmwareUpdateMetaDataCCMetaDataReport extends FirmwareUpdateMetaDataCC {
|
|
534
|
-
constructor(
|
|
535
|
-
super(
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
523
|
+
let FirmwareUpdateMetaDataCCMetaDataReport = FirmwareUpdateMetaDataCCMetaDataReport_1 = class FirmwareUpdateMetaDataCCMetaDataReport extends FirmwareUpdateMetaDataCC {
|
|
524
|
+
constructor(options) {
|
|
525
|
+
super(options);
|
|
526
|
+
this.manufacturerId = options.manufacturerId;
|
|
527
|
+
this.firmwareId = options.firmwareId ?? 0;
|
|
528
|
+
this.checksum = options.checksum ?? 0;
|
|
529
|
+
this.firmwareUpgradable = options.firmwareUpgradable;
|
|
530
|
+
this.maxFragmentSize = options.maxFragmentSize;
|
|
531
|
+
this.additionalFirmwareIDs = options.additionalFirmwareIDs ?? [];
|
|
532
|
+
this.hardwareVersion = options.hardwareVersion;
|
|
533
|
+
this.continuesToFunction = options.continuesToFunction;
|
|
534
|
+
this.supportsActivation = options.supportsActivation;
|
|
535
|
+
this.supportsResuming = options.supportsResuming;
|
|
536
|
+
this.supportsNonSecureTransfer = options.supportsNonSecureTransfer;
|
|
537
|
+
}
|
|
538
|
+
static from(raw, ctx) {
|
|
539
|
+
(0, safe_1.validatePayload)(raw.payload.length >= 6);
|
|
540
|
+
const manufacturerId = raw.payload.readUInt16BE(0);
|
|
541
|
+
const firmwareId = raw.payload.readUInt16BE(2);
|
|
542
|
+
const checksum = raw.payload.readUInt16BE(4);
|
|
543
|
+
// V1/V2 only have a single firmware which must be upgradable
|
|
544
|
+
const firmwareUpgradable = raw.payload[6] === 0xff
|
|
545
|
+
|| raw.payload[6] == undefined;
|
|
546
|
+
let maxFragmentSize;
|
|
547
|
+
let additionalFirmwareIDs;
|
|
548
|
+
let hardwareVersion;
|
|
549
|
+
let continuesToFunction;
|
|
550
|
+
let supportsActivation;
|
|
551
|
+
let supportsResuming;
|
|
552
|
+
let supportsNonSecureTransfer;
|
|
553
|
+
if (raw.payload.length >= 10) {
|
|
554
|
+
// V3+
|
|
555
|
+
maxFragmentSize = raw.payload.readUInt16BE(8);
|
|
556
|
+
// Read variable length list of additional firmwares
|
|
557
|
+
const numAdditionalFirmwares = raw.payload[7];
|
|
558
|
+
additionalFirmwareIDs = [];
|
|
559
|
+
(0, safe_1.validatePayload)(raw.payload.length >= 10 + 2 * numAdditionalFirmwares);
|
|
560
|
+
for (let i = 0; i < numAdditionalFirmwares; i++) {
|
|
561
|
+
additionalFirmwareIDs.push(raw.payload.readUInt16BE(10 + 2 * i));
|
|
562
|
+
}
|
|
563
|
+
// Read hardware version (if it exists)
|
|
564
|
+
let offset = 10 + 2 * numAdditionalFirmwares;
|
|
565
|
+
if (raw.payload.length >= offset + 1) {
|
|
566
|
+
// V5+
|
|
567
|
+
hardwareVersion = raw.payload[offset];
|
|
568
|
+
offset++;
|
|
569
|
+
if (raw.payload.length >= offset + 1) {
|
|
570
|
+
// V6+
|
|
571
|
+
const capabilities = raw.payload[offset];
|
|
558
572
|
offset++;
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
}
|
|
566
|
-
if (this.version >= 8) {
|
|
567
|
-
this.supportsResuming = !!(capabilities & 0b1000);
|
|
568
|
-
this.supportsNonSecureTransfer =
|
|
569
|
-
!!(capabilities & 0b100);
|
|
570
|
-
}
|
|
571
|
-
}
|
|
573
|
+
continuesToFunction = !!(capabilities & 0b1);
|
|
574
|
+
// V7+
|
|
575
|
+
supportsActivation = !!(capabilities & 0b10);
|
|
576
|
+
// V8+
|
|
577
|
+
supportsResuming = !!(capabilities & 0b1000);
|
|
578
|
+
supportsNonSecureTransfer = !!(capabilities & 0b100);
|
|
572
579
|
}
|
|
573
580
|
}
|
|
574
581
|
}
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
582
|
+
return new FirmwareUpdateMetaDataCCMetaDataReport_1({
|
|
583
|
+
nodeId: ctx.sourceNodeId,
|
|
584
|
+
manufacturerId,
|
|
585
|
+
firmwareId,
|
|
586
|
+
checksum,
|
|
587
|
+
firmwareUpgradable,
|
|
588
|
+
maxFragmentSize,
|
|
589
|
+
additionalFirmwareIDs,
|
|
590
|
+
hardwareVersion,
|
|
591
|
+
continuesToFunction,
|
|
592
|
+
supportsActivation,
|
|
593
|
+
supportsResuming,
|
|
594
|
+
supportsNonSecureTransfer,
|
|
595
|
+
});
|
|
588
596
|
}
|
|
589
597
|
manufacturerId;
|
|
590
598
|
firmwareId;
|
|
@@ -597,7 +605,7 @@ let FirmwareUpdateMetaDataCCMetaDataReport = class FirmwareUpdateMetaDataCCMetaD
|
|
|
597
605
|
supportsActivation;
|
|
598
606
|
supportsResuming;
|
|
599
607
|
supportsNonSecureTransfer;
|
|
600
|
-
serialize() {
|
|
608
|
+
serialize(ctx) {
|
|
601
609
|
this.payload = Buffer.alloc(12 + 2 * this.additionalFirmwareIDs.length);
|
|
602
610
|
this.payload.writeUInt16BE(this.manufacturerId, 0);
|
|
603
611
|
this.payload.writeUInt16BE(this.firmwareId, 2);
|
|
@@ -615,9 +623,9 @@ let FirmwareUpdateMetaDataCCMetaDataReport = class FirmwareUpdateMetaDataCCMetaD
|
|
|
615
623
|
| (this.supportsActivation ? 0b10 : 0)
|
|
616
624
|
| (this.supportsNonSecureTransfer ? 0b100 : 0)
|
|
617
625
|
| (this.supportsResuming ? 0b1000 : 0);
|
|
618
|
-
return super.serialize();
|
|
626
|
+
return super.serialize(ctx);
|
|
619
627
|
}
|
|
620
|
-
toLogEntry(
|
|
628
|
+
toLogEntry(ctx) {
|
|
621
629
|
const message = {
|
|
622
630
|
"manufacturer id": this.manufacturerId,
|
|
623
631
|
"firmware id": this.firmwareId,
|
|
@@ -647,7 +655,7 @@ let FirmwareUpdateMetaDataCCMetaDataReport = class FirmwareUpdateMetaDataCCMetaD
|
|
|
647
655
|
this.supportsNonSecureTransfer;
|
|
648
656
|
}
|
|
649
657
|
return {
|
|
650
|
-
...super.toLogEntry(
|
|
658
|
+
...super.toLogEntry(ctx),
|
|
651
659
|
message,
|
|
652
660
|
};
|
|
653
661
|
}
|
|
@@ -671,7 +679,7 @@ __decorate([
|
|
|
671
679
|
__decorate([
|
|
672
680
|
(0, CommandClassDecorators_1.ccValue)(exports.FirmwareUpdateMetaDataCCValues.supportsNonSecureTransfer)
|
|
673
681
|
], FirmwareUpdateMetaDataCCMetaDataReport.prototype, "supportsNonSecureTransfer", void 0);
|
|
674
|
-
exports.FirmwareUpdateMetaDataCCMetaDataReport = FirmwareUpdateMetaDataCCMetaDataReport = __decorate([
|
|
682
|
+
exports.FirmwareUpdateMetaDataCCMetaDataReport = FirmwareUpdateMetaDataCCMetaDataReport = FirmwareUpdateMetaDataCCMetaDataReport_1 = __decorate([
|
|
675
683
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.MetaDataReport)
|
|
676
684
|
], FirmwareUpdateMetaDataCCMetaDataReport);
|
|
677
685
|
let FirmwareUpdateMetaDataCCMetaDataGet = class FirmwareUpdateMetaDataCCMetaDataGet extends FirmwareUpdateMetaDataCC {
|
|
@@ -681,20 +689,34 @@ exports.FirmwareUpdateMetaDataCCMetaDataGet = FirmwareUpdateMetaDataCCMetaDataGe
|
|
|
681
689
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.MetaDataGet),
|
|
682
690
|
(0, CommandClassDecorators_1.expectedCCResponse)(FirmwareUpdateMetaDataCCMetaDataReport)
|
|
683
691
|
], FirmwareUpdateMetaDataCCMetaDataGet);
|
|
684
|
-
let FirmwareUpdateMetaDataCCRequestReport = class FirmwareUpdateMetaDataCCRequestReport extends FirmwareUpdateMetaDataCC {
|
|
685
|
-
constructor(
|
|
686
|
-
super(
|
|
687
|
-
|
|
688
|
-
this.status =
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
692
|
+
let FirmwareUpdateMetaDataCCRequestReport = FirmwareUpdateMetaDataCCRequestReport_1 = class FirmwareUpdateMetaDataCCRequestReport extends FirmwareUpdateMetaDataCC {
|
|
693
|
+
constructor(options) {
|
|
694
|
+
super(options);
|
|
695
|
+
// TODO: Check implementation:
|
|
696
|
+
this.status = options.status;
|
|
697
|
+
this.resume = options.resume;
|
|
698
|
+
this.nonSecureTransfer = options.nonSecureTransfer;
|
|
699
|
+
}
|
|
700
|
+
static from(raw, ctx) {
|
|
701
|
+
(0, safe_1.validatePayload)(raw.payload.length >= 1);
|
|
702
|
+
const status = raw.payload[0];
|
|
703
|
+
let resume;
|
|
704
|
+
let nonSecureTransfer;
|
|
705
|
+
if (raw.payload.length >= 2) {
|
|
706
|
+
resume = !!(raw.payload[1] & 0b100);
|
|
707
|
+
nonSecureTransfer = !!(raw.payload[1] & 0b10);
|
|
708
|
+
}
|
|
709
|
+
return new FirmwareUpdateMetaDataCCRequestReport_1({
|
|
710
|
+
nodeId: ctx.sourceNodeId,
|
|
711
|
+
status,
|
|
712
|
+
resume,
|
|
713
|
+
nonSecureTransfer,
|
|
714
|
+
});
|
|
693
715
|
}
|
|
694
716
|
status;
|
|
695
717
|
resume;
|
|
696
718
|
nonSecureTransfer;
|
|
697
|
-
toLogEntry(
|
|
719
|
+
toLogEntry(ctx) {
|
|
698
720
|
const message = {
|
|
699
721
|
status: (0, safe_2.getEnumMemberName)(_Types_1.FirmwareUpdateRequestStatus, this.status),
|
|
700
722
|
};
|
|
@@ -705,36 +727,37 @@ let FirmwareUpdateMetaDataCCRequestReport = class FirmwareUpdateMetaDataCCReques
|
|
|
705
727
|
message["non-secure transfer"] = this.nonSecureTransfer;
|
|
706
728
|
}
|
|
707
729
|
return {
|
|
708
|
-
...super.toLogEntry(
|
|
730
|
+
...super.toLogEntry(ctx),
|
|
709
731
|
message,
|
|
710
732
|
};
|
|
711
733
|
}
|
|
712
734
|
};
|
|
713
735
|
exports.FirmwareUpdateMetaDataCCRequestReport = FirmwareUpdateMetaDataCCRequestReport;
|
|
714
|
-
exports.FirmwareUpdateMetaDataCCRequestReport = FirmwareUpdateMetaDataCCRequestReport = __decorate([
|
|
736
|
+
exports.FirmwareUpdateMetaDataCCRequestReport = FirmwareUpdateMetaDataCCRequestReport = FirmwareUpdateMetaDataCCRequestReport_1 = __decorate([
|
|
715
737
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.RequestReport)
|
|
716
738
|
], FirmwareUpdateMetaDataCCRequestReport);
|
|
717
739
|
let FirmwareUpdateMetaDataCCRequestGet = class FirmwareUpdateMetaDataCCRequestGet extends FirmwareUpdateMetaDataCC {
|
|
718
|
-
constructor(
|
|
719
|
-
super(
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
this.
|
|
726
|
-
this.
|
|
727
|
-
this.
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
this.fragmentSize = options.fragmentSize;
|
|
731
|
-
this.activation = options.activation ?? false;
|
|
732
|
-
this.hardwareVersion = options.hardwareVersion;
|
|
733
|
-
this.resume = options.resume;
|
|
734
|
-
this.nonSecureTransfer = options.nonSecureTransfer;
|
|
735
|
-
}
|
|
740
|
+
constructor(options) {
|
|
741
|
+
super(options);
|
|
742
|
+
this.manufacturerId = options.manufacturerId;
|
|
743
|
+
this.firmwareId = options.firmwareId;
|
|
744
|
+
this.checksum = options.checksum;
|
|
745
|
+
if ("firmwareTarget" in options) {
|
|
746
|
+
this.firmwareTarget = options.firmwareTarget;
|
|
747
|
+
this.fragmentSize = options.fragmentSize;
|
|
748
|
+
this.activation = options.activation ?? false;
|
|
749
|
+
this.hardwareVersion = options.hardwareVersion;
|
|
750
|
+
this.resume = options.resume;
|
|
751
|
+
this.nonSecureTransfer = options.nonSecureTransfer;
|
|
736
752
|
}
|
|
737
753
|
}
|
|
754
|
+
static from(_raw, _ctx) {
|
|
755
|
+
// TODO: Deserialize payload
|
|
756
|
+
throw new safe_1.ZWaveError(`${this.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
757
|
+
// return new FirmwareUpdateMetaDataCCRequestGet({
|
|
758
|
+
// nodeId: ctx.sourceNodeId,
|
|
759
|
+
// });
|
|
760
|
+
}
|
|
738
761
|
manufacturerId;
|
|
739
762
|
firmwareId;
|
|
740
763
|
checksum;
|
|
@@ -744,33 +767,22 @@ let FirmwareUpdateMetaDataCCRequestGet = class FirmwareUpdateMetaDataCCRequestGe
|
|
|
744
767
|
hardwareVersion;
|
|
745
768
|
resume;
|
|
746
769
|
nonSecureTransfer;
|
|
747
|
-
serialize() {
|
|
748
|
-
|
|
749
|
-
&& this.firmwareTarget != undefined
|
|
750
|
-
&& this.fragmentSize != undefined;
|
|
751
|
-
const isV4 = isV3 && this.version >= 4;
|
|
752
|
-
const isV5 = isV4
|
|
753
|
-
&& this.version >= 5
|
|
754
|
-
&& this.hardwareVersion != undefined;
|
|
755
|
-
this.payload = Buffer.allocUnsafe(6 + (isV3 ? 3 : 0) + (isV4 ? 1 : 0) + (isV5 ? 1 : 0));
|
|
770
|
+
serialize(ctx) {
|
|
771
|
+
this.payload = Buffer.alloc(11, 0);
|
|
756
772
|
this.payload.writeUInt16BE(this.manufacturerId, 0);
|
|
757
773
|
this.payload.writeUInt16BE(this.firmwareId, 2);
|
|
758
774
|
this.payload.writeUInt16BE(this.checksum, 4);
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
if (isV5) {
|
|
769
|
-
this.payload[10] = this.hardwareVersion;
|
|
770
|
-
}
|
|
771
|
-
return super.serialize();
|
|
775
|
+
this.payload[6] = this.firmwareTarget ?? 0;
|
|
776
|
+
// 32 seems like a reasonable default fragment size,
|
|
777
|
+
// but it should be specified anyways
|
|
778
|
+
this.payload.writeUInt16BE(this.fragmentSize ?? 32, 7);
|
|
779
|
+
this.payload[9] = (this.activation ? 0b1 : 0)
|
|
780
|
+
| (this.nonSecureTransfer ? 0b10 : 0)
|
|
781
|
+
| (this.resume ? 0b100 : 0);
|
|
782
|
+
this.payload[10] = this.hardwareVersion ?? 0x00;
|
|
783
|
+
return super.serialize(ctx);
|
|
772
784
|
}
|
|
773
|
-
toLogEntry(
|
|
785
|
+
toLogEntry(ctx) {
|
|
774
786
|
const message = {
|
|
775
787
|
"manufacturer id": (0, safe_2.num2hex)(this.manufacturerId),
|
|
776
788
|
"firmware id": (0, safe_2.num2hex)(this.firmwareId),
|
|
@@ -795,7 +807,7 @@ let FirmwareUpdateMetaDataCCRequestGet = class FirmwareUpdateMetaDataCCRequestGe
|
|
|
795
807
|
message["hardware version"] = this.hardwareVersion;
|
|
796
808
|
}
|
|
797
809
|
return {
|
|
798
|
-
...super.toLogEntry(
|
|
810
|
+
...super.toLogEntry(ctx),
|
|
799
811
|
message,
|
|
800
812
|
};
|
|
801
813
|
}
|
|
@@ -806,18 +818,28 @@ exports.FirmwareUpdateMetaDataCCRequestGet = FirmwareUpdateMetaDataCCRequestGet
|
|
|
806
818
|
// This would expect a FirmwareUpdateMetaDataCCRequestReport, but the response may take
|
|
807
819
|
// a while to come. We don't want to block communication, so we don't expect a response here
|
|
808
820
|
], FirmwareUpdateMetaDataCCRequestGet);
|
|
809
|
-
let FirmwareUpdateMetaDataCCGet = class FirmwareUpdateMetaDataCCGet extends FirmwareUpdateMetaDataCC {
|
|
810
|
-
constructor(
|
|
811
|
-
super(
|
|
812
|
-
|
|
813
|
-
this.numReports =
|
|
814
|
-
this.reportNumber =
|
|
821
|
+
let FirmwareUpdateMetaDataCCGet = FirmwareUpdateMetaDataCCGet_1 = class FirmwareUpdateMetaDataCCGet extends FirmwareUpdateMetaDataCC {
|
|
822
|
+
constructor(options) {
|
|
823
|
+
super(options);
|
|
824
|
+
// TODO: Check implementation:
|
|
825
|
+
this.numReports = options.numReports;
|
|
826
|
+
this.reportNumber = options.reportNumber;
|
|
827
|
+
}
|
|
828
|
+
static from(raw, ctx) {
|
|
829
|
+
(0, safe_1.validatePayload)(raw.payload.length >= 3);
|
|
830
|
+
const numReports = raw.payload[0];
|
|
831
|
+
const reportNumber = raw.payload.readUInt16BE(1) & 0x7fff;
|
|
832
|
+
return new FirmwareUpdateMetaDataCCGet_1({
|
|
833
|
+
nodeId: ctx.sourceNodeId,
|
|
834
|
+
numReports,
|
|
835
|
+
reportNumber,
|
|
836
|
+
});
|
|
815
837
|
}
|
|
816
838
|
numReports;
|
|
817
839
|
reportNumber;
|
|
818
|
-
toLogEntry(
|
|
840
|
+
toLogEntry(ctx) {
|
|
819
841
|
return {
|
|
820
|
-
...super.toLogEntry(
|
|
842
|
+
...super.toLogEntry(ctx),
|
|
821
843
|
message: {
|
|
822
844
|
"total # of reports": this.numReports,
|
|
823
845
|
"report number": this.reportNumber,
|
|
@@ -826,33 +848,37 @@ let FirmwareUpdateMetaDataCCGet = class FirmwareUpdateMetaDataCCGet extends Firm
|
|
|
826
848
|
}
|
|
827
849
|
};
|
|
828
850
|
exports.FirmwareUpdateMetaDataCCGet = FirmwareUpdateMetaDataCCGet;
|
|
829
|
-
exports.FirmwareUpdateMetaDataCCGet = FirmwareUpdateMetaDataCCGet = __decorate([
|
|
851
|
+
exports.FirmwareUpdateMetaDataCCGet = FirmwareUpdateMetaDataCCGet = FirmwareUpdateMetaDataCCGet_1 = __decorate([
|
|
830
852
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.Get)
|
|
831
853
|
// This is sent to us from the node, so we expect no response
|
|
832
854
|
], FirmwareUpdateMetaDataCCGet);
|
|
833
855
|
let FirmwareUpdateMetaDataCCReport = class FirmwareUpdateMetaDataCCReport extends FirmwareUpdateMetaDataCC {
|
|
834
|
-
constructor(
|
|
835
|
-
super(
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
856
|
+
constructor(options) {
|
|
857
|
+
super(options);
|
|
858
|
+
this.reportNumber = options.reportNumber;
|
|
859
|
+
this.firmwareData = options.firmwareData;
|
|
860
|
+
this.isLast = options.isLast;
|
|
861
|
+
}
|
|
862
|
+
static from(_raw, _ctx) {
|
|
863
|
+
// TODO: Deserialize payload
|
|
864
|
+
throw new safe_1.ZWaveError(`${this.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
865
|
+
// return new FirmwareUpdateMetaDataCCReport({
|
|
866
|
+
// nodeId: ctx.sourceNodeId,
|
|
867
|
+
// });
|
|
845
868
|
}
|
|
846
869
|
isLast;
|
|
847
870
|
reportNumber;
|
|
848
871
|
firmwareData;
|
|
849
|
-
serialize() {
|
|
872
|
+
serialize(ctx) {
|
|
850
873
|
const commandBuffer = Buffer.concat([
|
|
851
874
|
Buffer.allocUnsafe(2), // placeholder for report number
|
|
852
875
|
this.firmwareData,
|
|
853
876
|
]);
|
|
854
877
|
commandBuffer.writeUInt16BE((this.reportNumber & 0x7fff) | (this.isLast ? 0x8000 : 0), 0);
|
|
855
|
-
|
|
878
|
+
// V1 devices would consider the checksum to be part of the firmware data
|
|
879
|
+
// so it must not be included for those
|
|
880
|
+
const ccVersion = (0, CommandClass_1.getEffectiveCCVersion)(ctx, this);
|
|
881
|
+
if (ccVersion >= 2) {
|
|
856
882
|
// Compute and save the CRC16 in the payload
|
|
857
883
|
// The CC header is included in the CRC computation
|
|
858
884
|
let crc = (0, safe_1.CRC16_CCITT)(Buffer.from([this.ccId, this.ccCommand]));
|
|
@@ -866,11 +892,11 @@ let FirmwareUpdateMetaDataCCReport = class FirmwareUpdateMetaDataCCReport extend
|
|
|
866
892
|
else {
|
|
867
893
|
this.payload = commandBuffer;
|
|
868
894
|
}
|
|
869
|
-
return super.serialize();
|
|
895
|
+
return super.serialize(ctx);
|
|
870
896
|
}
|
|
871
|
-
toLogEntry(
|
|
897
|
+
toLogEntry(ctx) {
|
|
872
898
|
return {
|
|
873
|
-
...super.toLogEntry(
|
|
899
|
+
...super.toLogEntry(ctx),
|
|
874
900
|
message: {
|
|
875
901
|
"report #": this.reportNumber,
|
|
876
902
|
"is last": this.isLast,
|
|
@@ -883,19 +909,30 @@ exports.FirmwareUpdateMetaDataCCReport = FirmwareUpdateMetaDataCCReport = __deco
|
|
|
883
909
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.Report)
|
|
884
910
|
// We send this in reply to the Get command and expect no response
|
|
885
911
|
], FirmwareUpdateMetaDataCCReport);
|
|
886
|
-
let FirmwareUpdateMetaDataCCStatusReport = class FirmwareUpdateMetaDataCCStatusReport extends FirmwareUpdateMetaDataCC {
|
|
887
|
-
constructor(
|
|
888
|
-
super(
|
|
889
|
-
|
|
890
|
-
this.status =
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
912
|
+
let FirmwareUpdateMetaDataCCStatusReport = FirmwareUpdateMetaDataCCStatusReport_1 = class FirmwareUpdateMetaDataCCStatusReport extends FirmwareUpdateMetaDataCC {
|
|
913
|
+
constructor(options) {
|
|
914
|
+
super(options);
|
|
915
|
+
// TODO: Check implementation:
|
|
916
|
+
this.status = options.status;
|
|
917
|
+
this.waitTime = options.waitTime;
|
|
918
|
+
}
|
|
919
|
+
static from(raw, ctx) {
|
|
920
|
+
(0, safe_1.validatePayload)(raw.payload.length >= 1);
|
|
921
|
+
const status = raw.payload[0];
|
|
922
|
+
let waitTime;
|
|
923
|
+
if (raw.payload.length >= 3) {
|
|
924
|
+
waitTime = raw.payload.readUInt16BE(1);
|
|
925
|
+
}
|
|
926
|
+
return new FirmwareUpdateMetaDataCCStatusReport_1({
|
|
927
|
+
nodeId: ctx.sourceNodeId,
|
|
928
|
+
status,
|
|
929
|
+
waitTime,
|
|
930
|
+
});
|
|
894
931
|
}
|
|
895
932
|
status;
|
|
896
933
|
/** The wait time in seconds before the node becomes available for communication after the update */
|
|
897
934
|
waitTime;
|
|
898
|
-
toLogEntry(
|
|
935
|
+
toLogEntry(ctx) {
|
|
899
936
|
const message = {
|
|
900
937
|
status: (0, safe_2.getEnumMemberName)(_Types_1.FirmwareUpdateStatus, this.status),
|
|
901
938
|
};
|
|
@@ -903,27 +940,47 @@ let FirmwareUpdateMetaDataCCStatusReport = class FirmwareUpdateMetaDataCCStatusR
|
|
|
903
940
|
message["wait time"] = `${this.waitTime} seconds`;
|
|
904
941
|
}
|
|
905
942
|
return {
|
|
906
|
-
...super.toLogEntry(
|
|
943
|
+
...super.toLogEntry(ctx),
|
|
907
944
|
message,
|
|
908
945
|
};
|
|
909
946
|
}
|
|
910
947
|
};
|
|
911
948
|
exports.FirmwareUpdateMetaDataCCStatusReport = FirmwareUpdateMetaDataCCStatusReport;
|
|
912
|
-
exports.FirmwareUpdateMetaDataCCStatusReport = FirmwareUpdateMetaDataCCStatusReport = __decorate([
|
|
949
|
+
exports.FirmwareUpdateMetaDataCCStatusReport = FirmwareUpdateMetaDataCCStatusReport = FirmwareUpdateMetaDataCCStatusReport_1 = __decorate([
|
|
913
950
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.StatusReport)
|
|
914
951
|
], FirmwareUpdateMetaDataCCStatusReport);
|
|
915
|
-
let FirmwareUpdateMetaDataCCActivationReport = class FirmwareUpdateMetaDataCCActivationReport extends FirmwareUpdateMetaDataCC {
|
|
916
|
-
constructor(
|
|
917
|
-
super(
|
|
918
|
-
|
|
919
|
-
this.manufacturerId =
|
|
920
|
-
this.firmwareId =
|
|
921
|
-
this.checksum =
|
|
922
|
-
this.firmwareTarget =
|
|
923
|
-
this.activationStatus =
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
952
|
+
let FirmwareUpdateMetaDataCCActivationReport = FirmwareUpdateMetaDataCCActivationReport_1 = class FirmwareUpdateMetaDataCCActivationReport extends FirmwareUpdateMetaDataCC {
|
|
953
|
+
constructor(options) {
|
|
954
|
+
super(options);
|
|
955
|
+
// TODO: Check implementation:
|
|
956
|
+
this.manufacturerId = options.manufacturerId;
|
|
957
|
+
this.firmwareId = options.firmwareId;
|
|
958
|
+
this.checksum = options.checksum;
|
|
959
|
+
this.firmwareTarget = options.firmwareTarget;
|
|
960
|
+
this.activationStatus = options.activationStatus;
|
|
961
|
+
this.hardwareVersion = options.hardwareVersion;
|
|
962
|
+
}
|
|
963
|
+
static from(raw, ctx) {
|
|
964
|
+
(0, safe_1.validatePayload)(raw.payload.length >= 8);
|
|
965
|
+
const manufacturerId = raw.payload.readUInt16BE(0);
|
|
966
|
+
const firmwareId = raw.payload.readUInt16BE(2);
|
|
967
|
+
const checksum = raw.payload.readUInt16BE(4);
|
|
968
|
+
const firmwareTarget = raw.payload[6];
|
|
969
|
+
const activationStatus = raw.payload[7];
|
|
970
|
+
let hardwareVersion;
|
|
971
|
+
if (raw.payload.length >= 9) {
|
|
972
|
+
// V5+
|
|
973
|
+
hardwareVersion = raw.payload[8];
|
|
974
|
+
}
|
|
975
|
+
return new FirmwareUpdateMetaDataCCActivationReport_1({
|
|
976
|
+
nodeId: ctx.sourceNodeId,
|
|
977
|
+
manufacturerId,
|
|
978
|
+
firmwareId,
|
|
979
|
+
checksum,
|
|
980
|
+
firmwareTarget,
|
|
981
|
+
activationStatus,
|
|
982
|
+
hardwareVersion,
|
|
983
|
+
});
|
|
927
984
|
}
|
|
928
985
|
manufacturerId;
|
|
929
986
|
firmwareId;
|
|
@@ -931,7 +988,7 @@ let FirmwareUpdateMetaDataCCActivationReport = class FirmwareUpdateMetaDataCCAct
|
|
|
931
988
|
firmwareTarget;
|
|
932
989
|
activationStatus;
|
|
933
990
|
hardwareVersion;
|
|
934
|
-
toLogEntry(
|
|
991
|
+
toLogEntry(ctx) {
|
|
935
992
|
const message = {
|
|
936
993
|
"manufacturer id": (0, safe_2.num2hex)(this.manufacturerId),
|
|
937
994
|
"firmware id": (0, safe_2.num2hex)(this.firmwareId),
|
|
@@ -943,48 +1000,46 @@ let FirmwareUpdateMetaDataCCActivationReport = class FirmwareUpdateMetaDataCCAct
|
|
|
943
1000
|
message.hardwareVersion = this.hardwareVersion;
|
|
944
1001
|
}
|
|
945
1002
|
return {
|
|
946
|
-
...super.toLogEntry(
|
|
1003
|
+
...super.toLogEntry(ctx),
|
|
947
1004
|
message,
|
|
948
1005
|
};
|
|
949
1006
|
}
|
|
950
1007
|
};
|
|
951
1008
|
exports.FirmwareUpdateMetaDataCCActivationReport = FirmwareUpdateMetaDataCCActivationReport;
|
|
952
|
-
exports.FirmwareUpdateMetaDataCCActivationReport = FirmwareUpdateMetaDataCCActivationReport = __decorate([
|
|
1009
|
+
exports.FirmwareUpdateMetaDataCCActivationReport = FirmwareUpdateMetaDataCCActivationReport = FirmwareUpdateMetaDataCCActivationReport_1 = __decorate([
|
|
953
1010
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.ActivationReport)
|
|
954
1011
|
], FirmwareUpdateMetaDataCCActivationReport);
|
|
955
1012
|
let FirmwareUpdateMetaDataCCActivationSet = class FirmwareUpdateMetaDataCCActivationSet extends FirmwareUpdateMetaDataCC {
|
|
956
|
-
constructor(
|
|
957
|
-
super(
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
1013
|
+
constructor(options) {
|
|
1014
|
+
super(options);
|
|
1015
|
+
this.manufacturerId = options.manufacturerId;
|
|
1016
|
+
this.firmwareId = options.firmwareId;
|
|
1017
|
+
this.checksum = options.checksum;
|
|
1018
|
+
this.firmwareTarget = options.firmwareTarget;
|
|
1019
|
+
this.hardwareVersion = options.hardwareVersion;
|
|
1020
|
+
}
|
|
1021
|
+
static from(_raw, _ctx) {
|
|
1022
|
+
// TODO: Deserialize payload
|
|
1023
|
+
throw new safe_1.ZWaveError(`${this.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
1024
|
+
// return new FirmwareUpdateMetaDataCCActivationSet({
|
|
1025
|
+
// nodeId: ctx.sourceNodeId,
|
|
1026
|
+
// });
|
|
969
1027
|
}
|
|
970
1028
|
manufacturerId;
|
|
971
1029
|
firmwareId;
|
|
972
1030
|
checksum;
|
|
973
1031
|
firmwareTarget;
|
|
974
1032
|
hardwareVersion;
|
|
975
|
-
serialize() {
|
|
976
|
-
|
|
977
|
-
this.payload = Buffer.allocUnsafe(7 + (isV5 ? 1 : 0));
|
|
1033
|
+
serialize(ctx) {
|
|
1034
|
+
this.payload = Buffer.allocUnsafe(8);
|
|
978
1035
|
this.payload.writeUInt16BE(this.manufacturerId, 0);
|
|
979
1036
|
this.payload.writeUInt16BE(this.firmwareId, 2);
|
|
980
1037
|
this.payload.writeUInt16BE(this.checksum, 4);
|
|
981
1038
|
this.payload[6] = this.firmwareTarget;
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
}
|
|
985
|
-
return super.serialize();
|
|
1039
|
+
this.payload[7] = this.hardwareVersion ?? 0x00;
|
|
1040
|
+
return super.serialize(ctx);
|
|
986
1041
|
}
|
|
987
|
-
toLogEntry(
|
|
1042
|
+
toLogEntry(ctx) {
|
|
988
1043
|
const message = {
|
|
989
1044
|
"manufacturer id": (0, safe_2.num2hex)(this.manufacturerId),
|
|
990
1045
|
"firmware id": (0, safe_2.num2hex)(this.firmwareId),
|
|
@@ -995,7 +1050,7 @@ let FirmwareUpdateMetaDataCCActivationSet = class FirmwareUpdateMetaDataCCActiva
|
|
|
995
1050
|
message["hardware version"] = this.hardwareVersion;
|
|
996
1051
|
}
|
|
997
1052
|
return {
|
|
998
|
-
...super.toLogEntry(
|
|
1053
|
+
...super.toLogEntry(ctx),
|
|
999
1054
|
message,
|
|
1000
1055
|
};
|
|
1001
1056
|
}
|
|
@@ -1005,18 +1060,28 @@ exports.FirmwareUpdateMetaDataCCActivationSet = FirmwareUpdateMetaDataCCActivati
|
|
|
1005
1060
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.ActivationSet),
|
|
1006
1061
|
(0, CommandClassDecorators_1.expectedCCResponse)(FirmwareUpdateMetaDataCCActivationReport)
|
|
1007
1062
|
], FirmwareUpdateMetaDataCCActivationSet);
|
|
1008
|
-
let FirmwareUpdateMetaDataCCPrepareReport = class FirmwareUpdateMetaDataCCPrepareReport extends FirmwareUpdateMetaDataCC {
|
|
1009
|
-
constructor(
|
|
1010
|
-
super(
|
|
1011
|
-
|
|
1012
|
-
this.status =
|
|
1013
|
-
this.checksum =
|
|
1063
|
+
let FirmwareUpdateMetaDataCCPrepareReport = FirmwareUpdateMetaDataCCPrepareReport_1 = class FirmwareUpdateMetaDataCCPrepareReport extends FirmwareUpdateMetaDataCC {
|
|
1064
|
+
constructor(options) {
|
|
1065
|
+
super(options);
|
|
1066
|
+
// TODO: Check implementation:
|
|
1067
|
+
this.status = options.status;
|
|
1068
|
+
this.checksum = options.checksum;
|
|
1069
|
+
}
|
|
1070
|
+
static from(raw, ctx) {
|
|
1071
|
+
(0, safe_1.validatePayload)(raw.payload.length >= 3);
|
|
1072
|
+
const status = raw.payload[0];
|
|
1073
|
+
const checksum = raw.payload.readUInt16BE(1);
|
|
1074
|
+
return new FirmwareUpdateMetaDataCCPrepareReport_1({
|
|
1075
|
+
nodeId: ctx.sourceNodeId,
|
|
1076
|
+
status,
|
|
1077
|
+
checksum,
|
|
1078
|
+
});
|
|
1014
1079
|
}
|
|
1015
1080
|
status;
|
|
1016
1081
|
checksum;
|
|
1017
|
-
toLogEntry(
|
|
1082
|
+
toLogEntry(ctx) {
|
|
1018
1083
|
return {
|
|
1019
|
-
...super.toLogEntry(
|
|
1084
|
+
...super.toLogEntry(ctx),
|
|
1020
1085
|
message: {
|
|
1021
1086
|
status: (0, safe_2.getEnumMemberName)(_Types_1.FirmwareDownloadStatus, this.status),
|
|
1022
1087
|
checksum: (0, safe_2.num2hex)(this.checksum),
|
|
@@ -1025,41 +1090,42 @@ let FirmwareUpdateMetaDataCCPrepareReport = class FirmwareUpdateMetaDataCCPrepar
|
|
|
1025
1090
|
}
|
|
1026
1091
|
};
|
|
1027
1092
|
exports.FirmwareUpdateMetaDataCCPrepareReport = FirmwareUpdateMetaDataCCPrepareReport;
|
|
1028
|
-
exports.FirmwareUpdateMetaDataCCPrepareReport = FirmwareUpdateMetaDataCCPrepareReport = __decorate([
|
|
1093
|
+
exports.FirmwareUpdateMetaDataCCPrepareReport = FirmwareUpdateMetaDataCCPrepareReport = FirmwareUpdateMetaDataCCPrepareReport_1 = __decorate([
|
|
1029
1094
|
(0, CommandClassDecorators_1.CCCommand)(_Types_1.FirmwareUpdateMetaDataCommand.PrepareReport)
|
|
1030
1095
|
], FirmwareUpdateMetaDataCCPrepareReport);
|
|
1031
1096
|
let FirmwareUpdateMetaDataCCPrepareGet = class FirmwareUpdateMetaDataCCPrepareGet extends FirmwareUpdateMetaDataCC {
|
|
1032
|
-
constructor(
|
|
1033
|
-
super(
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1097
|
+
constructor(options) {
|
|
1098
|
+
super(options);
|
|
1099
|
+
this.manufacturerId = options.manufacturerId;
|
|
1100
|
+
this.firmwareId = options.firmwareId;
|
|
1101
|
+
this.firmwareTarget = options.firmwareTarget;
|
|
1102
|
+
this.fragmentSize = options.fragmentSize;
|
|
1103
|
+
this.hardwareVersion = options.hardwareVersion;
|
|
1104
|
+
}
|
|
1105
|
+
static from(_raw, _ctx) {
|
|
1106
|
+
// TODO: Deserialize payload
|
|
1107
|
+
throw new safe_1.ZWaveError(`${this.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
1108
|
+
// return new FirmwareUpdateMetaDataCCPrepareGet({
|
|
1109
|
+
// nodeId: ctx.sourceNodeId,
|
|
1110
|
+
// });
|
|
1045
1111
|
}
|
|
1046
1112
|
manufacturerId;
|
|
1047
1113
|
firmwareId;
|
|
1048
1114
|
firmwareTarget;
|
|
1049
1115
|
fragmentSize;
|
|
1050
1116
|
hardwareVersion;
|
|
1051
|
-
serialize() {
|
|
1117
|
+
serialize(ctx) {
|
|
1052
1118
|
this.payload = Buffer.allocUnsafe(8);
|
|
1053
1119
|
this.payload.writeUInt16BE(this.manufacturerId, 0);
|
|
1054
1120
|
this.payload.writeUInt16BE(this.firmwareId, 2);
|
|
1055
1121
|
this.payload[4] = this.firmwareTarget;
|
|
1056
1122
|
this.payload.writeUInt16BE(this.fragmentSize, 5);
|
|
1057
1123
|
this.payload[7] = this.hardwareVersion;
|
|
1058
|
-
return super.serialize();
|
|
1124
|
+
return super.serialize(ctx);
|
|
1059
1125
|
}
|
|
1060
|
-
toLogEntry(
|
|
1126
|
+
toLogEntry(ctx) {
|
|
1061
1127
|
return {
|
|
1062
|
-
...super.toLogEntry(
|
|
1128
|
+
...super.toLogEntry(ctx),
|
|
1063
1129
|
message: {
|
|
1064
1130
|
"manufacturer id": (0, safe_2.num2hex)(this.manufacturerId),
|
|
1065
1131
|
"firmware id": (0, safe_2.num2hex)(this.firmwareId),
|