@zimo-elektronik/zcan 1.0.41 → 1.0.42

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.
Files changed (43) hide show
  1. package/__tests__/connection.test.ts +1 -1
  2. package/dist/MX10.d.ts +3 -2
  3. package/dist/MX10.js +9 -8
  4. package/dist/MX10.js.map +1 -1
  5. package/dist/data/dataGroup.d.ts +5 -4
  6. package/dist/data/dataGroup.js +103 -20
  7. package/dist/data/dataGroup.js.map +1 -1
  8. package/dist/data/dataMsg.d.ts +1 -2
  9. package/dist/data/dataMsg.js +4 -7
  10. package/dist/data/dataMsg.js.map +1 -1
  11. package/dist/data/lanDataGroup.d.ts +5 -3
  12. package/dist/data/lanDataGroup.js +32 -21
  13. package/dist/data/lanDataGroup.js.map +1 -1
  14. package/dist/data/lanDataMsg.d.ts +26 -0
  15. package/dist/data/lanDataMsg.js +57 -0
  16. package/dist/data/lanDataMsg.js.map +1 -0
  17. package/dist/info/infoGroup.js +6 -6
  18. package/dist/info/infoGroup.js.map +1 -1
  19. package/dist/loco/vehicleGroup.js +21 -21
  20. package/dist/loco/vehicleGroup.js.map +1 -1
  21. package/dist/network/lanNetworkGroup.js +6 -6
  22. package/dist/network/lanNetworkGroup.js.map +1 -1
  23. package/dist/network/networkGroup.js +1 -1
  24. package/dist/network/networkGroup.js.map +1 -1
  25. package/dist/track/trackGroup.js +9 -9
  26. package/dist/track/trackGroup.js.map +1 -1
  27. package/package.json +1 -1
  28. package/src/MX10.ts +13 -13
  29. package/src/data/dataGroup.ts +114 -21
  30. package/src/data/dataMsg.ts +59 -60
  31. package/src/data/lanDataGroup.ts +65 -26
  32. package/src/data/lanDataMsg.ts +71 -0
  33. package/src/file/fileControlGroup.ts +1 -1
  34. package/src/file/fileTransferGroup.ts +1 -1
  35. package/src/info/infoGroup.ts +7 -8
  36. package/src/loco/vehicleGroup.ts +25 -25
  37. package/src/misc/propertyConfigGroup.ts +1 -1
  38. package/src/misc/railwayControlGroup.ts +1 -1
  39. package/src/network/lanNetworkGroup.ts +6 -6
  40. package/src/network/networkGroup.ts +6 -7
  41. package/src/script/lanScriptGroup.ts +1 -1
  42. package/src/script/scriptGroup.ts +1 -1
  43. package/src/track/trackGroup.ts +14 -14
@@ -38,7 +38,7 @@ describe('High level tests', () => {
38
38
  });
39
39
 
40
40
  it("Error logger test", (done) => {
41
- mx10.errors.subscribe((error: string) => {
41
+ mx10.logError.subscribe((error: string) => {
42
42
  expect(error).toBe('mx10.connection.not_connected')
43
43
  done();
44
44
  })
package/dist/MX10.d.ts CHANGED
@@ -25,8 +25,9 @@ export default class MX10 {
25
25
  readonly lanLocoState: LanLocoStateGroup;
26
26
  readonly lanNetwork: LanNetworkGroup;
27
27
  readonly lanZimoProgrammableScript: LanZimoProgrammableScriptGroup;
28
- readonly errors: Subject<string>;
29
- readonly log: Subject<string>;
28
+ readonly logError: Subject<string>;
29
+ readonly logWarning: Subject<string>;
30
+ readonly logInfo: Subject<string>;
30
31
  readonly connectionTimeout: number;
31
32
  private mx10Socket;
32
33
  private incomingPort;
package/dist/MX10.js CHANGED
@@ -26,8 +26,9 @@ export default class MX10 {
26
26
  lanLocoState = new LanLocoStateGroup(this);
27
27
  lanNetwork = new LanNetworkGroup(this);
28
28
  lanZimoProgrammableScript = new LanZimoProgrammableScriptGroup(this);
29
- errors = new Subject();
30
- log = new Subject();
29
+ logError = new Subject();
30
+ logWarning = new Subject();
31
+ logInfo = new Subject();
31
32
  connectionTimeout;
32
33
  mx10Socket = null;
33
34
  incomingPort = 14521;
@@ -90,7 +91,7 @@ export default class MX10 {
90
91
  if (this.interval === undefined) {
91
92
  this.interval = setInterval(() => {
92
93
  if (!this.connected) {
93
- console.log('Reconnecting...');
94
+ this.logInfo.next('Reconnecting...');
94
95
  this.network.portClose();
95
96
  this.connected = false;
96
97
  this.mx10NID = 0;
@@ -115,7 +116,7 @@ export default class MX10 {
115
116
  }
116
117
  sendMsg(msg, force = false) {
117
118
  const buffer = msg.udp(this.myNID);
118
- this.log.next("mx10.sendMsg: " + JSON.stringify(buffer));
119
+ this.logInfo.next("mx10.sendMsg: " + JSON.stringify(buffer));
119
120
  this.send(buffer, force);
120
121
  }
121
122
  sendData(group, cmd, data = [], mode = MsgMode.CMD, nid = this.myNID, force = false) {
@@ -161,12 +162,12 @@ export default class MX10 {
161
162
  }
162
163
  send(message, force = false) {
163
164
  if (!this.connected && !force) {
164
- this.errors.next('mx10.connection.not_connected');
165
+ this.logError.next('mx10.connection.not_connected');
165
166
  return;
166
167
  }
167
168
  this.mx10Socket?.send(message, 0, message.length, this.outgoingPort, this.mx10IP, (err) => {
168
169
  if (err && this.debugCommunication)
169
- this.log.next(err.message);
170
+ this.logInfo.next(err.message);
170
171
  });
171
172
  }
172
173
  readRawData(message) {
@@ -183,7 +184,7 @@ export default class MX10 {
183
184
  if (this.mx10NID && nid !== this.mx10NID) {
184
185
  if ((nid >> 8 !== 0xc0)) {
185
186
  if (!(group === 0xa && command === 0 && mode === MsgMode.EVT))
186
- this.log.next('Not from MX10: ' + JSON.stringify(message));
187
+ this.logInfo.next('Not from MX10: ' + JSON.stringify(message));
187
188
  }
188
189
  return;
189
190
  }
@@ -254,7 +255,7 @@ export default class MX10 {
254
255
  const f = (obj) => Number(obj).toString(16);
255
256
  const arrow = '|' + (out ? '→' : '←');
256
257
  const msg = `${arrow} g=${f(group)} c=${f(cmd)} m=${f(mode)} n=${f(nid)} l=${f(size)} : ${data}`;
257
- this.log.next(msg);
258
+ this.logInfo.next(msg);
258
259
  }
259
260
  }
260
261
  }
package/dist/MX10.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"MX10.js","sourceRoot":"","sources":["../src/MX10.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MX10.js","sourceRoot":"","sources":["../src/MX10.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import MX10 from '../MX10';
2
2
  import { Buffer } from 'buffer';
3
3
  import { Subject } from 'rxjs';
4
- import { RemoveLocomotiveData, DataNameExtended, ItemFxMode, ItemFxConfig, ItemImageData, ItemListByIndexData, ItemListByNidData } from '../common/models';
4
+ import { RemoveLocomotiveData, DataNameExtended, ItemFxMode, ItemFxConfig, ItemImageData, ItemListByNidData } from '../common/models';
5
5
  import { FxConfigType, ImageType } from '../common/enums';
6
- import { MsgGroupCount } from './dataMsg';
6
+ import { MsgGroupCount, MsgItemsByIndexRsp } from './dataMsg';
7
7
  export default class DataGroup {
8
8
  readonly onGroupCount: Subject<MsgGroupCount>;
9
- readonly onListItemsByIndex: Subject<ItemListByIndexData>;
9
+ readonly onListItemsByIndex: Subject<MsgItemsByIndexRsp>;
10
10
  readonly onListItemsByNID: Subject<ItemListByNidData>;
11
11
  readonly onRemoveLocomotive: Subject<RemoveLocomotiveData>;
12
12
  readonly onItemImageConfig: Subject<ItemImageData>;
@@ -14,10 +14,11 @@ export default class DataGroup {
14
14
  readonly onItemFxConfig: Subject<ItemFxConfig>;
15
15
  readonly onDataNameExtended: Subject<DataNameExtended>;
16
16
  private groupCountQ;
17
+ private byIndexQ;
17
18
  private mx10;
18
19
  constructor(mx10: MX10);
19
20
  groupCount(groupNid?: number): Promise<MsgGroupCount | undefined>;
20
- listItemsByIndex(groupNID: number, index: number): void;
21
+ listItemsByIndex(groupNid: number, index: number): Promise<MsgItemsByIndexRsp | undefined>;
21
22
  listItemsByNID(searchAfterValue: number): void;
22
23
  removeLocomotive(toRemove: number, removeFrom?: number): void;
23
24
  itemImageConfig(nid: number, type: ImageType, imageId: number): void;
@@ -1,7 +1,7 @@
1
1
  import { Subject } from 'rxjs';
2
2
  import { MsgMode, NameType } from '../common/enums';
3
3
  import ExtendedASCII from '../common/extendedAscii';
4
- import { MsgGroupCount } from './dataMsg';
4
+ import { MsgGroupCount, MsgItemsByIndexReq, MsgItemsByIndexRsp } from './dataMsg';
5
5
  import { Query } from '../docs_entrypoint';
6
6
  export default class DataGroup {
7
7
  onGroupCount = new Subject();
@@ -13,40 +13,122 @@ export default class DataGroup {
13
13
  onItemFxConfig = new Subject();
14
14
  onDataNameExtended = new Subject();
15
15
  groupCountQ = undefined;
16
+ byIndexQ = undefined;
16
17
  mx10;
17
18
  constructor(mx10) {
18
19
  this.mx10 = mx10;
19
20
  }
20
21
  async groupCount(groupNid = 0) {
21
22
  if (this.groupCountQ !== undefined && !await this.groupCountQ.lock()) {
22
- this.mx10.log.next("mx10.groupCount: failed to acquire lock");
23
+ this.mx10.logInfo.next("mx10.groupCount: failed to acquire lock");
23
24
  return undefined;
24
25
  }
25
26
  this.groupCountQ = new Query(MsgGroupCount.header(MsgMode.REQ, this.mx10.mx10NID), this.onGroupCount);
26
27
  this.groupCountQ.log = ((msg) => {
27
- this.mx10.log.next(msg);
28
+ this.mx10.logInfo.next(msg);
28
29
  });
29
30
  this.groupCountQ.tx = ((header) => {
30
31
  const msg = new MsgGroupCount(header, groupNid);
31
- this.mx10.log.next('groupCount query tx: ' + JSON.stringify(msg));
32
+ this.mx10.logInfo.next('groupCount query tx: ' + JSON.stringify(msg));
32
33
  this.mx10.sendMsg(msg);
33
34
  });
34
35
  this.groupCountQ.match = ((msg) => {
35
- this.mx10.log.next('groupCount query rx: ' + JSON.stringify(msg));
36
+ this.mx10.logInfo.next('groupCount query rx: ' + JSON.stringify(msg));
36
37
  return (msg.group() === groupNid);
37
38
  });
38
39
  const rv = await this.groupCountQ.run();
39
- this.mx10.log.next("mx10.groupCount.rv: " + JSON.stringify(rv));
40
+ this.mx10.logInfo.next("mx10.groupCount.rv: " + JSON.stringify(rv));
40
41
  this.groupCountQ.unlock();
41
42
  this.groupCountQ = undefined;
42
43
  return rv;
43
44
  }
44
- listItemsByIndex(groupNID, index) {
45
- this.mx10.sendData(0x07, 0x01, [
46
- { value: this.mx10.mx10NID, length: 2 },
47
- { value: groupNID, length: 2 },
48
- { value: index, length: 2 },
49
- ], 0b00);
45
+ async listItemsByIndex(groupNid, index) {
46
+ if (this.byIndexQ !== undefined && !await this.byIndexQ.lock()) {
47
+ this.mx10.logInfo.next("mx10.listItemsByIndex: failed to acquire lock");
48
+ return undefined;
49
+ }
50
+ this.byIndexQ = new Query(MsgItemsByIndexReq.header(MsgMode.REQ, this.mx10.mx10NID), this.onListItemsByIndex);
51
+ this.byIndexQ.log = ((msg) => {
52
+ this.mx10.logInfo.next(msg);
53
+ });
54
+ this.byIndexQ.tx = ((header) => {
55
+ const msg = new MsgItemsByIndexReq(header, this.mx10.myNID, groupNid, index);
56
+ this.mx10.logInfo.next('listItemsByIndex query tx: ' + JSON.stringify(msg));
57
+ this.mx10.sendMsg(msg);
58
+ });
59
+ this.byIndexQ.match = ((msg) => {
60
+ this.mx10.logInfo.next('listItemsByIndex query rx: ' + JSON.stringify(msg));
61
+ this.mx10.logInfo.next('listItemsByIndex query rx: ' + msg.itemNid());
62
+ const nid = msg.itemNid();
63
+ switch (groupNid) {
64
+ case 0:
65
+ return nid < 0x2800;
66
+ case 0x2800:
67
+ return nid < 0x28ff;
68
+ case 0x2f00:
69
+ return nid < 0x3000;
70
+ case 0x3000:
71
+ return nid < 0x3200;
72
+ case 0x3200:
73
+ return nid < 0x3a00;
74
+ case 0x3a00:
75
+ return nid < 0x3e00;
76
+ case 0x4000:
77
+ return nid < 0x4400;
78
+ case 0x4400:
79
+ return nid < 0x4600;
80
+ case 0x4600:
81
+ return nid < 0x4800;
82
+ case 0x5000:
83
+ return nid < 0x5040;
84
+ case 0x5040:
85
+ return nid < 0x5080;
86
+ case 0x5080:
87
+ return nid < 0x50c0;
88
+ case 0x50c0:
89
+ return nid < 0x50d0;
90
+ case 0x50d0:
91
+ return nid < 0x50e0;
92
+ case 0x5100:
93
+ return nid < 0x5140;
94
+ case 0x5140:
95
+ return nid < 0x5180;
96
+ case 0x5800:
97
+ return nid < 0x5880;
98
+ case 0x5a00:
99
+ return nid < 0x5b00;
100
+ case 0x6000:
101
+ return nid < 0x6100;
102
+ case 0x6100:
103
+ return nid < 0x6400;
104
+ case 0x6600:
105
+ return nid < 0x6700;
106
+ case 0x8000:
107
+ return nid < 0xc000;
108
+ case 0xc000:
109
+ return nid < 0xc100;
110
+ case 0xc100:
111
+ return nid < 0xc200;
112
+ case 0xc200:
113
+ return nid < 0xc300;
114
+ case 0xc300:
115
+ return nid < 0xc400;
116
+ case 0xc400:
117
+ return nid < 0xc500;
118
+ case 0xd000:
119
+ return nid < 0xe000;
120
+ case 0xe000:
121
+ return nid < 0xf000;
122
+ case 0xf000:
123
+ return nid <= 0xffff;
124
+ }
125
+ return false;
126
+ });
127
+ const rv = await this.byIndexQ.run();
128
+ this.mx10.logInfo.next("mx10.listItemsByIndex.rv: " + JSON.stringify(rv));
129
+ this.byIndexQ.unlock();
130
+ this.byIndexQ = undefined;
131
+ return rv;
50
132
  }
51
133
  listItemsByNID(searchAfterValue) {
52
134
  this.mx10.sendData(0x07, 0x02, [
@@ -99,15 +181,15 @@ export default class DataGroup {
99
181
  parse(size, command, mode, nid, buffer) {
100
182
  switch (command) {
101
183
  case 0x00:
102
- this.mx10.log.next('parseGroupCount: ' + JSON.stringify(buffer));
184
+ this.mx10.logInfo.next('parseGroupCount: ' + JSON.stringify(buffer));
103
185
  this.parseGroupCount(size, mode, nid, buffer);
104
186
  break;
105
187
  case 0x01:
106
- this.mx10.log.next('parseItemListByIndex: ' + JSON.stringify(buffer));
188
+ this.mx10.logInfo.next('parseItemListByIndex: ' + JSON.stringify(buffer));
107
189
  this.parseItemListByIndex(size, mode, nid, buffer);
108
190
  break;
109
191
  case 0x02:
110
- this.mx10.log.next('parseItemListByNid: ' + JSON.stringify(buffer));
192
+ this.mx10.logInfo.next('parseItemListByNid: ' + JSON.stringify(buffer));
111
193
  this.parseItemListByNid(size, mode, nid, buffer);
112
194
  break;
113
195
  case 0x12:
@@ -126,7 +208,7 @@ export default class DataGroup {
126
208
  this.parseDataNameExtended(size, mode, nid, buffer);
127
209
  break;
128
210
  default:
129
- this.mx10.log.next('command not parsed: ' + command.toString());
211
+ this.mx10.logInfo.next('command not parsed: ' + command.toString());
130
212
  }
131
213
  }
132
214
  parseGroupCount(size, mode, nid, buffer) {
@@ -142,8 +224,9 @@ export default class DataGroup {
142
224
  const index = buffer.readUInt16LE(0);
143
225
  const deviceNID = buffer.readUInt16LE(2);
144
226
  const msSinceLastCommunication = buffer.readUInt16LE(4);
145
- if (deviceNID)
146
- this.onListItemsByIndex.next({ index, nid: deviceNID, msSinceLastCommunication });
227
+ if (!deviceNID)
228
+ return;
229
+ this.onListItemsByIndex.next(new MsgItemsByIndexRsp(MsgItemsByIndexRsp.header(mode, nid), index, deviceNID, msSinceLastCommunication));
147
230
  }
148
231
  parseItemListByNid(size, mode, nid, buffer) {
149
232
  if (!this.onListItemsByNID.observed)
@@ -179,7 +262,7 @@ export default class DataGroup {
179
262
  for (let i = 0; i < 32; i += 2)
180
263
  fxMode.push((fxModes >> i) & 0b11);
181
264
  const msg = { nid: NID, group, mode: fxMode };
182
- this.mx10.log.next('parseItemFxMode: ' + JSON.stringify(msg));
265
+ this.mx10.logInfo.next('parseItemFxMode: ' + JSON.stringify(msg));
183
266
  this.onItemFxMode.next(msg);
184
267
  }
185
268
  parseItemFxConfig(size, mode, nid, buffer) {
@@ -190,7 +273,7 @@ export default class DataGroup {
190
273
  const item = buffer.readUInt16LE(4);
191
274
  const data = buffer.readUInt16LE(6);
192
275
  const msg = { nid: NID, function: fx, item, data };
193
- this.mx10.log.next('parseItemFxConfig: ' + JSON.stringify(msg));
276
+ this.mx10.logInfo.next('parseItemFxConfig: ' + JSON.stringify(msg));
194
277
  this.onItemFxConfig.next(msg);
195
278
  }
196
279
  parseDataNameExtended(size, mode, nid, buffer) {
@@ -1 +1 @@
1
- {"version":3,"file":"dataGroup.js","sourceRoot":"","sources":["../../src/data/dataGroup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataGroup.js","sourceRoot":"","sources":["../../src/data/dataGroup.ts"],"names":[],"mappings":"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"}
@@ -12,10 +12,9 @@ export declare class MsgItemsByIndexReq extends Message {
12
12
  }
13
13
  export declare class MsgItemsByIndexRsp extends Message {
14
14
  static header(mode: MsgMode, nid: number): Header;
15
- constructor(header: Header, index: number, itemNid: number, itemState: number, lastTick: number | undefined);
15
+ constructor(header: Header, index: number, itemNid: number, lastTick: number);
16
16
  index(): number;
17
17
  itemNid(): number;
18
- itemState(): number;
19
18
  lastTick(): number;
20
19
  }
21
20
  export declare class MsgItemsByNidReq extends Message {
@@ -15,25 +15,22 @@ export class MsgItemsByIndexReq extends Message {
15
15
  static header(mode, nid) { return { group: 0x7, cmd: 0x1, mode: mode, nid: nid }; }
16
16
  constructor(header, mx10Nid, groupNid, index) {
17
17
  super(header);
18
- super.push({ value: mx10Nid, length: 2 });
19
18
  super.push({ value: groupNid, length: 2 });
20
19
  super.push({ value: index, length: 2 });
21
20
  }
22
21
  }
23
22
  export class MsgItemsByIndexRsp extends Message {
24
23
  static header(mode, nid) { return { group: 0x7, cmd: 0x1, mode: mode, nid: nid }; }
25
- constructor(header, index, itemNid, itemState, lastTick) {
24
+ constructor(header, index, itemNid, lastTick) {
26
25
  super(header);
27
26
  super.push({ value: index, length: 2 });
28
27
  super.push({ value: itemNid, length: 2 });
29
- super.push({ value: itemState, length: 2 });
30
28
  if (lastTick !== undefined)
31
29
  super.push({ value: lastTick, length: 2 });
32
30
  }
33
- index() { return this.data[1].value; }
34
- itemNid() { return this.data[2].value; }
35
- itemState() { return this.data[3].value; }
36
- lastTick() { return this.data[4].value; }
31
+ index() { return this.data[0].value; }
32
+ itemNid() { return this.data[1].value; }
33
+ lastTick() { return this.data[2].value; }
37
34
  }
38
35
  export class MsgItemsByNidReq extends Message {
39
36
  static header(mode, nid) { return { group: 0x7, cmd: 0x2, mode: mode, nid: nid }; }
@@ -1 +1 @@
1
- {"version":3,"file":"dataMsg.js","sourceRoot":"","sources":["../../src/data/dataMsg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataMsg.js","sourceRoot":"","sources":["../../src/data/dataMsg.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,23 @@
1
1
  import MX10 from '../MX10';
2
2
  import { FxConfigType } from '../common/enums';
3
- import { DataNameExtendedData, DataValueExtendedData, LocoGuiMXExtended, LocoSpeedTabExtended, Train } from '../common/models';
3
+ import { DataNameExtendedData, DataValueExtendedData, LocoGuiMXExtended, LocoSpeedTabExtended } from '../common/models';
4
4
  import { Subject } from 'rxjs';
5
5
  import { ZcanDataArray } from '../common/communication';
6
+ import { MsgLocoGuiRsp } from './lanDataMsg';
6
7
  export default class LanDataGroup {
7
- readonly onLocoGuiExtended: Subject<Train>;
8
+ readonly onLocoGuiExtended: Subject<MsgLocoGuiRsp>;
8
9
  readonly onLocoGuiMXExtended: Subject<LocoGuiMXExtended>;
9
10
  readonly onDataValueExtended: Subject<DataValueExtendedData>;
10
11
  readonly onDataNameExtended: Subject<DataNameExtendedData>;
11
12
  readonly onLocoSpeedTabExtended: Subject<LocoSpeedTabExtended>;
13
+ private locoGuiQ;
12
14
  private mx10;
13
15
  constructor(mx10: MX10);
14
16
  dataValueExtended(NID: number): void;
15
17
  dataNameExtended(NID: number): void;
16
18
  renameDataExtended(NID: number, type: number, val1: number, val2: number, val3: number, name: string): void;
17
19
  itemFxConfig(nid: number, fx: number, type: FxConfigType, addr: number, mode: number, icon: number): void;
18
- locoGuiExtended(NID: number): void;
20
+ locoGuiExtended(nid: number): Promise<MsgLocoGuiRsp | undefined>;
19
21
  locoGuiMXExtended(NID: number): void;
20
22
  locoSpeedTapExtended(NID: number): void;
21
23
  mxUpdateFnIcons(destructuredBuffer: ZcanDataArray): void;
@@ -1,14 +1,17 @@
1
- import { FunctionMode, getOperatingMode, OperatingMode } from '../common/enums';
1
+ import { getOperatingMode, MsgMode } from '../common/enums';
2
2
  import { Subject } from 'rxjs';
3
3
  import { parseSpeed } from '../common/speedUtils';
4
4
  import ExtendedASCII from '../common/extendedAscii';
5
5
  import { manualModeB, shuntingFunctionB } from '../common/bites';
6
+ import { Query } from '../common/communication';
7
+ import { MsgLocoGuiReq, MsgLocoGuiRsp } from './lanDataMsg';
6
8
  export default class LanDataGroup {
7
9
  onLocoGuiExtended = new Subject();
8
10
  onLocoGuiMXExtended = new Subject();
9
11
  onDataValueExtended = new Subject();
10
12
  onDataNameExtended = new Subject();
11
13
  onLocoSpeedTabExtended = new Subject();
14
+ locoGuiQ = undefined;
12
15
  mx10;
13
16
  constructor(mx10) {
14
17
  this.mx10 = mx10;
@@ -47,12 +50,29 @@ export default class LanDataGroup {
47
50
  { value: icon, length: 2 },
48
51
  ]);
49
52
  }
50
- locoGuiExtended(NID) {
51
- this.mx10.sendData(0x17, 0x27, [
52
- { value: this.mx10.mx10NID, length: 2 },
53
- { value: NID, length: 2 },
54
- { value: 0, length: 2 },
55
- ], 0b00);
53
+ async locoGuiExtended(nid) {
54
+ if (this.locoGuiQ !== undefined && !await this.locoGuiQ.lock()) {
55
+ this.mx10.logInfo.next("mx10.locoGuiExtended: failed to acquire lock");
56
+ return undefined;
57
+ }
58
+ this.locoGuiQ = new Query(MsgLocoGuiReq.header(MsgMode.REQ, this.mx10.mx10NID), this.onLocoGuiExtended);
59
+ this.locoGuiQ.log = ((msg) => {
60
+ this.mx10.logInfo.next(msg);
61
+ });
62
+ this.locoGuiQ.tx = ((header) => {
63
+ const msg = new MsgLocoGuiReq(header, nid, 0);
64
+ this.mx10.logInfo.next('locoGuiExtended query tx: ' + JSON.stringify(msg));
65
+ this.mx10.sendMsg(msg);
66
+ });
67
+ this.locoGuiQ.match = ((msg) => {
68
+ this.mx10.logInfo.next('locoGuiExtended query rx: ' + JSON.stringify(msg));
69
+ return (msg.locoNid() === nid);
70
+ });
71
+ const rv = await this.locoGuiQ.run();
72
+ this.mx10.logInfo.next("mx10.locoGuiExtended.rv: " + JSON.stringify(rv));
73
+ this.locoGuiQ.unlock();
74
+ this.locoGuiQ = undefined;
75
+ return rv;
56
76
  }
57
77
  locoGuiMXExtended(NID) {
58
78
  this.mx10.sendData(0x17, 0x28, [
@@ -143,22 +163,13 @@ export default class LanDataGroup {
143
163
  const driveType = buffer.readUInt16LE(48);
144
164
  const era = buffer.readUInt16LE(50);
145
165
  const countryCode = buffer.readUInt16LE(52);
146
- const functions = Array();
166
+ const functions = [];
147
167
  for (let i = 0; i < 32; i++) {
148
- const icon = buffer.readUInt16LE(54 + i * 2);
149
- const iconString = icon === 0 ? String(i).padStart(2, '0') : String(icon);
150
- functions.push({
151
- mode: FunctionMode.switch,
152
- active: false,
153
- icon: iconString.padStart(4, icon === 0 ? '07' : '0'),
154
- });
168
+ const fun = buffer.readUInt16LE(54 + 2 * i);
169
+ functions.push(fun);
155
170
  }
156
- this.onLocoGuiExtended.next({ nid: NID, subId: SubID, name: name, group: vehicleGroup,
157
- image: imageId == 0 ? undefined : imageId.toString(), tacho: tacho.toString(),
158
- speedFwd: speedFwd, speedRev: speedRev, speedRange: speedRange,
159
- operatingMode: OperatingMode.UNKNOWN, driveType: driveType, era: this.parseEra(era),
160
- countryCode: countryCode, functions,
161
- });
171
+ const msg = new MsgLocoGuiRsp(MsgLocoGuiRsp.header(mode, nid), NID, SubID, vehicleGroup, name, imageId, tacho, speedFwd, speedRev, speedRange, driveType, era, countryCode, functions);
172
+ this.onLocoGuiExtended.next(msg);
162
173
  }
163
174
  parseLocoGuiMXExtended(size, mode, nid, buffer) {
164
175
  if (!this.onLocoGuiMXExtended.observed)