@canboat/canboatjs 3.16.4-beta.1 → 3.17.0-beta.1
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/dist/canSocket.d.ts +14 -15
- package/dist/canSocket.d.ts.map +1 -1
- package/dist/canSocket.js +43 -54
- package/dist/canSocket.js.map +1 -1
- package/dist/n2kDevice.js +12 -1
- package/dist/n2kDevice.js.map +1 -1
- package/native/canSocket.cpp +190 -68
- package/package.json +1 -1
- package/tsconfig.tsbuildinfo +1 -1
package/dist/canSocket.d.ts
CHANGED
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Minimal CAN socket wrapper using
|
|
2
|
+
* Minimal CAN socket wrapper using uv_poll_t-based reads.
|
|
3
3
|
*
|
|
4
|
-
* The native addon (native/canSocket.cpp) opens
|
|
5
|
-
*
|
|
4
|
+
* The native addon (native/canSocket.cpp) opens PF_CAN sockets in non-blocking
|
|
5
|
+
* mode and exposes a CanPoller class that registers a uv_poll_t watcher on the
|
|
6
|
+
* read fd. When frames are readable, the watcher invokes a JS callback that
|
|
7
|
+
* drains all available frames via a non-blocking native read. Writes also use
|
|
8
|
+
* a non-blocking native write so neither direction ever occupies a libuv
|
|
9
|
+
* threadpool worker — this keeps the threadpool free for fs operations and
|
|
10
|
+
* lets process.exit() terminate cleanly without hanging on a blocked syscall.
|
|
6
11
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* Reads and writes use separate CAN sockets bound to the same interface.
|
|
13
|
-
* The read socket is blocking (for threadpool reads), the write socket is
|
|
14
|
-
* O_NONBLOCK (to avoid stalling when the CAN bus has no listeners).
|
|
15
|
-
* Separate fds prevent writeCanFrame from toggling O_NONBLOCK on the read
|
|
16
|
-
* fd, which caused spurious ReadStream errors and reconnect cycles.
|
|
12
|
+
* Reads and writes use separate CAN sockets bound to the same interface:
|
|
13
|
+
* the read socket has the default (full) RX filter, the write socket has an
|
|
14
|
+
* empty RX filter so the kernel doesn't queue frames into a buffer nobody
|
|
15
|
+
* reads.
|
|
17
16
|
*
|
|
18
17
|
* Copyright 2025 Signal K contributors
|
|
19
18
|
* Licensed under the Apache License, Version 2.0
|
|
@@ -29,14 +28,14 @@ export interface CanMessage {
|
|
|
29
28
|
* start(), stop(), send(), removeAllListeners().
|
|
30
29
|
*/
|
|
31
30
|
export declare class CanChannel extends EventEmitter {
|
|
32
|
-
private readStream;
|
|
33
31
|
private readFd;
|
|
34
32
|
private writeFd;
|
|
35
|
-
private
|
|
33
|
+
private poller;
|
|
36
34
|
private stopped;
|
|
37
35
|
private exitHandler;
|
|
38
36
|
constructor(ifname: string);
|
|
39
37
|
start(): void;
|
|
38
|
+
private onReadable;
|
|
40
39
|
stop(): void;
|
|
41
40
|
send(msg: {
|
|
42
41
|
id: number;
|
package/dist/canSocket.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canSocket.d.ts","sourceRoot":"","sources":["../lib/canSocket.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"canSocket.d.ts","sourceRoot":"","sources":["../lib/canSocket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAkCrC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,YAAY;IAC1C,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,WAAW,CAA4B;gBAEnC,MAAM,EAAE,MAAM;IAqB1B,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,UAAU;IA6BlB,IAAI,IAAI,IAAI;IAqBZ,IAAI,CAAC,GAAG,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;CAgB7D"}
|
package/dist/canSocket.js
CHANGED
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Minimal CAN socket wrapper using
|
|
3
|
+
* Minimal CAN socket wrapper using uv_poll_t-based reads.
|
|
4
4
|
*
|
|
5
|
-
* The native addon (native/canSocket.cpp) opens
|
|
6
|
-
*
|
|
5
|
+
* The native addon (native/canSocket.cpp) opens PF_CAN sockets in non-blocking
|
|
6
|
+
* mode and exposes a CanPoller class that registers a uv_poll_t watcher on the
|
|
7
|
+
* read fd. When frames are readable, the watcher invokes a JS callback that
|
|
8
|
+
* drains all available frames via a non-blocking native read. Writes also use
|
|
9
|
+
* a non-blocking native write so neither direction ever occupies a libuv
|
|
10
|
+
* threadpool worker — this keeps the threadpool free for fs operations and
|
|
11
|
+
* lets process.exit() terminate cleanly without hanging on a blocked syscall.
|
|
7
12
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* Reads and writes use separate CAN sockets bound to the same interface.
|
|
14
|
-
* The read socket is blocking (for threadpool reads), the write socket is
|
|
15
|
-
* O_NONBLOCK (to avoid stalling when the CAN bus has no listeners).
|
|
16
|
-
* Separate fds prevent writeCanFrame from toggling O_NONBLOCK on the read
|
|
17
|
-
* fd, which caused spurious ReadStream errors and reconnect cycles.
|
|
13
|
+
* Reads and writes use separate CAN sockets bound to the same interface:
|
|
14
|
+
* the read socket has the default (full) RX filter, the write socket has an
|
|
15
|
+
* empty RX filter so the kernel doesn't queue frames into a buffer nobody
|
|
16
|
+
* reads.
|
|
18
17
|
*
|
|
19
18
|
* Copyright 2025 Signal K contributors
|
|
20
19
|
* Licensed under the Apache License, Version 2.0
|
|
@@ -48,10 +47,9 @@ catch (releaseErr) {
|
|
|
48
47
|
* start(), stop(), send(), removeAllListeners().
|
|
49
48
|
*/
|
|
50
49
|
class CanChannel extends events_1.EventEmitter {
|
|
51
|
-
readStream = null;
|
|
52
50
|
readFd;
|
|
53
51
|
writeFd;
|
|
54
|
-
|
|
52
|
+
poller = null;
|
|
55
53
|
stopped = false;
|
|
56
54
|
exitHandler = null;
|
|
57
55
|
constructor(ifname) {
|
|
@@ -60,49 +58,48 @@ class CanChannel extends events_1.EventEmitter {
|
|
|
60
58
|
const detail = nativeLoadError ? `: ${nativeLoadError.message}` : '';
|
|
61
59
|
throw new Error(`Failed to load native canSocket module${detail}`);
|
|
62
60
|
}
|
|
63
|
-
this.readFd = native.
|
|
61
|
+
this.readFd = native.openCanReadSocket(ifname);
|
|
64
62
|
try {
|
|
65
|
-
this.writeFd = native.
|
|
63
|
+
this.writeFd = native.openCanWriteSocket(ifname);
|
|
66
64
|
}
|
|
67
65
|
catch (e) {
|
|
68
66
|
(0, fs_1.closeSync)(this.readFd);
|
|
69
67
|
throw e;
|
|
70
68
|
}
|
|
71
|
-
//
|
|
72
|
-
//
|
|
73
|
-
// process
|
|
69
|
+
// Defensive: if the process exits without an explicit stop(), the
|
|
70
|
+
// CanPoller's uv_poll_t handle will keep the libuv loop alive and
|
|
71
|
+
// process.exit() may hesitate. Clean up on 'exit' as a safety net.
|
|
74
72
|
this.exitHandler = () => this.stop();
|
|
75
73
|
process.on('exit', this.exitHandler);
|
|
76
74
|
}
|
|
77
75
|
start() {
|
|
78
76
|
this.stopped = false;
|
|
79
|
-
this.
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
const id = rawId & CAN_EFF_MASK;
|
|
91
|
-
const dlc = frame[4];
|
|
92
|
-
const data = Buffer.from(frame.subarray(CAN_DATA_OFFSET, CAN_DATA_OFFSET + dlc));
|
|
93
|
-
this.emit('onMessage', { id, data });
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
this.readStream.on('error', (err) => {
|
|
77
|
+
this.poller = new native.CanPoller(this.readFd, () => this.onReadable());
|
|
78
|
+
}
|
|
79
|
+
onReadable() {
|
|
80
|
+
if (this.stopped) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
let frames;
|
|
84
|
+
try {
|
|
85
|
+
frames = native.readCanFrames(this.readFd);
|
|
86
|
+
}
|
|
87
|
+
catch (err) {
|
|
97
88
|
if (!this.stopped) {
|
|
98
89
|
this.emit('onStopped', err.message);
|
|
99
90
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
for (const frame of frames) {
|
|
94
|
+
if (frame.length < CAN_FRAME_SIZE) {
|
|
95
|
+
continue;
|
|
104
96
|
}
|
|
105
|
-
|
|
97
|
+
const rawId = frame.readUInt32LE(0);
|
|
98
|
+
const id = rawId & CAN_EFF_MASK;
|
|
99
|
+
const dlc = frame[4];
|
|
100
|
+
const data = Buffer.from(frame.subarray(CAN_DATA_OFFSET, CAN_DATA_OFFSET + dlc));
|
|
101
|
+
this.emit('onMessage', { id, data });
|
|
102
|
+
}
|
|
106
103
|
}
|
|
107
104
|
stop() {
|
|
108
105
|
if (this.stopped) {
|
|
@@ -113,18 +110,10 @@ class CanChannel extends events_1.EventEmitter {
|
|
|
113
110
|
process.removeListener('exit', this.exitHandler);
|
|
114
111
|
this.exitHandler = null;
|
|
115
112
|
}
|
|
116
|
-
if (this.
|
|
117
|
-
this.
|
|
118
|
-
this.
|
|
113
|
+
if (this.poller) {
|
|
114
|
+
this.poller.close();
|
|
115
|
+
this.poller = null;
|
|
119
116
|
}
|
|
120
|
-
// shutdown() the read socket first so any threadpool worker blocked
|
|
121
|
-
// in read() is immediately unblocked (returns ENOTCONN). On Linux,
|
|
122
|
-
// close() alone does NOT interrupt a read() blocked on the same fd
|
|
123
|
-
// in another thread — the worker would hang forever.
|
|
124
|
-
try {
|
|
125
|
-
native.shutdownCanSocket(this.readFd);
|
|
126
|
-
}
|
|
127
|
-
catch (_e) { }
|
|
128
117
|
try {
|
|
129
118
|
(0, fs_1.closeSync)(this.readFd);
|
|
130
119
|
}
|
package/dist/canSocket.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canSocket.js","sourceRoot":"","sources":["../lib/canSocket.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"canSocket.js","sourceRoot":"","sources":["../lib/canSocket.ts"],"names":[],"mappings":"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"}
|
package/dist/n2kDevice.js
CHANGED
|
@@ -100,7 +100,7 @@ class N2kDevice extends node_events_1.EventEmitter {
|
|
|
100
100
|
dst: 255,
|
|
101
101
|
'NMEA 2000 Version': 1300,
|
|
102
102
|
'Product Code': 667, // Just made up..
|
|
103
|
-
'Model ID':
|
|
103
|
+
'Model ID': getServerVersion(options),
|
|
104
104
|
'Model Version': getModelVersion(options),
|
|
105
105
|
'Model Serial Code': uniqueNumber.toString(),
|
|
106
106
|
'Certification Level': 0,
|
|
@@ -237,6 +237,14 @@ function getModelVersion(options) {
|
|
|
237
237
|
return 'canboatjs';
|
|
238
238
|
}
|
|
239
239
|
}
|
|
240
|
+
function getServerVersion(options) {
|
|
241
|
+
if (options.app?.config?.version !== undefined) {
|
|
242
|
+
return `signalk-server@${options.app.config.version}`;
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
return 'signalk-server';
|
|
246
|
+
}
|
|
247
|
+
}
|
|
240
248
|
function handleISORequest(device, n2kMsg) {
|
|
241
249
|
device.debug('handleISORequest %j', n2kMsg);
|
|
242
250
|
const PGN = Number(n2kMsg.fields.pgn);
|
|
@@ -367,6 +375,7 @@ function sendAddressClaim(device) {
|
|
|
367
375
|
}
|
|
368
376
|
device.debug(`Sending address claim ${device.address}`);
|
|
369
377
|
device.sendPGN(device.addressClaim);
|
|
378
|
+
device.options.app.emit(device.options.analyzerOutEvent || 'N2KAnalyzerOut', device.addressClaim);
|
|
370
379
|
const version = package_json_1.default ? package_json_1.default.version : 'unknown';
|
|
371
380
|
device.setStatus(`Claimed address ${device.address} (canboatjs v${version})`);
|
|
372
381
|
device.addressClaimSentAt = Date.now();
|
|
@@ -404,11 +413,13 @@ function sendISORequest(device, pgn, src = undefined, dst = 255) {
|
|
|
404
413
|
function sendProductInformation(device) {
|
|
405
414
|
device.debug('Sending product info');
|
|
406
415
|
device.sendPGN(device.productInfo);
|
|
416
|
+
device.options.app.emit(device.options.analyzerOutEvent || 'N2KAnalyzerOut', device.productInfo);
|
|
407
417
|
}
|
|
408
418
|
function sendConfigInformation(device) {
|
|
409
419
|
if (device.configurationInfo) {
|
|
410
420
|
device.debug('Sending config info..');
|
|
411
421
|
device.sendPGN(device.configurationInfo);
|
|
422
|
+
device.options.app.emit(device.options.analyzerOutEvent || 'N2KAnalyzerOut', device.configurationInfo);
|
|
412
423
|
}
|
|
413
424
|
}
|
|
414
425
|
function sendNAKAcknowledgement(device, src, requestedPGN) {
|
package/dist/n2kDevice.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"n2kDevice.js","sourceRoot":"","sources":["../lib/n2kDevice.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"n2kDevice.js","sourceRoot":"","sources":["../lib/n2kDevice.ts"],"names":[],"mappings":"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"}
|