From 7b13b2d213ef7db1e36c2dea97e0b40e94d38579 Mon Sep 17 00:00:00 2001 From: Koen Kanters Date: Mon, 7 Jun 2021 09:54:33 +0200 Subject: [PATCH] Improve 0401a13d5d4f813c95b6728fc4599fc7db6eb400 --- lib/controller.js | 10 +++++++++- lib/zigbee.js | 8 ++------ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/lib/controller.js b/lib/controller.js index 91c20b49..98ffaecc 100644 --- a/lib/controller.js +++ b/lib/controller.js @@ -100,8 +100,9 @@ class Controller { logger.info(`Starting Zigbee2MQTT version ${info.version} (commit #${info.commitHash})`); // Start zigbee + let startResult; try { - await this.zigbee.start(); + startResult = await this.zigbee.start(); this.callExtensionMethod('onZigbeeStarted', []); this.zigbee.on('event', this.onZigbeeEvent.bind(this)); this.zigbee.on('adapterDisconnected', this.onZigbeeAdapterDisconnected); @@ -114,6 +115,13 @@ class Controller { this.exitCallback(1); } + // Disable some legacy options on new network creation + if (startResult === 'reset') { + settings.set(['advanced', 'legacy_api'], false); + settings.set(['device_options', 'legacy'], false); + this.enableDisableExtension(false, 'BridgeLegacy'); + } + // Log zigbee clients on startup const devices = this.zigbee.getClients(); logger.info(`Currently ${devices.length} devices are joined:`); diff --git a/lib/zigbee.js b/lib/zigbee.js index 0777761c..2c55b0cf 100644 --- a/lib/zigbee.js +++ b/lib/zigbee.js @@ -84,12 +84,6 @@ class Zigbee extends events.EventEmitter { logger.info(`Coordinator firmware version: '${stringify(await this.getCoordinatorVersion())}'`); logger.debug(`Zigbee network parameters: ${stringify(await this.herdsman.getNetworkParameters())}`); - // Disable some legacy options on new network creation - if (startResult === 'reset') { - settings.set(['advanced', 'legacy_api'], false); - settings.set(['device_options', 'legacy'], false); - } - for (const device of this.getClients()) { // If a passlist is used, all other device will be removed from the network. const passlist = settings.get().passlist.concat(settings.get().whitelist); @@ -116,6 +110,8 @@ class Zigbee extends events.EventEmitter { await this.herdsman.setTransmitPower(transmitPower); logger.info(`Set transmit power to '${transmitPower}'`); } + + return startResult; } async getCoordinatorVersion() {