Skip to content

Commit

Permalink
fix: Set zigbee-herdsman transmit power through settings on startup
Browse files Browse the repository at this point in the history
  • Loading branch information
Koenkk committed Aug 8, 2024
1 parent aeba93d commit d1ce649
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 15 deletions.
8 changes: 1 addition & 7 deletions lib/zigbee.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ export default class Zigbee {
concurrent: settings.get().advanced.adapter_concurrent,
delay: settings.get().advanced.adapter_delay,
disableLED: settings.get().serial.disable_led,
transmitPower: settings.get().advanced.transmit_power,
},
acceptJoiningDeviceHandler: this.acceptJoiningDeviceHandler,
};
Expand Down Expand Up @@ -147,13 +148,6 @@ export default class Zigbee {
}
}

// Check if we have to set a transmit power
if (settings.get().advanced.transmit_power != null) {
const transmitPower = settings.get().advanced.transmit_power;
await this.herdsman.setTransmitPower(transmitPower);
logger.info(`Set transmit power to '${transmitPower}'`);
}

return startResult;
}

Expand Down
10 changes: 2 additions & 8 deletions test/controller.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ describe('Controller', () => {
});

it('Start controller', async () => {
settings.set(['experimental', 'transmit_power'], 14);
await controller.start();
expect(zigbeeHerdsman.constructor).toHaveBeenCalledWith({
network: {
Expand All @@ -78,7 +79,7 @@ describe('Controller', () => {
databaseBackupPath: path.join(data.mockDir, 'database.db.backup'),
backupPath: path.join(data.mockDir, 'coordinator_backup.json'),
acceptJoiningDeviceHandler: expect.any(Function),
adapter: {concurrent: null, delay: null, disableLED: false},
adapter: {concurrent: null, delay: null, disableLED: false, transmitPower: 14},
serialPort: {baudRate: undefined, rtscts: undefined, path: '/dev/dummy'},
});
expect(zigbeeHerdsman.start).toHaveBeenCalledTimes(1);
Expand Down Expand Up @@ -289,13 +290,6 @@ describe('Controller', () => {
expect(zigbeeHerdsman.permitJoin).toHaveBeenCalledWith(false, undefined, undefined);
});

it('Start controller with transmit power', async () => {
settings.set(['experimental', 'transmit_power'], 14);
await controller.start();
expect(zigbeeHerdsman.setTransmitPower).toHaveBeenCalledTimes(1);
expect(zigbeeHerdsman.setTransmitPower).toHaveBeenCalledWith(14);
});

it('Start controller and stop with restart', async () => {
await controller.start();
await controller.stop(true);
Expand Down

0 comments on commit d1ce649

Please sign in to comment.