@zimo-elektronik/zcan 1.0.16 → 1.0.17
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.
|
@@ -5,12 +5,15 @@ export default class TrackCfgGroup {
|
|
|
5
5
|
readonly onTseInfoExtended: Subject<TseInfoExtended>;
|
|
6
6
|
readonly onTseProgReadExtended: Subject<TseProgReadExtended>;
|
|
7
7
|
readonly onTseProgWriteExtended: Subject<TseProgWriteExtended>;
|
|
8
|
+
readonly onTseProgWrite16Extended: Subject<TseProgWriteExtended>;
|
|
8
9
|
private mx10;
|
|
9
10
|
constructor(mx10: MX10);
|
|
10
11
|
tseProgRead(NID: number, CV: number): void;
|
|
11
12
|
tseProgWrite(NID: number, CV: number, value: number): void;
|
|
13
|
+
tseProgWrite16(NID: number, CV: number, value: number): void;
|
|
12
14
|
parse(size: number, command: number, mode: number, nid: number, buffer: Buffer): void;
|
|
13
15
|
parseTseInfo(size: number, mode: number, nid: number, buffer: Buffer): void;
|
|
14
16
|
parseTseProgRead(size: number, mode: number, nid: number, buffer: Buffer): void;
|
|
15
17
|
parseTseProgWrite(size: number, mode: number, nid: number, buffer: Buffer): void;
|
|
18
|
+
parseTseProgWrite16(size: number, mode: number, nid: number, buffer: Buffer): void;
|
|
16
19
|
}
|
|
@@ -3,6 +3,7 @@ export default class TrackCfgGroup {
|
|
|
3
3
|
onTseInfoExtended = new Subject();
|
|
4
4
|
onTseProgReadExtended = new Subject();
|
|
5
5
|
onTseProgWriteExtended = new Subject();
|
|
6
|
+
onTseProgWrite16Extended = new Subject();
|
|
6
7
|
mx10;
|
|
7
8
|
constructor(mx10) {
|
|
8
9
|
this.mx10 = mx10;
|
|
@@ -22,6 +23,14 @@ export default class TrackCfgGroup {
|
|
|
22
23
|
{ value: value, length: 1 },
|
|
23
24
|
]);
|
|
24
25
|
}
|
|
26
|
+
tseProgWrite16(NID, CV, value) {
|
|
27
|
+
this.mx10.sendData(0x16, 0x0d, [
|
|
28
|
+
{ value: this.mx10.mx10NID, length: 2 },
|
|
29
|
+
{ value: NID, length: 2 },
|
|
30
|
+
{ value: CV, length: 4 },
|
|
31
|
+
{ value: value, length: 2 },
|
|
32
|
+
]);
|
|
33
|
+
}
|
|
25
34
|
parse(size, command, mode, nid, buffer) {
|
|
26
35
|
switch (command) {
|
|
27
36
|
case 0x02:
|
|
@@ -33,6 +42,9 @@ export default class TrackCfgGroup {
|
|
|
33
42
|
case 0x09:
|
|
34
43
|
this.parseTseProgWrite(size, mode, nid, buffer);
|
|
35
44
|
break;
|
|
45
|
+
case 0x0d:
|
|
46
|
+
this.parseTseProgWrite16(size, mode, nid, buffer);
|
|
47
|
+
break;
|
|
36
48
|
}
|
|
37
49
|
}
|
|
38
50
|
parseTseInfo(size, mode, nid, buffer) {
|
|
@@ -73,5 +85,17 @@ export default class TrackCfgGroup {
|
|
|
73
85
|
});
|
|
74
86
|
}
|
|
75
87
|
}
|
|
88
|
+
parseTseProgWrite16(size, mode, nid, buffer) {
|
|
89
|
+
if (this.onTseProgWriteExtended.observed) {
|
|
90
|
+
const NID = buffer.readUInt16LE(0);
|
|
91
|
+
const cfgNum = buffer.readUInt32LE(2);
|
|
92
|
+
const cvValue = buffer.readUint16LE(6);
|
|
93
|
+
this.onTseProgWrite16Extended.next({
|
|
94
|
+
nid: NID,
|
|
95
|
+
cfgNum,
|
|
96
|
+
cvValue,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
}
|
|
76
100
|
}
|
|
77
101
|
//# sourceMappingURL=trackCfgGroup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trackCfgGroup.js","sourceRoot":"","sources":["../../src/zcan/trackCfgGroup.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,OAAO,EAAC,MAAM,MAAM,CAAC;AAM7B,MAAM,CAAC,OAAO,OAAO,aAAa;IAChB,iBAAiB,GAAG,IAAI,OAAO,EAAmB,CAAC;IACnD,qBAAqB,GAAG,IAAI,OAAO,EAAuB,CAAC;IAC3D,sBAAsB,GAAG,IAAI,OAAO,EAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"trackCfgGroup.js","sourceRoot":"","sources":["../../src/zcan/trackCfgGroup.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,OAAO,EAAC,MAAM,MAAM,CAAC;AAM7B,MAAM,CAAC,OAAO,OAAO,aAAa;IAChB,iBAAiB,GAAG,IAAI,OAAO,EAAmB,CAAC;IACnD,qBAAqB,GAAG,IAAI,OAAO,EAAuB,CAAC;IAC3D,sBAAsB,GAAG,IAAI,OAAO,EAAwB,CAAC;IAC7D,wBAAwB,GAAG,IAAI,OAAO,EAAwB,CAAC;IAEvE,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,WAAW,CAAC,GAAW,EAAE,EAAU;QACjC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE;YAC7B,EAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAC;YACrC,EAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAC;YACvB,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAC;SACvB,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,GAAW,EAAE,EAAU,EAAE,KAAa;QACjD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE;YAC7B,EAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAC;YACrC,EAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAC;YACvB,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAC;YACtB,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAC;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,cAAc,CAAC,GAAW,EAAE,EAAU,EAAE,KAAa;QACnD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE;YAC7B,EAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAC;YACrC,EAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAC;YACvB,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAC;YACtB,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAC;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CACH,IAAY,EACZ,OAAe,EACf,IAAY,EACZ,GAAW,EACX,MAAc;QAEd,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,IAAI;gBACP,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;gBAC3C,MAAM;YACR,KAAK,IAAI;gBACP,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;gBAC/C,MAAM;YACR,KAAK,IAAI;gBACP,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;gBAChD,MAAM;YACR,KAAK,IAAI;gBACL,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;gBAClD,MAAM;QACZ,CAAC;IACH,CAAC;IAGD,YAAY,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAE,MAAc;QAClE,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;YAEpC,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAEnC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;gBAC1B,GAAG,EAAE,GAAG;gBACR,MAAM;gBACN,OAAO;gBACP,MAAM;aACP,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAGD,gBAAgB,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAE,MAAc;QACtE,IAAI,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC;YAExC,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAEvC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC;gBAC9B,GAAG,EAAE,GAAG;gBACR,MAAM;gBACN,OAAO;aACR,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAGD,iBAAiB,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAE,MAAc;QACvE,IAAI,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAEpC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBAC/B,GAAG,EAAE,GAAG;gBACR,MAAM;gBACN,OAAO;aACR,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAGC,mBAAmB,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAE,MAAc;QACzE,IAAI,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAEvC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC;gBACjC,GAAG,EAAE,GAAG;gBACR,MAAM;gBACN,OAAO;aACR,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACJ"}
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": "https://github.com/ZIMO-Elektronik/zcan",
|
|
8
|
-
"version": "1.0.
|
|
8
|
+
"version": "1.0.17",
|
|
9
9
|
"scripts": {
|
|
10
10
|
"start": "node dist/main.js",
|
|
11
11
|
"start:dev": "nodemon --ext js,ts,json,env --exec \"node --experimental-specifier-resolution=node --loader ts-node/esm\" src/main.ts",
|
|
@@ -14,6 +14,7 @@ export default class TrackCfgGroup {
|
|
|
14
14
|
public readonly onTseInfoExtended = new Subject<TseInfoExtended>();
|
|
15
15
|
public readonly onTseProgReadExtended = new Subject<TseProgReadExtended>();
|
|
16
16
|
public readonly onTseProgWriteExtended = new Subject<TseProgWriteExtended>();
|
|
17
|
+
public readonly onTseProgWrite16Extended = new Subject<TseProgWriteExtended>();
|
|
17
18
|
|
|
18
19
|
private mx10: MX10;
|
|
19
20
|
|
|
@@ -38,6 +39,15 @@ export default class TrackCfgGroup {
|
|
|
38
39
|
]);
|
|
39
40
|
}
|
|
40
41
|
|
|
42
|
+
tseProgWrite16(NID: number, CV: number, value: number) {
|
|
43
|
+
this.mx10.sendData(0x16, 0x0d, [
|
|
44
|
+
{value: this.mx10.mx10NID, length: 2},
|
|
45
|
+
{value: NID, length: 2},
|
|
46
|
+
{value: CV, length: 4},
|
|
47
|
+
{value: value, length: 2},
|
|
48
|
+
]);
|
|
49
|
+
}
|
|
50
|
+
|
|
41
51
|
parse(
|
|
42
52
|
size: number,
|
|
43
53
|
command: number,
|
|
@@ -55,6 +65,9 @@ export default class TrackCfgGroup {
|
|
|
55
65
|
case 0x09:
|
|
56
66
|
this.parseTseProgWrite(size, mode, nid, buffer);
|
|
57
67
|
break;
|
|
68
|
+
case 0x0d:
|
|
69
|
+
this.parseTseProgWrite16(size, mode, nid, buffer);
|
|
70
|
+
break;
|
|
58
71
|
}
|
|
59
72
|
}
|
|
60
73
|
|
|
@@ -106,4 +119,19 @@ export default class TrackCfgGroup {
|
|
|
106
119
|
});
|
|
107
120
|
}
|
|
108
121
|
}
|
|
122
|
+
|
|
123
|
+
// 0x16.0x0d
|
|
124
|
+
parseTseProgWrite16(size: number, mode: number, nid: number, buffer: Buffer) {
|
|
125
|
+
if (this.onTseProgWriteExtended.observed) {
|
|
126
|
+
const NID = buffer.readUInt16LE(0);
|
|
127
|
+
const cfgNum = buffer.readUInt32LE(2);
|
|
128
|
+
const cvValue = buffer.readUint16LE(6);
|
|
129
|
+
|
|
130
|
+
this.onTseProgWrite16Extended.next({
|
|
131
|
+
nid: NID,
|
|
132
|
+
cfgNum,
|
|
133
|
+
cvValue,
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
}
|
|
109
137
|
}
|