@matter/nodejs-ble 0.17.7 → 0.17.8-alpha.0-20260801-ec23e2d27

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.
@@ -1 +1 @@
1
- {"version":3,"file":"NobleBleChannel.d.ts","sourceRoot":"","sources":["../../src/NobleBleChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,OAAO,EACP,WAAW,EAMX,aAAa,EAGb,SAAS,EAGZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACH,UAAU,EAKV,iBAAiB,EAEpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAoD7C,qBAAa,wBAAyB,YAAW,SAAS;;IAQtD,YAAY,UAAU,EAAE,UAAU,EAEjC;IAED,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAEpG;IAqVD,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,SAAS,CAAC,QAAQ,CAKlF;IAEK,KAAK,kBAWV;IAED,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,WAK5C;CACJ;AAED,qBAAa,eAAgB,SAAQ,UAAU,CAAC,KAAK,CAAC;;IA6J9C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IA7J/B,OAAa,MAAM,CACf,UAAU,EAAE,UAAU,EACtB,wBAAwB,EAAE,cAAc,EACxC,4BAA4B,EAAE,cAAc,EAC5C,uBAAuB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,EACtE,mCAAmC,CAAC,EAAE,KAAK,GAC5C,OAAO,CAAC,eAAe,CAAC,CA2I1B;IAUD,YACqB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,iBAAiB,EAC9C,mBAAmB,EAAE,MAAM,IAAI,EAmBlC;IAED,IAAI,SAAS,YAEZ;IAED;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,KAAK,iBAYrB;IAGD,IAAI,IAAI,WAEP;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAOhD;IAED,6EAA6E;IAC7E,WAAW,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI,CAQhC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAc7C;IAUK,KAAK,kBAYV;CACJ"}
1
+ {"version":3,"file":"NobleBleChannel.d.ts","sourceRoot":"","sources":["../../src/NobleBleChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,OAAO,EACP,WAAW,EAMX,aAAa,EAGb,SAAS,EAGZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACH,UAAU,EAKV,iBAAiB,EAEpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAqD7C,qBAAa,wBAAyB,YAAW,SAAS;;IAQtD,YAAY,UAAU,EAAE,UAAU,EAEjC;IAED,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAEpG;IAuVD,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,SAAS,CAAC,QAAQ,CAKlF;IAEK,KAAK,kBAWV;IAED,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,WAK5C;CACJ;AAED,qBAAa,eAAgB,SAAQ,UAAU,CAAC,KAAK,CAAC;;IA6J9C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IA7J/B,OAAa,MAAM,CACf,UAAU,EAAE,UAAU,EACtB,wBAAwB,EAAE,cAAc,EACxC,4BAA4B,EAAE,cAAc,EAC5C,uBAAuB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,EACtE,mCAAmC,CAAC,EAAE,KAAK,GAC5C,OAAO,CAAC,eAAe,CAAC,CA2I1B;IAUD,YACqB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,iBAAiB,EAC9C,mBAAmB,EAAE,MAAM,IAAI,EAqBlC;IAED,IAAI,SAAS,YAEZ;IAED;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,KAAK,iBAYrB;IAGD,IAAI,IAAI,WAEP;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAOhD;IAED,6EAA6E;IAC7E,WAAW,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI,CAQhC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAc7C;IAUK,KAAK,kBAYV;CACJ"}
@@ -24,6 +24,7 @@ __export(NobleBleChannel_exports, {
24
24
  module.exports = __toCommonJS(NobleBleChannel_exports);
25
25
  var import_general = require("@matter/general");
26
26
  var import_protocol = require("@matter/protocol");
27
+ var import_NobleBleClient = require("./NobleBleClient.js");
27
28
  /**
28
29
  * @license
29
30
  * Copyright 2022-2026 Matter.js Authors
@@ -168,18 +169,20 @@ class NobleBleCentralInterface {
168
169
  disconnectTimeout?.stop();
169
170
  this.#connectionGuards.delete(connectionGuard);
170
171
  };
171
- const reTryHandler = (error) => {
172
+ const reTryHandler = (errorOrReason) => {
172
173
  clearConnectionGuard();
173
174
  this.#connectionsInProgress.delete(peripheralAddress);
174
175
  peripheral.removeListener("connect", connectListener);
175
176
  peripheral.removeListener("disconnect", reTryHandler);
176
- if (error) {
177
+ if (errorOrReason instanceof Error) {
177
178
  logger.info(
178
179
  `Peripheral ${peripheralAddress} disconnected while trying to connect, try again`,
179
- error
180
+ errorOrReason
180
181
  );
181
182
  } else {
182
- logger.info(`Peripheral ${peripheralAddress} disconnected while trying to connect, try again`);
183
+ logger.info(
184
+ `Peripheral ${peripheralAddress} disconnected while trying to connect (reason ${(0, import_NobleBleClient.nobleDisconnectReason)(errorOrReason)}), try again`
185
+ );
183
186
  }
184
187
  this.#openChannel(address, tryCount + 1).then(resolveOnce).catch(rejectOnce);
185
188
  };
@@ -378,8 +381,10 @@ class NobleBleChannel extends import_protocol.BleChannel {
378
381
  this.peripheral = peripheral;
379
382
  this.btpSession = btpSession;
380
383
  this.#cleanupDataListener = cleanupDataListener;
381
- peripheral.once("disconnect", () => {
382
- logger.debug(`Disconnected from peripheral ${peripheral.address}. Closing BTP session`);
384
+ peripheral.once("disconnect", (reason) => {
385
+ logger.debug(
386
+ `Disconnected from peripheral ${peripheral.address} (reason ${(0, import_NobleBleClient.nobleDisconnectReason)(reason)}). Closing BTP session`
387
+ );
383
388
  this.#connected = false;
384
389
  this.#cleanupDataListener();
385
390
  this.#terminateIterator();
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/NobleBleChannel.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["error"]
6
6
  }
@@ -6,6 +6,11 @@
6
6
  import { Bytes, Diagnostic } from "@matter/general";
7
7
  import type { Peripheral } from "@stoprocent/noble";
8
8
  import { BleOptions } from "./NodeJsBle.js";
9
+ /**
10
+ * Render a noble disconnect reason. Linux HCI bindings report a numeric controller status, other bindings a
11
+ * descriptive string.
12
+ */
13
+ export declare function nobleDisconnectReason(reason: unknown): string;
9
14
  export declare class NobleBleClient {
10
15
  #private;
11
16
  [Diagnostic.name]: string;
@@ -1 +1 @@
1
- {"version":3,"file":"NobleBleClient.d.ts","sourceRoot":"","sources":["../../src/NobleBleClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAyB,MAAM,iBAAiB,CAAC;AAG3E,OAAO,KAAK,EAAS,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAkB5C,qBAAa,cAAc;;IAuJvB,CAAC,UAAU,CAAC,IAAI,CAAC;IAtJjB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA2E;IACjH,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,wBAAwB,CAA0E;IAG1G,YAAY,OAAO,CAAC,EAAE,UAAU,EAmC/B;IAEM,oBAAoB,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,KAAK,IAAI,QAK9F;IAEY,aAAa,kBAYzB;IAEY,YAAY,kBAOxB;IAED,OAAO,CAAC,sBAAsB;IAuC9B,KAAK,SAmCJ;CAGJ"}
1
+ {"version":3,"file":"NobleBleClient.d.ts","sourceRoot":"","sources":["../../src/NobleBleClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAyB,MAAM,iBAAiB,CAAC;AAG3E,OAAO,KAAK,EAAS,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAqB5C;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,UAKpD;AAED,qBAAa,cAAc;;IAuJvB,CAAC,UAAU,CAAC,IAAI,CAAC;IAtJjB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA2E;IACjH,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,wBAAwB,CAA0E;IAG1G,YAAY,OAAO,CAAC,EAAE,UAAU,EAmC/B;IAEM,oBAAoB,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,KAAK,IAAI,QAK9F;IAEY,aAAa,kBAYzB;IAEY,YAAY,kBAOxB;IAED,OAAO,CAAC,sBAAsB;IAuC9B,KAAK,SAmCJ;CAGJ"}
@@ -18,7 +18,8 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var NobleBleClient_exports = {};
20
20
  __export(NobleBleClient_exports, {
21
- NobleBleClient: () => NobleBleClient
21
+ NobleBleClient: () => NobleBleClient,
22
+ nobleDisconnectReason: () => nobleDisconnectReason
22
23
  });
23
24
  module.exports = __toCommonJS(NobleBleClient_exports);
24
25
  var import_general = require("@matter/general");
@@ -32,15 +33,24 @@ var import_node_process = require("node:process");
32
33
  */
33
34
  const logger = import_general.Logger.get("NobleBleClient");
34
35
  let noble;
36
+ let hciStatusMessage;
35
37
  function loadNoble(hciId) {
36
38
  if (hciId !== void 0) {
37
39
  process.env.NOBLE_HCI_DEVICE_ID = hciId.toString();
38
40
  }
39
- noble = (0, import_require.require)("@stoprocent/noble");
41
+ const nobleExports = (0, import_require.require)("@stoprocent/noble");
42
+ hciStatusMessage = nobleExports.hciStatusMessage;
43
+ noble = nobleExports;
40
44
  if (typeof noble.on !== "function") {
41
- noble = noble({ extended: false });
45
+ noble = nobleExports({ extended: false });
42
46
  }
43
47
  }
48
+ function nobleDisconnectReason(reason) {
49
+ if (typeof reason === "number") {
50
+ return `0x${reason.toString(16).padStart(2, "0")} (${hciStatusMessage(reason)})`;
51
+ }
52
+ return reason === void 0 ? "unknown" : String(reason);
53
+ }
44
54
  class NobleBleClient {
45
55
  discoveredPeripherals = /* @__PURE__ */ new Map();
46
56
  shouldScan = false;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/NobleBleClient.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NobleBleChannel.d.ts","sourceRoot":"","sources":["../../src/NobleBleChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,OAAO,EACP,WAAW,EAMX,aAAa,EAGb,SAAS,EAGZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACH,UAAU,EAKV,iBAAiB,EAEpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAoD7C,qBAAa,wBAAyB,YAAW,SAAS;;IAQtD,YAAY,UAAU,EAAE,UAAU,EAEjC;IAED,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAEpG;IAqVD,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,SAAS,CAAC,QAAQ,CAKlF;IAEK,KAAK,kBAWV;IAED,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,WAK5C;CACJ;AAED,qBAAa,eAAgB,SAAQ,UAAU,CAAC,KAAK,CAAC;;IA6J9C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IA7J/B,OAAa,MAAM,CACf,UAAU,EAAE,UAAU,EACtB,wBAAwB,EAAE,cAAc,EACxC,4BAA4B,EAAE,cAAc,EAC5C,uBAAuB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,EACtE,mCAAmC,CAAC,EAAE,KAAK,GAC5C,OAAO,CAAC,eAAe,CAAC,CA2I1B;IAUD,YACqB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,iBAAiB,EAC9C,mBAAmB,EAAE,MAAM,IAAI,EAmBlC;IAED,IAAI,SAAS,YAEZ;IAED;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,KAAK,iBAYrB;IAGD,IAAI,IAAI,WAEP;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAOhD;IAED,6EAA6E;IAC7E,WAAW,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI,CAQhC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAc7C;IAUK,KAAK,kBAYV;CACJ"}
1
+ {"version":3,"file":"NobleBleChannel.d.ts","sourceRoot":"","sources":["../../src/NobleBleChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,OAAO,EACP,WAAW,EAMX,aAAa,EAGb,SAAS,EAGZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACH,UAAU,EAKV,iBAAiB,EAEpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAqD7C,qBAAa,wBAAyB,YAAW,SAAS;;IAQtD,YAAY,UAAU,EAAE,UAAU,EAEjC;IAED,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAEpG;IAuVD,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,SAAS,CAAC,QAAQ,CAKlF;IAEK,KAAK,kBAWV;IAED,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,WAK5C;CACJ;AAED,qBAAa,eAAgB,SAAQ,UAAU,CAAC,KAAK,CAAC;;IA6J9C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IA7J/B,OAAa,MAAM,CACf,UAAU,EAAE,UAAU,EACtB,wBAAwB,EAAE,cAAc,EACxC,4BAA4B,EAAE,cAAc,EAC5C,uBAAuB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,EACtE,mCAAmC,CAAC,EAAE,KAAK,GAC5C,OAAO,CAAC,eAAe,CAAC,CA2I1B;IAUD,YACqB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,iBAAiB,EAC9C,mBAAmB,EAAE,MAAM,IAAI,EAqBlC;IAED,IAAI,SAAS,YAEZ;IAED;;;;OAIG;IACG,IAAI,CAAC,IAAI,EAAE,KAAK,iBAYrB;IAGD,IAAI,IAAI,WAEP;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAOhD;IAED,6EAA6E;IAC7E,WAAW,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI,CAQhC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAc7C;IAUK,KAAK,kBAYV;CACJ"}
@@ -25,6 +25,7 @@ import {
25
25
  BtpSessionHandler,
26
26
  MatterBle
27
27
  } from "@matter/protocol";
28
+ import { nobleDisconnectReason } from "./NobleBleClient.js";
28
29
  const logger = Logger.get("BleChannel");
29
30
  function isNobleDisconnectError(error) {
30
31
  if (!(error instanceof Error)) {
@@ -164,18 +165,20 @@ class NobleBleCentralInterface {
164
165
  disconnectTimeout?.stop();
165
166
  this.#connectionGuards.delete(connectionGuard);
166
167
  };
167
- const reTryHandler = (error) => {
168
+ const reTryHandler = (errorOrReason) => {
168
169
  clearConnectionGuard();
169
170
  this.#connectionsInProgress.delete(peripheralAddress);
170
171
  peripheral.removeListener("connect", connectListener);
171
172
  peripheral.removeListener("disconnect", reTryHandler);
172
- if (error) {
173
+ if (errorOrReason instanceof Error) {
173
174
  logger.info(
174
175
  `Peripheral ${peripheralAddress} disconnected while trying to connect, try again`,
175
- error
176
+ errorOrReason
176
177
  );
177
178
  } else {
178
- logger.info(`Peripheral ${peripheralAddress} disconnected while trying to connect, try again`);
179
+ logger.info(
180
+ `Peripheral ${peripheralAddress} disconnected while trying to connect (reason ${nobleDisconnectReason(errorOrReason)}), try again`
181
+ );
179
182
  }
180
183
  this.#openChannel(address, tryCount + 1).then(resolveOnce).catch(rejectOnce);
181
184
  };
@@ -374,8 +377,10 @@ class NobleBleChannel extends BleChannel {
374
377
  this.peripheral = peripheral;
375
378
  this.btpSession = btpSession;
376
379
  this.#cleanupDataListener = cleanupDataListener;
377
- peripheral.once("disconnect", () => {
378
- logger.debug(`Disconnected from peripheral ${peripheral.address}. Closing BTP session`);
380
+ peripheral.once("disconnect", (reason) => {
381
+ logger.debug(
382
+ `Disconnected from peripheral ${peripheral.address} (reason ${nobleDisconnectReason(reason)}). Closing BTP session`
383
+ );
379
384
  this.#connected = false;
380
385
  this.#cleanupDataListener();
381
386
  this.#terminateIterator();
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/NobleBleChannel.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["error"]
6
6
  }
@@ -6,6 +6,11 @@
6
6
  import { Bytes, Diagnostic } from "@matter/general";
7
7
  import type { Peripheral } from "@stoprocent/noble";
8
8
  import { BleOptions } from "./NodeJsBle.js";
9
+ /**
10
+ * Render a noble disconnect reason. Linux HCI bindings report a numeric controller status, other bindings a
11
+ * descriptive string.
12
+ */
13
+ export declare function nobleDisconnectReason(reason: unknown): string;
9
14
  export declare class NobleBleClient {
10
15
  #private;
11
16
  [Diagnostic.name]: string;
@@ -1 +1 @@
1
- {"version":3,"file":"NobleBleClient.d.ts","sourceRoot":"","sources":["../../src/NobleBleClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAyB,MAAM,iBAAiB,CAAC;AAG3E,OAAO,KAAK,EAAS,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAkB5C,qBAAa,cAAc;;IAuJvB,CAAC,UAAU,CAAC,IAAI,CAAC;IAtJjB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA2E;IACjH,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,wBAAwB,CAA0E;IAG1G,YAAY,OAAO,CAAC,EAAE,UAAU,EAmC/B;IAEM,oBAAoB,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,KAAK,IAAI,QAK9F;IAEY,aAAa,kBAYzB;IAEY,YAAY,kBAOxB;IAED,OAAO,CAAC,sBAAsB;IAuC9B,KAAK,SAmCJ;CAGJ"}
1
+ {"version":3,"file":"NobleBleClient.d.ts","sourceRoot":"","sources":["../../src/NobleBleClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAyB,MAAM,iBAAiB,CAAC;AAG3E,OAAO,KAAK,EAAS,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAqB5C;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,UAKpD;AAED,qBAAa,cAAc;;IAuJvB,CAAC,UAAU,CAAC,IAAI,CAAC;IAtJjB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA2E;IACjH,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,wBAAwB,CAA0E;IAG1G,YAAY,OAAO,CAAC,EAAE,UAAU,EAmC/B;IAEM,oBAAoB,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,KAAK,IAAI,QAK9F;IAEY,aAAa,kBAYzB;IAEY,YAAY,kBAOxB;IAED,OAAO,CAAC,sBAAsB;IAuC9B,KAAK,SAmCJ;CAGJ"}
@@ -9,15 +9,24 @@ import { MatterBle } from "@matter/protocol";
9
9
  import { platform } from "node:process";
10
10
  const logger = Logger.get("NobleBleClient");
11
11
  let noble;
12
+ let hciStatusMessage;
12
13
  function loadNoble(hciId) {
13
14
  if (hciId !== void 0) {
14
15
  process.env.NOBLE_HCI_DEVICE_ID = hciId.toString();
15
16
  }
16
- noble = require2("@stoprocent/noble");
17
+ const nobleExports = require2("@stoprocent/noble");
18
+ hciStatusMessage = nobleExports.hciStatusMessage;
19
+ noble = nobleExports;
17
20
  if (typeof noble.on !== "function") {
18
- noble = noble({ extended: false });
21
+ noble = nobleExports({ extended: false });
19
22
  }
20
23
  }
24
+ function nobleDisconnectReason(reason) {
25
+ if (typeof reason === "number") {
26
+ return `0x${reason.toString(16).padStart(2, "0")} (${hciStatusMessage(reason)})`;
27
+ }
28
+ return reason === void 0 ? "unknown" : String(reason);
29
+ }
21
30
  class NobleBleClient {
22
31
  discoveredPeripherals = /* @__PURE__ */ new Map();
23
32
  shouldScan = false;
@@ -128,6 +137,7 @@ class NobleBleClient {
128
137
  [Diagnostic.name] = "BLE client";
129
138
  }
130
139
  export {
131
- NobleBleClient
140
+ NobleBleClient,
141
+ nobleDisconnectReason
132
142
  };
133
143
  //# sourceMappingURL=NobleBleClient.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/NobleBleClient.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["require"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/nodejs-ble",
3
- "version": "0.17.7",
3
+ "version": "0.17.8-alpha.0-20260801-ec23e2d27",
4
4
  "description": "Matter BLE support for node.js",
5
5
  "keywords": [
6
6
  "iot",
@@ -28,13 +28,13 @@
28
28
  "build-clean": "nacho-build --clean"
29
29
  },
30
30
  "dependencies": {
31
- "@matter/general": "0.17.7",
32
- "@matter/protocol": "0.17.7",
33
- "@matter/types": "0.17.7"
31
+ "@matter/general": "0.17.8-alpha.0-20260801-ec23e2d27",
32
+ "@matter/protocol": "0.17.8-alpha.0-20260801-ec23e2d27",
33
+ "@matter/types": "0.17.8-alpha.0-20260801-ec23e2d27"
34
34
  },
35
35
  "optionalDependencies": {
36
36
  "@stoprocent/bleno": "^0.12.5",
37
- "@stoprocent/noble": "^2.5.9"
37
+ "@stoprocent/noble": "^2.5.10"
38
38
  },
39
39
  "engines": {
40
40
  "node": ">=20.19.0 <22.0.0 || >=22.13.0"
@@ -31,6 +31,7 @@ import {
31
31
  } from "@matter/protocol";
32
32
  import type { Characteristic, Peripheral } from "@stoprocent/noble";
33
33
  import { BleScanner } from "./BleScanner.js";
34
+ import { nobleDisconnectReason } from "./NobleBleClient.js";
34
35
 
35
36
  const logger = Logger.get("BleChannel");
36
37
 
@@ -219,21 +220,23 @@ export class NobleBleCentralInterface implements Transport {
219
220
  this.#connectionGuards.delete(connectionGuard);
220
221
  };
221
222
 
222
- // Handler to retry the connection. Called on disconnections and errors.
223
- const reTryHandler = (error?: any) => {
223
+ // Handler to retry the connection. Called on disconnections (with a noble disconnect reason) and errors.
224
+ const reTryHandler = (errorOrReason?: unknown) => {
224
225
  // Cancel tracking states because we are done in this context
225
226
  clearConnectionGuard();
226
227
  this.#connectionsInProgress.delete(peripheralAddress);
227
228
  peripheral.removeListener("connect", connectListener);
228
229
  peripheral.removeListener("disconnect", reTryHandler);
229
230
 
230
- if (error) {
231
+ if (errorOrReason instanceof Error) {
231
232
  logger.info(
232
233
  `Peripheral ${peripheralAddress} disconnected while trying to connect, try again`,
233
- error,
234
+ errorOrReason,
234
235
  );
235
236
  } else {
236
- logger.info(`Peripheral ${peripheralAddress} disconnected while trying to connect, try again`);
237
+ logger.info(
238
+ `Peripheral ${peripheralAddress} disconnected while trying to connect (reason ${nobleDisconnectReason(errorOrReason)}), try again`,
239
+ );
237
240
  }
238
241
 
239
242
  // Try again and chain promises
@@ -628,8 +631,10 @@ export class NobleBleChannel extends BleChannel<Bytes> {
628
631
  ) {
629
632
  super();
630
633
  this.#cleanupDataListener = cleanupDataListener;
631
- peripheral.once("disconnect", () => {
632
- logger.debug(`Disconnected from peripheral ${peripheral.address}. Closing BTP session`);
634
+ peripheral.once("disconnect", reason => {
635
+ logger.debug(
636
+ `Disconnected from peripheral ${peripheral.address} (reason ${nobleDisconnectReason(reason)}). Closing BTP session`,
637
+ );
633
638
  this.#connected = false;
634
639
  this.#cleanupDataListener();
635
640
  this.#terminateIterator();
@@ -13,20 +13,34 @@ import { BleOptions } from "./NodeJsBle.js";
13
13
 
14
14
  const logger = Logger.get("NobleBleClient");
15
15
  let noble: Noble;
16
+ let hciStatusMessage: (reason: number) => string;
16
17
 
17
18
  function loadNoble(hciId?: number) {
18
19
  // load noble driver with the correct device selected
19
20
  if (hciId !== undefined) {
20
21
  process.env.NOBLE_HCI_DEVICE_ID = hciId.toString();
21
22
  }
22
- noble = require("@stoprocent/noble");
23
+ const nobleExports = require("@stoprocent/noble");
24
+ hciStatusMessage = nobleExports.hciStatusMessage;
25
+ noble = nobleExports;
23
26
  if (typeof noble.on !== "function") {
24
27
  // The following commit broke the default exported instance of noble:
25
28
  // https://github.com/abandonware/noble/commit/b67eea246f719947fc45b1b52b856e61637a8a8e
26
- noble = (noble as any)({ extended: false });
29
+ noble = nobleExports({ extended: false });
27
30
  }
28
31
  }
29
32
 
33
+ /**
34
+ * Render a noble disconnect reason. Linux HCI bindings report a numeric controller status, other bindings a
35
+ * descriptive string.
36
+ */
37
+ export function nobleDisconnectReason(reason: unknown) {
38
+ if (typeof reason === "number") {
39
+ return `0x${reason.toString(16).padStart(2, "0")} (${hciStatusMessage(reason)})`;
40
+ }
41
+ return reason === undefined ? "unknown" : String(reason);
42
+ }
43
+
30
44
  export class NobleBleClient {
31
45
  private readonly discoveredPeripherals = new Map<string, { peripheral: Peripheral; matterServiceData: Bytes }>();
32
46
  private shouldScan = false;