queclink-parser 1.9.12 → 1.9.14

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/src/gv310lau.js CHANGED
@@ -32,14 +32,9 @@ const parse = raw => {
32
32
  if (command[1] === 'GTFRI') {
33
33
  try {
34
34
  let number = parsedData[6] !== '' ? parseInt(parsedData[6], 10) : 1
35
- let index = 6 + 12 * number
36
- let satelliteInfo = false
37
-
38
- // If get satellites is configured
39
- if (utils.includeSatellites(parsedData[18])) {
40
- index = 6 + 13 * number
41
- satelliteInfo = true
42
- }
35
+ let satelliteInfo = utils.includeSatellites(parsedData[18])
36
+ let accuracyInfo = utils.includeGnnsAccuracy(parsedData[18]) ? 3 : 0
37
+ let index = 6 + (12 + satelliteInfo + accuracyInfo) * number
43
38
 
44
39
  data = Object.assign(data, {
45
40
  alarm: utils.getAlarm(command[1], null),
@@ -146,8 +141,20 @@ const parse = raw => {
146
141
  lac: parsedData[16] !== '' ? parseInt(parsedData[16], 16) : null,
147
142
  cid: parsedData[17] !== '' ? parseInt(parsedData[17], 16) : null,
148
143
  satellites:
149
- satelliteInfo && parsedData[index] !== ''
150
- ? parseInt(parsedData[index], 10)
144
+ satelliteInfo && parsedData[index - (satelliteInfo + accuracyInfo) + 1] !== ''
145
+ ? parseInt(parsedData[index - (satelliteInfo + accuracyInfo) + 1], 10)
146
+ : null,
147
+ Hdop:
148
+ accuracyInfo && parsedData[index - accuracyInfo + 1] !== ''
149
+ ? parseFloat(parsedData[index - accuracyInfo + 1])
150
+ : null,
151
+ Vdop:
152
+ accuracyInfo && parsedData[index - accuracyInfo + 2] !== ''
153
+ ? parseFloat(parsedData[index - accuracyInfo + 2])
154
+ : null,
155
+ Ddop:
156
+ accuracyInfo && parsedData[index] !== ''
157
+ ? parseFloat(parsedData[index])
151
158
  : null,
152
159
  odometer:
153
160
  parsedData[index + 1] !== ''
@@ -163,7 +170,7 @@ const parse = raw => {
163
170
  if (number > 1) {
164
171
  let moreData = []
165
172
  for (let i = 1; i < number; i++) {
166
- let gnssIx = satelliteInfo ? 7 + 13 * i : 7 + 12 * i
173
+ let gnssIx = 7 + (12 + satelliteInfo + accuracyInfo) * i
167
174
  moreData.push({
168
175
  index: i,
169
176
  loc: {
@@ -214,6 +221,18 @@ const parse = raw => {
214
221
  satellites:
215
222
  satelliteInfo && parsedData[gnssIx + 12] !== ''
216
223
  ? parseInt(parsedData[gnssIx + 12], 10)
224
+ : null,
225
+ Hdop:
226
+ accuracyInfo && parsedData[gnssIx + 13] !== ''
227
+ ? parseFloat(parsedData[gnssIx + 13], 10)
228
+ : null,
229
+ Vdop:
230
+ accuracyInfo && parsedData[gnssIx + 14] !== ''
231
+ ? parseFloat(parsedData[gnssIx + 14], 10)
232
+ : null,
233
+ Ddop:
234
+ accuracyInfo && parsedData[gnssIx + 15] !== ''
235
+ ? parseFloat(parsedData[gnssIx + 15], 10)
217
236
  : null
218
237
  })
219
238
  }
@@ -226,14 +245,9 @@ const parse = raw => {
226
245
  } else if (command[1] === 'GTERI') {
227
246
  // GPS with AC100 and/or Bluetoth Devices Connected
228
247
  let number = parsedData[7] !== '' ? parseInt(parsedData[7], 10) : 1
229
- let index = 7 + 12 * number // position append mask
230
- let satelliteInfo = false
231
-
232
- // If get satellites is configured
233
- if (utils.includeSatellites(parsedData[19])) {
234
- index = 7 + 13 * number
235
- satelliteInfo = true
236
- }
248
+ let satelliteInfo = utils.includeSatellites(parsedData[19])
249
+ let accuracyInfo = utils.includeGnnsAccuracy(parsedData[19]) ? 3 : 0
250
+ let index = 7 + (12 + satelliteInfo + accuracyInfo) * number
237
251
 
238
252
  // External Data
239
253
  const digitFuelSensor =
@@ -353,7 +367,19 @@ const parse = raw => {
353
367
  lac: parsedData[17] !== '' ? parseInt(parsedData[17], 16) : null,
354
368
  cid: parsedData[18] !== '' ? parseInt(parsedData[18], 16) : null,
355
369
  satellites:
356
- satelliteInfo && parsedData[index] !== ''
370
+ satelliteInfo && parsedData[index - (satelliteInfo + accuracyInfo) + 1] !== ''
371
+ ? parseInt(parsedData[index - (satelliteInfo + accuracyInfo) + 1])
372
+ : null,
373
+ Hdop:
374
+ accuracyInfo && parsedData[index - accuracyInfo + 1] !== ''
375
+ ? parseFloat(parsedData[index - accuracyInfo + 1])
376
+ : null,
377
+ Vdop:
378
+ accuracyInfo && parsedData[index - accuracyInfo + 2] !== ''
379
+ ? parseFloat(parsedData[index - accuracyInfo + 2])
380
+ : null,
381
+ Ddop:
382
+ accuracyInfo && parsedData[index] !== ''
357
383
  ? parseFloat(parsedData[index])
358
384
  : null,
359
385
  odometer:
@@ -540,125 +566,8 @@ const parse = raw => {
540
566
 
541
567
  // Bluetooth Accessories
542
568
  if (bluetoothAccessory) {
543
- let btDevices = []
544
569
  let btIndex = digitFuelSensor ? index + 10 : index + 9
545
- let cnt = btIndex + 1
546
- let btNum = parsedData[btIndex] !== '' ? parseInt(parsedData[btIndex]) : 1
547
- for (let c = 0; c < btNum; c++) {
548
- let appendMask = utils.nHexDigit(utils.hex2bin(parsedData[cnt + 4]), 16)
549
-
550
- let aNameIx = cnt + 4 + parseInt(appendMask[15])
551
- let aMacIx = aNameIx + parseInt(appendMask[14])
552
- let aStatIx = aMacIx + parseInt(appendMask[13])
553
- let aBatIx = aStatIx + parseInt(appendMask[12])
554
- let aTmpIx = aBatIx + parseInt(appendMask[11])
555
- let aHumIx = aTmpIx + parseInt(appendMask[10])
556
- let ioIx = aHumIx + parseInt(appendMask[8])
557
- let modeIx =
558
- appendMask[8] === '1' ? ioIx + 2 + parseInt(appendMask[7]) : ioIx
559
- let aEvIx = appendMask[7] === '1' ? modeIx + 1 : modeIx
560
- let pressIx = aEvIx + parseInt(appendMask[6])
561
- let timeIx = pressIx + parseInt(appendMask[5])
562
- let eTmpIx = timeIx + parseInt(appendMask[4])
563
- let magIx = eTmpIx + parseInt(appendMask[3])
564
- let aBatpIx =
565
- appendMask[3] === '1' ? magIx + 2 + parseInt(appendMask[2]) : eTmpIx
566
- let relIx = aBatpIx + parseInt(appendMask[1])
567
-
568
- btDevices.push({
569
- index: parsedData[cnt],
570
- type: utils.bluetoothAccessories[parsedData[cnt + 1]],
571
- model:
572
- parsedData[cnt + 2] !== ''
573
- ? utils.bluetoothModels[parsedData[cnt + 1]][parsedData[cnt + 2]]
574
- : utils.bluetoothAccessories[parsedData[cnt + 1]],
575
- appendMask: parsedData[cnt + 4],
576
- name:
577
- parsedData[aNameIx] !== '' && appendMask[15] === '1'
578
- ? parsedData[aNameIx]
579
- : null,
580
- mac:
581
- parsedData[aMacIx] !== '' && appendMask[14] === '1'
582
- ? parsedData[aMacIx]
583
- : null,
584
- status:
585
- parsedData[aStatIx] !== '' && appendMask[13] === '1'
586
- ? parseInt(parsedData[aStatIx])
587
- : null,
588
- batteryLevel:
589
- parsedData[aBatIx] !== '' && appendMask[12] === '1'
590
- ? parseInt(parsedData[aBatIx])
591
- : null,
592
- batteryPercentage:
593
- parsedData[aBatpIx] !== '' && appendMask[2] === '1'
594
- ? parseFloat(parsedData[aBatpIx])
595
- : null,
596
- accessoryData: {
597
- rawData: parsedData[cnt + 3] !== '' ? parsedData[cnt + 3] : null,
598
- temperature:
599
- parsedData[aTmpIx] !== '' && appendMask[11] === '1'
600
- ? parseInt(parsedData[aTmpIx])
601
- : null,
602
- humidity:
603
- parsedData[aHumIx] !== '' && appendMask[10] === '1'
604
- ? parseInt(parsedData[aHumIx])
605
- : null,
606
- outputStatus:
607
- parsedData[ioIx] !== '' && appendMask[8] === '1'
608
- ? parsedData[ioIx]
609
- : null,
610
- inputStatus:
611
- parsedData[ioIx + 1] !== '' && appendMask[8] === '1'
612
- ? parsedData[ioIx + 1]
613
- : null,
614
- analogInputStatus:
615
- parsedData[ioIx + 2] !== '' && appendMask[8] === '1'
616
- ? parsedData[ioIx + 2]
617
- : null,
618
- mode:
619
- parsedData[modeIx] !== '' && appendMask[7] === '1'
620
- ? parseInt(parsedData[modeIx])
621
- : null,
622
- event:
623
- parsedData[aEvIx] !== '' && appendMask[7] === '1'
624
- ? parseInt(parsedData[aEvIx])
625
- : null,
626
- tirePresure:
627
- parsedData[pressIx] !== '' && appendMask[6] === '1'
628
- ? parseInt(parsedData[pressIx])
629
- : null,
630
- timestamp:
631
- parsedData[timeIx] !== '' && appendMask[5] === '1'
632
- ? utils.parseDate(parsedData[timeIx])
633
- : null,
634
- enhancedTemperature:
635
- parsedData[eTmpIx] !== '' && appendMask[4] === '1'
636
- ? parseFloat(parsedData[eTmpIx])
637
- : null,
638
- magDevice: {
639
- id:
640
- parsedData[magIx] !== '' && appendMask[3] === '1'
641
- ? parsedData[magIx]
642
- : null,
643
- eventCounter:
644
- parsedData[magIx + 1] !== '' && appendMask[3] === '1'
645
- ? parseInt(parsedData[magIx + 1])
646
- : null,
647
- magnetState:
648
- parsedData[magIx + 2] !== '' && appendMask[3] === '1'
649
- ? parseInt(parsedData[magIx + 2])
650
- : null
651
- },
652
- relay: {
653
- state:
654
- parsedData[relIx] !== '' && appendMask[1] === '1'
655
- ? parseInt(parsedData[relIx])
656
- : null
657
- }
658
- }
659
- })
660
- cnt = appendMask[1] === '1' ? relIx + 1 : relIx + 2
661
- }
570
+ let btDevices = utils.getBleData(parsedData, btIndex)
662
571
  externalData = Object.assign(externalData, {
663
572
  btDevices: btDevices
664
573
  })
@@ -672,7 +581,7 @@ const parse = raw => {
672
581
  if (number > 1) {
673
582
  let moreData = []
674
583
  for (let i = 1; i < number; i++) {
675
- let gnssIx = satelliteInfo ? 8 + 13 * i : 8 + 12 * i
584
+ let gnssIx = 8 + (12 + satelliteInfo + accuracyInfo) * i
676
585
  moreData.push({
677
586
  index: i,
678
587
  loc: {
@@ -723,6 +632,18 @@ const parse = raw => {
723
632
  satellites:
724
633
  satelliteInfo && parsedData[gnssIx + 12] !== ''
725
634
  ? parseInt(parsedData[gnssIx + 12], 10)
635
+ : null,
636
+ Hdop:
637
+ accuracyInfo && parsedData[gnssIx + 13] !== ''
638
+ ? parseFloat(parsedData[gnssIx + 13], 10)
639
+ : null,
640
+ Vdop:
641
+ accuracyInfo && parsedData[gnssIx + 14] !== ''
642
+ ? parseFloat(parsedData[gnssIx + 14], 10)
643
+ : null,
644
+ Ddop:
645
+ accuracyInfo && parsedData[gnssIx + 15] !== ''
646
+ ? parseFloat(parsedData[gnssIx + 15], 10)
726
647
  : null
727
648
  })
728
649
  }
@@ -815,14 +736,13 @@ const parse = raw => {
815
736
  ) {
816
737
  // Common Alarms
817
738
  let number = parsedData[6] !== '' ? parseInt(parsedData[6], 10) : 1
818
- let index = 6 + 12 * number // position append mask
819
- let satelliteInfo = false
739
+ let posAppendMask = parsedData[18] ? utils
740
+ .nHexDigit(utils.hex2bin(parsedData[18]), 8) : null
820
741
 
821
742
  // If get satellites is configured
822
- if (utils.includeSatellites(parsedData[18])) {
823
- index += 1
824
- satelliteInfo = true
825
- }
743
+ let satelliteInfo = posAppendMask && posAppendMask[7] === '1' ? 1 : 0
744
+ let accuracyInfo = posAppendMask && posAppendMask[4] === '1' ? 3 : 0
745
+ let index = 6 + (12 + satelliteInfo + accuracyInfo) * number
826
746
 
827
747
  data = Object.assign(data, {
828
748
  alarm: utils.getAlarm(command[1], parsedData[5], 'gv310lau'),
@@ -852,8 +772,20 @@ const parse = raw => {
852
772
  lac: parsedData[16] !== '' ? parseInt(parsedData[16], 16) : null,
853
773
  cid: parsedData[17] !== '' ? parseInt(parsedData[17], 16) : null,
854
774
  satellites:
855
- satelliteInfo && parsedData[index] !== ''
856
- ? parseInt(parsedData[index])
775
+ satelliteInfo && parsedData[index - (satelliteInfo + accuracyInfo) + 1] !== ''
776
+ ? parseInt(parsedData[index - (satelliteInfo + accuracyInfo) + 1])
777
+ : null,
778
+ Hdop:
779
+ accuracyInfo && parsedData[index - accuracyInfo + 1] !== ''
780
+ ? parseFloat(parsedData[index - accuracyInfo + 1], 10)
781
+ : null,
782
+ Vdop:
783
+ accuracyInfo && parsedData[index - accuracyInfo + 2] !== ''
784
+ ? parseFloat(parsedData[index - accuracyInfo + 2], 10)
785
+ : null,
786
+ Ddop:
787
+ accuracyInfo && parsedData[index] !== ''
788
+ ? parseFloat(parsedData[index], 10)
857
789
  : null,
858
790
  odometer:
859
791
  parsedData[index + 1] !== '' ? parseFloat(parsedData[index + 1]) : null,
@@ -1531,7 +1463,7 @@ const parse = raw => {
1531
1463
  : null,
1532
1464
  odometer: null,
1533
1465
  hourmeter: null,
1534
- can: utils.getCanData(parsedData, 5),
1466
+ can: utils.getCanData(parsedData, 5)
1535
1467
  }
1536
1468
  )
1537
1469
  } else if (command[1] === 'GTDAT') {
@@ -2048,18 +1980,18 @@ const parse = raw => {
2048
1980
  let aTmpIx = aBatIx + parseInt(appendMask[11])
2049
1981
  let aHumIx = aTmpIx + parseInt(appendMask[10])
2050
1982
  let ioIx = aHumIx + parseInt(appendMask[8])
2051
- let modeIx =
2052
- appendMask[8] === '1' ? ioIx + 2 + parseInt(appendMask[7]) : ioIx
2053
- let aEvIx = appendMask[7] === '1' ? modeIx + 1 : modeIx
2054
- let pressIx = aEvIx + parseInt(appendMask[6])
1983
+ let aEvIx = appendMask[8] === '1' && appendMask[7] === '1'
1984
+ ? ioIx + 3 : ioIx + parseInt(appendMask[7])
1985
+ let pressIx = appendMask[7] === '1' && appendMask[6] === '1'
1986
+ ? aEvIx + 2 : aEvIx + parseInt(appendMask[6])
2055
1987
  let timeIx = pressIx + parseInt(appendMask[5])
2056
1988
  let eTmpIx = timeIx + parseInt(appendMask[4])
2057
1989
  let magIx = eTmpIx + parseInt(appendMask[3])
2058
- let aBatpIx =
2059
- appendMask[3] === '1' ? magIx + 2 + parseInt(appendMask[2]) : eTmpIx
1990
+ let aBatpIx = appendMask[3] === '1' && appendMask[2] === '1'
1991
+ ? magIx + 3 : magIx + parseInt(appendMask[2])
2060
1992
  let relIx = aBatpIx + parseInt(appendMask[1])
2061
1993
 
2062
- let newIndex = appendMask[1] === '1' ? relIx + 2 : relIx + 1
1994
+ let newIndex = relIx + 1 + parseInt(appendMask[1])
2063
1995
  let satIndex = newIndex + 11
2064
1996
 
2065
1997
  // If get satellites is configured
@@ -2068,8 +2000,87 @@ const parse = raw => {
2068
2000
  satelliteInfo = true
2069
2001
  }
2070
2002
 
2003
+ let bleInfo = {
2004
+ accesory:
2005
+ btAccessory !== '' ? utils.bluetoothAccessories[btAccessory] : null,
2006
+ model: parsedData[6] !== '' ? parseInt(parsedData[6]) : null,
2007
+ name:
2008
+ parsedData[aNameIx] !== '' && appendMask[15] === '1'
2009
+ ? parsedData[aNameIx]
2010
+ : null,
2011
+ role: null,
2012
+ type: null,
2013
+ mac:
2014
+ parsedData[aMacIx] !== '' && appendMask[14] === '1'
2015
+ ? parsedData[aMacIx]
2016
+ : null,
2017
+ status:
2018
+ parsedData[aStatIx] !== '' && appendMask[13] === '1'
2019
+ ? parseInt(parsedData[aStatIx])
2020
+ : null,
2021
+ batteryLevel:
2022
+ parsedData[aBatIx] !== '' && appendMask[12] === '1'
2023
+ ? parseInt(parsedData[aBatIx])
2024
+ : null,
2025
+ batteryPercentage:
2026
+ parsedData[aBatpIx] !== '' && appendMask[2] === '1'
2027
+ ? parseFloat(parsedData[aBatpIx])
2028
+ : null
2029
+ }
2030
+
2031
+ let bleData = {
2032
+ temperature:
2033
+ parsedData[aTmpIx] !== '' && appendMask[11] === '1'
2034
+ ? parseInt(parsedData[aTmpIx])
2035
+ : null,
2036
+ humidity:
2037
+ parsedData[aHumIx] !== '' && appendMask[10] === '1'
2038
+ ? parseInt(parsedData[aHumIx])
2039
+ : null,
2040
+ event:
2041
+ parsedData[aEvIx] !== '' && appendMask[7] === '1'
2042
+ ? parseInt(parsedData[aEvIx])
2043
+ : null,
2044
+ tirePresure:
2045
+ parsedData[pressIx] !== '' && appendMask[6] === '1'
2046
+ ? parseInt(parsedData[pressIx])
2047
+ : null,
2048
+ timestamp:
2049
+ parsedData[timeIx] !== '' && appendMask[5] === '1'
2050
+ ? utils.parseDate(parsedData[timeIx])
2051
+ : null,
2052
+ enhancedTemperature:
2053
+ parsedData[eTmpIx] !== '' && appendMask[4] === '1'
2054
+ ? parseFloat(parsedData[eTmpIx])
2055
+ : null,
2056
+ magDevice: {
2057
+ id:
2058
+ parsedData[magIx] !== '' && appendMask[3] === '1'
2059
+ ? parsedData[magIx]
2060
+ : null,
2061
+ eventCounter:
2062
+ parsedData[magIx + 1] !== '' && appendMask[3] === '1'
2063
+ ? parseInt(parsedData[magIx + 1])
2064
+ : null,
2065
+ magnetState:
2066
+ parsedData[magIx + 2] !== '' && appendMask[3] === '1'
2067
+ ? parseInt(parsedData[magIx + 2])
2068
+ : null
2069
+ },
2070
+ relay: {
2071
+ configResult:
2072
+ parsedData[relIx] !== '' && appendMask[1] === '1'
2073
+ ? utils.relayBLEResults[parsedData[relIx]]
2074
+ : null,
2075
+ state:
2076
+ parsedData[relIx + 1] !== '' && appendMask[1] === '1'
2077
+ ? parseInt(parsedData[relIx + 1])
2078
+ : null
2079
+ }
2080
+ }
2081
+
2071
2082
  data = Object.assign(data, {
2072
- alarm: utils.getAlarm(command[1], parsedData[7], 'gv310lau'),
2083
+ alarm: utils.getAlarm(command[1], parsedData[7], [parsedData[4], bleInfo.mac, bleData]),
2073
2084
  loc: {
2074
2085
  type: 'Point',
2075
2086
  coordinates: [
@@ -2142,87 +2153,8 @@ const parse = raw => {
2142
2153
  ? parsedData[aMacIx]
2143
2154
  : null
2144
2155
  },
2145
- accessoryInfo: {
2146
- accesory:
2147
- btAccessory !== '' ? utils.bluetoothAccessories[btAccessory] : null,
2148
- model: parsedData[6] !== '' ? parseInt(parsedData[6]) : null,
2149
- name:
2150
- parsedData[aNameIx] !== '' && appendMask[15] === '1'
2151
- ? parsedData[aNameIx]
2152
- : null,
2153
- role: null,
2154
- type: null,
2155
- mac:
2156
- parsedData[aMacIx] !== '' && appendMask[14] === '1'
2157
- ? parsedData[aMacIx]
2158
- : null,
2159
- status:
2160
- parsedData[aStatIx] !== '' && appendMask[13] === '1'
2161
- ? parseInt(parsedData[aStatIx])
2162
- : null,
2163
- batteryLevel:
2164
- parsedData[aBatIx] !== '' && appendMask[12] === '1'
2165
- ? parseInt(parsedData[aBatIx])
2166
- : null,
2167
- batteryPercentage:
2168
- parsedData[aBatpIx] !== '' && appendMask[2] === '1'
2169
- ? parseFloat(parsedData[aBatpIx])
2170
- : null
2171
- },
2172
- accessoryData: {
2173
- temperature:
2174
- parsedData[aTmpIx] !== '' && appendMask[11] === '1'
2175
- ? parseInt(parsedData[aTmpIx])
2176
- : null,
2177
- humidity:
2178
- parsedData[aHumIx] !== '' && appendMask[10] === '1'
2179
- ? parseInt(parsedData[aHumIx])
2180
- : null,
2181
- mode:
2182
- parsedData[modeIx] !== '' && appendMask[7] === '1'
2183
- ? parseInt(parsedData[modeIx])
2184
- : null,
2185
- event:
2186
- parsedData[aEvIx] !== '' && appendMask[7] === '1'
2187
- ? parseInt(parsedData[aEvIx])
2188
- : null,
2189
- tirePresure:
2190
- parsedData[pressIx] !== '' && appendMask[6] === '1'
2191
- ? parseInt(parsedData[pressIx])
2192
- : null,
2193
- timestamp:
2194
- parsedData[timeIx] !== '' && appendMask[5] === '1'
2195
- ? utils.parseDate(parsedData[timeIx])
2196
- : null,
2197
- enhancedTemperature:
2198
- parsedData[eTmpIx] !== '' && appendMask[4] === '1'
2199
- ? parseFloat(parsedData[eTmpIx])
2200
- : null,
2201
- magDevice: {
2202
- id:
2203
- parsedData[magIx] !== '' && appendMask[3] === '1'
2204
- ? parsedData[magIx]
2205
- : null,
2206
- eventCounter:
2207
- parsedData[magIx + 1] !== '' && appendMask[3] === '1'
2208
- ? parseInt(parsedData[magIx + 1])
2209
- : null,
2210
- magnetState:
2211
- parsedData[magIx + 2] !== '' && appendMask[3] === '1'
2212
- ? parseInt(parsedData[magIx + 2])
2213
- : null
2214
- },
2215
- relay: {
2216
- configResult:
2217
- parsedData[relIx] !== '' && appendMask[1] === '1'
2218
- ? parseInt(parsedData[relIx])
2219
- : null,
2220
- state:
2221
- parsedData[relIx + 1] !== '' && appendMask[1] === '1'
2222
- ? parseInt(parsedData[relIx + 1])
2223
- : null
2224
- }
2225
- }
2156
+ accessoryInfo: bleInfo,
2157
+ accessoryData: bleData
2226
2158
  }
2227
2159
  })
2228
2160
  } else if (command[1] === 'GTBID') {
@@ -2606,12 +2538,12 @@ const parse = raw => {
2606
2538
  raw: parsedData[5] !== '' ? parsedData[5] : null,
2607
2539
  oilLevelLowIndicator: alarmMask1 ? alarmMask1[28] === '1' : null,
2608
2540
  serviceCallIndicator: alarmMask1 ? alarmMask1[27] === '1' : null,
2609
- aribagsIndicator: alarmMask1 ? alarmMask1[26] === '1' : null,
2541
+ airbagsIndicator: alarmMask1 ? alarmMask1[26] === '1' : null,
2610
2542
  checkEngineIndicator: alarmMask1 ? alarmMask1[25] === '1' : null,
2611
2543
  ABSFailureIndicator: alarmMask1 ? alarmMask1[23] === '1' : null,
2612
2544
  engineHotIndicator: alarmMask1 ? alarmMask1[22] === '1' : null,
2613
2545
  oilPressureIndicator: alarmMask1 ? alarmMask1[21] === '1' : null,
2614
- brakeSystemaFailureIndicator: alarmMask1
2546
+ brakeSystemFailureIndicator: alarmMask1
2615
2547
  ? alarmMask1[20] === '1'
2616
2548
  : null,
2617
2549
  batteryIndicator: alarmMask1 ? alarmMask1[19] === '1' : null,
@@ -2836,14 +2768,14 @@ const parse = raw => {
2836
2768
  ? expansionBin[2] === '1'
2837
2769
  : null,
2838
2770
  batteryIndicator: expansionBin ? expansionBin[3] === '1' : null,
2839
- brakeSystemaFailureIndicator: expansionBin
2771
+ brakeSystemFailureIndicator: expansionBin
2840
2772
  ? expansionBin[4] === '1'
2841
2773
  : null,
2842
2774
  oilPressureIndicator: expansionBin ? expansionBin[5] === '1' : null,
2843
2775
  engineHotIndicator: expansionBin ? expansionBin[6] === '1' : null,
2844
2776
  ABSFailureIndicator: expansionBin ? expansionBin[7] === '1' : null,
2845
2777
  checkEngineIndicator: expansionBin ? expansionBin[9] === '1' : null,
2846
- aribagsIndicator: expansionBin ? expansionBin[10] === '1' : null,
2778
+ airbagsIndicator: expansionBin ? expansionBin[10] === '1' : null,
2847
2779
  serviceCallIndicator: expansionBin
2848
2780
  ? expansionBin[11] === '1'
2849
2781
  : null,
package/src/gv57cg.js CHANGED
@@ -2025,12 +2025,12 @@ const parse = raw => {
2025
2025
  raw: parsedData[5] !== '' ? parsedData[5] : null,
2026
2026
  oilLevelLowIndicator: alarmMask1 ? alarmMask1[28] === '1' : null,
2027
2027
  serviceCallIndicator: alarmMask1 ? alarmMask1[27] === '1' : null,
2028
- aribagsIndicator: alarmMask1 ? alarmMask1[26] === '1' : null,
2028
+ airbagsIndicator: alarmMask1 ? alarmMask1[26] === '1' : null,
2029
2029
  checkEngineIndicator: alarmMask1 ? alarmMask1[25] === '1' : null,
2030
2030
  ABSFailureIndicator: alarmMask1 ? alarmMask1[23] === '1' : null,
2031
2031
  engineHotIndicator: alarmMask1 ? alarmMask1[22] === '1' : null,
2032
2032
  oilPressureIndicator: alarmMask1 ? alarmMask1[21] === '1' : null,
2033
- brakeSystemaFailureIndicator: alarmMask1
2033
+ brakeSystemFailureIndicator: alarmMask1
2034
2034
  ? alarmMask1[20] === '1'
2035
2035
  : null,
2036
2036
  batteryIndicator: alarmMask1 ? alarmMask1[19] === '1' : null,
@@ -2255,14 +2255,14 @@ const parse = raw => {
2255
2255
  ? expansionBin[2] === '1'
2256
2256
  : null,
2257
2257
  batteryIndicator: expansionBin ? expansionBin[3] === '1' : null,
2258
- brakeSystemaFailureIndicator: expansionBin
2258
+ brakeSystemFailureIndicator: expansionBin
2259
2259
  ? expansionBin[4] === '1'
2260
2260
  : null,
2261
2261
  oilPressureIndicator: expansionBin ? expansionBin[5] === '1' : null,
2262
2262
  engineHotIndicator: expansionBin ? expansionBin[6] === '1' : null,
2263
2263
  ABSFailureIndicator: expansionBin ? expansionBin[7] === '1' : null,
2264
2264
  checkEngineIndicator: expansionBin ? expansionBin[9] === '1' : null,
2265
- aribagsIndicator: expansionBin ? expansionBin[10] === '1' : null,
2265
+ airbagsIndicator: expansionBin ? expansionBin[10] === '1' : null,
2266
2266
  serviceCallIndicator: expansionBin
2267
2267
  ? expansionBin[11] === '1'
2268
2268
  : null,