homebridge-plejd 1.4.5 → 1.4.7

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ #### 1.4.7 (2024-08-13)
2
+
3
+ Check support for HB 2.0. Added more retry if device has not proppely disconnected yet.
4
+
5
+ #### 1.4.6 (2024-07-09)
6
+
7
+ Fix for unknown device from Noble. I have yet to re-produce the error in my development environment.
8
+
9
+ #### 1.4.5 (2024-07-09)
10
+
11
+ Add hard reset to noble on disconnect.
12
+
1
13
  #### 1.4.4 (2024-07-09)
2
14
 
3
15
  Enable lower level reset on disconnect & add timeout ms.
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Device } from './device';
3
2
  export interface UserInputConfig {
4
3
  devices: Device[];
@@ -1,5 +1,5 @@
1
- import { Logger } from 'homebridge';
2
- import { UserInputConfig } from './model/userInputConfig.js';
1
+ import { Logger } from "homebridge";
2
+ import { UserInputConfig } from "./model/userInputConfig.js";
3
3
  export declare class PlejdService {
4
4
  private readonly config;
5
5
  readonly log: Logger;
@@ -1,8 +1,8 @@
1
- import { plejdChalResp as plejdCharResp, plejdEncodeDecode, reverseBuffer, } from './plejdUtils.js';
2
- import { randomBytes } from 'crypto';
3
- import noble from '@abandonware/noble';
4
- import { PLEJD_PING_TIMEOUT, PLEJD_WRITE_TIMEOUT } from './settings.js';
5
- import { delay } from './utils.js';
1
+ import { plejdChalResp as plejdCharResp, plejdEncodeDecode, reverseBuffer, } from "./plejdUtils.js";
2
+ import { randomBytes } from "crypto";
3
+ import noble from "@abandonware/noble";
4
+ import { PLEJD_PING_TIMEOUT, PLEJD_WRITE_TIMEOUT } from "./settings.js";
5
+ import { delay } from "./utils.js";
6
6
  /**
7
7
  * Plejd BLE UUIDs
8
8
  */
@@ -53,30 +53,32 @@ export class PlejdService {
53
53
  return;
54
54
  }
55
55
  const payload = Buffer.from(!brightness || brightness === 0
56
- ? identifier.toString(16).padStart(2, '0') +
56
+ ? identifier.toString(16).padStart(2, "0") +
57
57
  PlejdCommand.RequestNoResponse +
58
58
  PlejdCommand.OnOffState +
59
- (isOn ? '01' : '00')
60
- : identifier.toString(16).padStart(2, '0') +
59
+ (isOn ? "01" : "00")
60
+ : identifier.toString(16).padStart(2, "0") +
61
61
  PlejdCommand.RequestNoResponse +
62
62
  PlejdCommand.Brightness +
63
- '01' +
63
+ "01" +
64
64
  Math.round(2.55 * brightness)
65
65
  .toString(16)
66
- .padStart(4, '0'), 'hex');
66
+ .padStart(4, "0"), "hex");
67
67
  const data = plejdEncodeDecode(this.config.cryptoKey, this.addressBuffer, payload);
68
68
  this.sendToDeviceQueued(data);
69
69
  };
70
70
  configureBLE = () => {
71
- noble.on('stateChange', async (state) => {
71
+ noble.on("stateChange", async (state) => {
72
72
  this.log.debug(`Noble State changed: ${state}`);
73
- if (state === 'poweredOn') {
74
- this.log.info('Scanning for Plejd devices as we started...');
73
+ if (state === "poweredOn") {
74
+ this.log.info("Scanning for Plejd devices as we started...");
75
75
  await noble.startScanningAsync([PlejdCharacteristics.Service], false);
76
76
  }
77
77
  });
78
- noble.on('warning', (msg) => this.log.warn('Noble warning: ', msg));
79
- noble.on('discover', async (peripheral) => await this.onDiscover(peripheral));
78
+ noble.on("warning", (msg) => {
79
+ this.log.warn("Noble warning: ", msg);
80
+ });
81
+ noble.on("discover", async (peripheral) => await this.onDiscover(peripheral));
80
82
  };
81
83
  // -------------- Private -------------- \\
82
84
  onDiscover = async (peripheral) => {
@@ -84,24 +86,29 @@ export class PlejdService {
84
86
  await noble.stopScanningAsync();
85
87
  try {
86
88
  await peripheral.connectAsync();
89
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
87
90
  }
88
91
  catch (error) {
92
+ if (error.toString().includes("Peripheral already connected")) {
93
+ await peripheral?.disconnectAsync();
94
+ await this.onDiscover(peripheral);
95
+ return;
96
+ }
89
97
  this.log.error(`Connecting failed | ${peripheral.advertisement.localName} | addr: ${peripheral.address}) - err: ${error}`);
90
98
  return;
91
99
  }
92
- this.connectedPeripheral = peripheral;
93
- peripheral.once('disconnect', async () => {
94
- this.log.info('Disconnected from mesh');
100
+ this.connectedPeripheral = peripheral.once("disconnect", async () => {
101
+ this.log.info("Disconnected from mesh");
95
102
  noble.reset();
96
- if (noble._state === 'poweredOn') {
97
- this.log.info('Scanning for Plejd devices as we are disconnected from mesh...');
103
+ if (noble._state === "poweredOn") {
104
+ this.log.info("Scanning for Plejd devices as we are disconnected from mesh...");
98
105
  await noble.startScanningAsync([PlejdCharacteristics.Service], false);
99
106
  }
100
107
  });
101
108
  const characteristics = await this.discoverCaracteristics(peripheral);
102
109
  if (!characteristics) {
103
- this.log.error('Failed to discover characteristics, disconnecting...');
104
- if (peripheral.state === 'connected') {
110
+ this.log.error("Failed to discover characteristics, disconnecting...");
111
+ if (peripheral.state === "connected") {
105
112
  await peripheral.disconnectAsync();
106
113
  }
107
114
  return;
@@ -112,7 +119,7 @@ export class PlejdService {
112
119
  discoverCaracteristics = async (peripheral) => {
113
120
  const addr = peripheral.address;
114
121
  this.log.info(`Connected to mesh | ${peripheral.advertisement.localName} (addr: ${addr})`);
115
- this.addressBuffer = reverseBuffer(Buffer.from(String(addr).replace(/:/g, ''), 'hex'));
122
+ this.addressBuffer = reverseBuffer(Buffer.from(String(addr).replace(/:/g, ""), "hex"));
116
123
  const services = [PlejdCharacteristics.Service];
117
124
  const characteristicIds = [
118
125
  PlejdCharacteristics.Data,
@@ -135,7 +142,7 @@ export class PlejdService {
135
142
  this.dataCharacteristic =
136
143
  peripheral?.services[0]?.characteristics?.find((char) => char.uuid === PlejdCharacteristics.Data) ?? null;
137
144
  if (!authChar || !lastDataChar || !pingChar) {
138
- this.log.error('Unable to extract characteristic during discovery', authChar, lastDataChar, pingChar);
145
+ this.log.error("Unable to extract characteristic during discovery", authChar, lastDataChar, pingChar);
139
146
  return;
140
147
  }
141
148
  await this.authenticate(authChar);
@@ -155,12 +162,12 @@ export class PlejdService {
155
162
  if (!data) {
156
163
  return;
157
164
  }
158
- this.log.debug(`BLE command sent to ${this.addressBuffer?.toString('hex') ?? 'Unknown'} | ${data.length} bytes | ${data.toString('hex')}`);
165
+ this.log.debug(`BLE command sent to ${this.addressBuffer?.toString("hex") ?? "Unknown"} | ${data.length} bytes | ${data.toString("hex")}`);
159
166
  try {
160
167
  await this.dataCharacteristic.writeAsync(data, false);
161
168
  }
162
169
  catch (error) {
163
- this.log.error('Failed to send data to device, will retry: ', error);
170
+ this.log.error("Failed to send data to device, will retry: ", error);
164
171
  this.sendQueue.unshift(data);
165
172
  return;
166
173
  }
@@ -174,44 +181,46 @@ export class PlejdService {
174
181
  pingChar.writeAsync(ping, false);
175
182
  const pong = await pingChar.readAsync();
176
183
  if (((ping[0] + 1) & 0xff) !== pong[0]) {
177
- this.log.error('Ping pong communication failed, missing pong response');
184
+ this.log.error("Ping pong communication failed, missing pong response");
178
185
  }
179
186
  await delay(PLEJD_PING_TIMEOUT);
180
187
  }
181
188
  catch (error) {
182
- this.log.warn('Ping failed, device disconnected, will retry to connect to mesh: ', error);
189
+ this.log.warn("Ping failed, device disconnected, will retry to connect to mesh: ", error);
183
190
  }
184
191
  }
185
192
  };
186
193
  handleNotification = async (data, isNotification) => {
187
- if (!this.connected() || !this.addressBuffer || this.addressBuffer?.byteLength === 0) {
194
+ if (!this.connected() ||
195
+ !this.addressBuffer ||
196
+ this.addressBuffer?.byteLength === 0) {
188
197
  return;
189
198
  }
190
199
  const decodedData = plejdEncodeDecode(this.config.cryptoKey, this.addressBuffer, data);
191
200
  const id = parseInt(decodedData[0].toString(), 10);
192
- const command = decodedData.toString('hex', 3, 5);
193
- const isOn = parseInt(decodedData.toString('hex', 5, 6), 10) === 1;
201
+ const command = decodedData.toString("hex", 3, 5);
202
+ const isOn = parseInt(decodedData.toString("hex", 5, 6), 10) === 1;
194
203
  const commandType = Object.values(PlejdCommand).find((x) => x.toString() === command) ??
195
- 'Unknown';
204
+ "Unknown";
196
205
  const d = {
197
206
  id: id,
198
207
  command: command,
199
208
  commandType: commandType,
200
209
  on: isOn,
201
210
  Notification: isNotification,
202
- payload: decodedData.toString('hex'),
211
+ payload: decodedData.toString("hex"),
203
212
  };
204
- this.log.debug('Handle BLE notification', d);
213
+ this.log.debug("Handle BLE notification", d);
205
214
  switch (command) {
206
215
  case PlejdCommand.Time: {
207
- const arg = parseInt(reverseBuffer(decodedData.subarray(5, 9)).toString('hex'), 16);
216
+ const arg = parseInt(reverseBuffer(decodedData.subarray(5, 9)).toString("hex"), 16);
208
217
  const date = new Date(arg * 1000);
209
- this.log.debug('Time sync: ' + date.toString());
218
+ this.log.debug("Time sync: " + date.toString());
210
219
  break;
211
220
  }
212
221
  case PlejdCommand.Brightness:
213
222
  case PlejdCommand.StateBrightness: {
214
- const dim = parseInt(decodedData.toString('hex', 7, 8), 16);
223
+ const dim = parseInt(decodedData.toString("hex", 7, 8), 16);
215
224
  // Convert to Homebridge 1-100
216
225
  const converted = dim === 0 ? 1 : (100 / 255) * dim;
217
226
  this.onUpdate(id, isOn, converted);
@@ -228,14 +237,14 @@ export class PlejdService {
228
237
  }
229
238
  default: {
230
239
  this.onUpdate(id, isOn);
231
- this.log.warn(`Unknown | command: ${command} | id: ${id} | ${decodedData.toString('hex')}`);
240
+ this.log.warn(`Unknown | command: ${command} | id: ${id} | ${decodedData.toString("hex")}`);
232
241
  }
233
242
  }
234
243
  };
235
244
  setupCommunication = async (pingChar, lastDataChar) => {
236
245
  this.startPlejdPing(pingChar);
237
246
  await lastDataChar.subscribeAsync();
238
- lastDataChar.on('data', async (data, isNotification) => {
247
+ lastDataChar.on("data", async (data, isNotification) => {
239
248
  if (!this.connected()) {
240
249
  await lastDataChar.unsubscribeAsync();
241
250
  return;
@@ -248,6 +257,6 @@ export class PlejdService {
248
257
  const data = await authChar.readAsync();
249
258
  await authChar.writeAsync(plejdCharResp(this.config.cryptoKey, data), false);
250
259
  };
251
- connected = () => this.connectedPeripheral?.state === 'connected';
260
+ connected = () => this.connectedPeripheral && this.connectedPeripheral.state === "connected";
252
261
  }
253
262
  //# sourceMappingURL=plejdService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plejdService.js","sourceRoot":"","sources":["../src/plejdService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plejdService.js","sourceRoot":"","sources":["../src/plejdService.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  export declare const plejdChalResp: (key: Buffer, chal: Buffer) => Buffer;
3
2
  export declare const plejdEncodeDecode: (key: Buffer, addressBuffer: Buffer, data: Buffer) => Buffer;
4
3
  export declare const reverseBuffer: (src: Buffer) => Buffer;
@@ -0,0 +1,11 @@
1
+ import globals from "globals";
2
+ import pluginJs from "@eslint/js";
3
+ import tseslint from "typescript-eslint";
4
+
5
+
6
+ export default [
7
+ {files: ["**/*.{js,mjs,cjs,ts}"]},
8
+ {languageOptions: { globals: globals.browser }},
9
+ pluginJs.configs.recommended,
10
+ ...tseslint.configs.recommended,
11
+ ];
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "displayName": "Plejd",
4
4
  "name": "homebridge-plejd",
5
5
  "author": "Herlix",
6
- "version": "1.4.5",
6
+ "version": "1.4.7",
7
7
  "description": "HomeKit support for the Plejd BLE platform using Homebridge",
8
8
  "license": "Apache-2.0",
9
9
  "type": "module",
@@ -15,8 +15,8 @@
15
15
  "url": "https://github.com/Herlix/homebridge-plejd/issues"
16
16
  },
17
17
  "engines": {
18
- "node": "^18.17.0 || ^20.9.0",
19
- "homebridge": "^1.8.0"
18
+ "node": ">=18.20.4",
19
+ "homebridge": "^1.8.0 || ^2.0.0-beta.0"
20
20
  },
21
21
  "main": "dist/index.js",
22
22
  "scripts": {
@@ -25,20 +25,28 @@
25
25
  "build": "rimraf ./dist && tsc",
26
26
  "prepublishOnly": "npm run lint && npm run build"
27
27
  },
28
- "keywords": ["homebridge-plugin", "plejd"],
28
+ "keywords": [
29
+ "homebridge-plugin",
30
+ "plejd"
31
+ ],
29
32
  "dependencies": {
30
33
  "@abandonware/noble": "^1.9.2-25"
31
34
  },
32
35
  "devDependencies": {
36
+ "@eslint/js": "^9.9.0",
37
+ "@types/eslint": "^9.6.0",
33
38
  "@types/noble": "^0.0.44",
34
- "@types/node": "^20.12.13",
35
- "@typescript-eslint/eslint-plugin": "^7.11.0",
36
- "@typescript-eslint/parser": "^7.11.0",
37
- "eslint": "^8.57.0",
38
- "homebridge": "^1.8.2",
39
- "nodemon": "^3.1.2",
40
- "rimraf": "^5.0.7",
39
+ "@types/node": "^22.2.0",
40
+ "@typescript-eslint/eslint-plugin": "^8.1.0",
41
+ "@typescript-eslint/parser": "^8.1.0",
42
+ "eslint": "^9.9.0",
43
+ "eslint-config-prettier": "^9.1.0",
44
+ "globals": "^15.9.0",
45
+ "homebridge": "^1.8.4",
46
+ "nodemon": "^3.1.4",
47
+ "rimraf": "^6.0.1",
41
48
  "ts-node": "^10.9.2",
42
- "typescript": "^5.4.5"
49
+ "typescript": "^5.5.4",
50
+ "typescript-eslint": "^8.1.0"
43
51
  }
44
52
  }