@ncd-io/node-red-enterprise-sensors 1.1.1 → 1.1.2

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.
@@ -1161,9 +1161,15 @@ module.exports = class WirelessSensor{
1161
1161
  console.log(packet);
1162
1162
  return this.config_send(sensor_mac, packet);
1163
1163
  }
1164
- config_set_acceleration_interrupt_threshold_84(sensor_mac, value){
1165
- console.log('config_set_acceleration_interrupt_threshold_84');
1166
- var packet = [244, 79, 0, 0, 0, 60, value];
1164
+ config_set_acceleration_interrupt_threshold_p1_84(sensor_mac, value){
1165
+ console.log('config_set_acceleration_interrupt_threshold_p1_84');
1166
+ var packet = [244, 79, 0, 0, 0, 60, 1, value];
1167
+ console.log(packet);
1168
+ return this.config_send(sensor_mac, packet);
1169
+ }
1170
+ config_set_acceleration_interrupt_threshold_p2_84(sensor_mac, value){
1171
+ console.log('config_set_acceleration_interrupt_threshold_p2_84');
1172
+ var packet = [244, 79, 0, 0, 0, 60, 2, value];
1167
1173
  console.log(packet);
1168
1174
  return this.config_send(sensor_mac, packet);
1169
1175
  }
@@ -1805,6 +1811,12 @@ module.exports = class WirelessSensor{
1805
1811
  console.log(packet);
1806
1812
  return this.config_send(sensor_mac, packet);
1807
1813
  }
1814
+ config_set_mode_97(sensor_mac, value){
1815
+ console.log('config_set_mode_97');
1816
+ var packet = [244, 83, 0, 0, 0, value]
1817
+ console.log(packet);
1818
+ return this.config_send(sensor_mac, packet);
1819
+ }
1808
1820
  config_get_delay(sensor_mac){
1809
1821
  return new Promise((fulfill, reject) => {
1810
1822
  this.config_send(sensor_mac, [247, 21, 0, 0, 0]).then((res) => {
@@ -3245,23 +3257,46 @@ function sensor_types(parent){
3245
3257
  }
3246
3258
  },
3247
3259
  'parse_fly': (frame) => {
3248
- return {
3249
- 'firmware': frame[2],
3250
- 'calibration_days': frame[12],
3251
- 'sensor_update_rate':frame.slice(13, 15).reduce(msbLsb),
3252
- 'hardware_id_1': frame[15],
3253
- 'hardware_id_2': frame[16],
3254
- 'hardware_id_3': frame[17],
3255
- 'report_rate': frame.slice(18, 22).reduce(msbLsb),
3256
- 'tx_counter': frame.slice(22, 26).reduce(msbLsb),
3257
- 'machine_values': {
3260
+ if(frame[2] > 2){
3261
+ return {
3262
+ 'firmware': frame[2],
3263
+ 'calibration_days': frame[12] + ' days',
3264
+ 'sensor_update_rate':frame.slice(13, 15).reduce(msbLsb) + ' sec',
3265
+ 'heater_duration': frame.slice(15, 17).reduce(msbLsb) + ' msec',
3266
+ 'heater_temperature': frame.slice(17, 19).reduce(msbLsb) + ' °C',
3267
+ 'hardware_id': frame.slice(19, 22),
3268
+ 'report_rate': frame.slice(22, 26).reduce(msbLsb) + ' sec',
3269
+ 'tx_counter': frame.slice(26, 30).reduce(msbLsb),
3270
+ 'machine_values': {
3271
+ 'firmware': frame[2],
3272
+ 'calibration_days': frame[12],
3273
+ 'sensor_update_rate':frame.slice(13, 15),
3274
+ 'heater_duration': frame.slice(15, 17),
3275
+ 'heater_temperature': frame.slice(17, 19),
3276
+ 'hardware_id': frame.slice(19, 22),
3277
+ 'report_rate': frame.slice(22, 26).reduce(msbLsb),
3278
+ 'tx_counter': frame.slice(26, 30).reduce(msbLsb),
3279
+
3280
+ }
3281
+ };
3282
+ }
3283
+ else{
3284
+ return {
3258
3285
  'firmware': frame[2],
3259
- 'calibration_days': frame[12],
3260
- 'sensor_update_rate':frame.slice(13, 15),
3286
+ 'calibration_days': frame[12] + ' days',
3287
+ 'sensor_update_rate':frame.slice(13, 15).reduce(msbLsb) + ' sec',
3261
3288
  'hardware_id': frame.slice(15, 18),
3262
- 'report_rate': frame.slice(18, 22),
3263
- 'tx_counter': frame.slice(22, 26),
3264
- }
3289
+ 'report_rate': frame.slice(18, 22).reduce(msbLsb) + ' sec',
3290
+ 'tx_counter': frame.slice(22, 26).reduce(msbLsb),
3291
+ 'machine_values': {
3292
+ 'firmware': frame[2],
3293
+ 'calibration_days': frame[12],
3294
+ 'sensor_update_rate':frame.slice(13, 15),
3295
+ 'hardware_id': frame.slice(15, 18),
3296
+ 'report_rate': frame.slice(18, 22),
3297
+ 'tx_counter': frame.slice(22, 26),
3298
+ }
3299
+ };
3265
3300
  }
3266
3301
  }
3267
3302
  },
@@ -6295,39 +6330,56 @@ function sensor_types(parent){
6295
6330
  else if(payload[8] === 0){ // processed mode
6296
6331
  return {
6297
6332
  mode: payload[8],
6298
- rms_mv: payload.slice(9, 13).reduce(msbLsb) / 1000,
6299
- freq_1: payload.slice(13, 15).reduce(msbLsb),
6300
- freq_2: payload.slice(15, 17).reduce(msbLsb),
6301
- freq_3: payload.slice(17, 19).reduce(msbLsb),
6333
+ sampling_frequency: payload.slice(9, 13).reduce(msbLsb),
6334
+ rms_mv: payload.slice(13, 17).reduce(msbLsb) / 1000,
6335
+ freq_1: payload.slice(17, 19).reduce(msbLsb),
6336
+ freq_2: payload.slice(19, 21).reduce(msbLsb),
6337
+ freq_3: payload.slice(21, 23).reduce(msbLsb),
6302
6338
  };
6303
6339
  }
6304
6340
 
6305
6341
  },
6306
6342
  'parse_fly': (frame) => {
6343
+ let frame_data = {};
6344
+ frame_data.mode = frame[12] ? 'Raw':'Processed';
6345
+ switch(frame[13]){
6346
+ case 0:
6347
+ frame_data.raw_lenght = 55;
6348
+ break;
6349
+ case 1:
6350
+ frame_data.raw_lenght = 100;
6351
+ break;
6352
+ case 2:
6353
+ frame_data.raw_lenght = 150;
6354
+ break;
6355
+ case 3:
6356
+ frame_data.raw_lenght = 180;
6357
+ break;
6358
+ }
6307
6359
  return {
6308
6360
  'firmware': frame[2],
6309
- 'raw_length': frame[12],
6310
- 'raw_on_request_timeout': frame[13] + " Sec",
6311
- 'fly_rate': frame.slice(14, 16).reduce(msbLsb) + " min",
6312
- 'sensor_gain_db': frame[16] + " dB",
6313
- 'sensor_boot_time': frame[17] + " Sec",
6314
- 'hardware_id_1': frame[18],
6315
- 'hardware_id_2': frame[19],
6316
- 'hardware_id_3': frame[20],
6317
- 'rate': frame.slice(21, 25).reduce(msbLsb),
6318
- 'tx_life_count': frame.slice(25, 29).reduce(msbLsb),
6361
+ 'mode': frame_data.mode,
6362
+ 'raw_length': frame_data.raw_lenght + " Bytes",
6363
+ 'raw_on_request_timeout': frame[14] + " sec",
6364
+ 'fly_rate': frame.slice(15, 17).reduce(msbLsb) + " min",
6365
+ 'sensor_gain_db': frame[17] + " dB",
6366
+ 'sensor_boot_time': frame[18] + " sec",
6367
+ 'sampling_frequency': (frame.slice(19, 23).reverse()).reduce(msbLsb) + " Hz",
6368
+ 'hardware_id': frame.slice(23, 26),
6369
+ 'report_rate': frame.slice(26, 30).reduce(msbLsb),
6370
+ 'tx_life_count': frame.slice(30, 34).reduce(msbLsb),
6319
6371
  'machine_values': {
6320
6372
  'firmware': frame[2],
6321
- 'raw_lenght': frame[12],
6322
- 'raw_on_request_timeout': frame[13],
6323
- 'fly_rate': frame.slice(14, 16),
6324
- 'sensor_gain_db': frame[16],
6325
- 'sensor_boot_time': frame[17],
6326
- 'hardware_id_1': frame[18],
6327
- 'hardware_id_2': frame[19],
6328
- 'hardware_id_3': frame[20],
6329
- 'rate': frame.slice(21, 25),
6330
- 'tx_life_count': frame.slice(25, 29)
6373
+ 'mode':frame[12],
6374
+ 'raw_lenght': frame[13],
6375
+ 'raw_on_request_timeout': frame[14],
6376
+ 'fly_rate': frame.slice(15, 17),
6377
+ 'sensor_gain_db': frame[17],
6378
+ 'sensor_boot_time': frame[18],
6379
+ 'sampling_frequency': frame.slice(19, 23),
6380
+ 'hardware_id': frame.slice(23, 26),
6381
+ 'report_rate': frame.slice(26, 30),
6382
+ 'tx_life_count': frame.slice(30, 34)
6331
6383
  }
6332
6384
  }
6333
6385
  }
@@ -6455,46 +6507,63 @@ function sensor_types(parent){
6455
6507
  else if(payload[8] === 0){ // processed mode
6456
6508
  return {
6457
6509
  mode: payload[8],
6458
- c1_rms_mv: payload.slice(9, 13).reduce(msbLsb) / 1000,
6459
- c1_freq_1: payload.slice(13, 15).reduce(msbLsb),
6460
- c1_freq_2: payload.slice(15, 17).reduce(msbLsb),
6461
- c1_freq_3: payload.slice(17, 19).reduce(msbLsb),
6462
- c2_rms_mv: payload.slice(19, 23).reduce(msbLsb) / 1000,
6463
- c2_freq_1: payload.slice(23, 25).reduce(msbLsb),
6464
- c2_freq_2: payload.slice(25, 27).reduce(msbLsb),
6465
- c2_freq_3: payload.slice(27, 30).reduce(msbLsb)
6510
+ sampling_frequency: payload.slice(9, 13).reduce(msbLsb),
6511
+ c1_rms_mv: payload.slice(13, 15).reduce(msbLsb) / 1000,
6512
+ c1_freq_1: payload.slice(15, 17).reduce(msbLsb),
6513
+ c1_freq_2: payload.slice(17, 19).reduce(msbLsb),
6514
+ c1_freq_3: payload.slice(19, 23).reduce(msbLsb),
6515
+ c2_rms_mv: payload.slice(23, 25).reduce(msbLsb) / 1000,
6516
+ c2_freq_1: payload.slice(25, 27).reduce(msbLsb),
6517
+ c2_freq_2: payload.slice(27, 30).reduce(msbLsb),
6518
+ c2_freq_3: payload.slice(30, 34).reduce(msbLsb)
6466
6519
  };
6467
6520
  }
6468
6521
  },
6469
6522
  'parse_fly': (frame) => {
6523
+ let frame_data = {};
6524
+ frame_data.mode = frame[12] ? 'Raw':'Processed';
6525
+ switch(frame[13]){
6526
+ case 0:
6527
+ frame_data.raw_lenght = 55;
6528
+ break;
6529
+ case 1:
6530
+ frame_data.raw_lenght = 100;
6531
+ break;
6532
+ case 2:
6533
+ frame_data.raw_lenght = 150;
6534
+ break;
6535
+ case 3:
6536
+ frame_data.raw_lenght = 180;
6537
+ break;
6538
+ }
6470
6539
  return {
6471
6540
  'firmware': frame[2],
6472
- 'raw_length': frame[12],
6473
- 'raw_on_request_timeout': frame[13] + " Sec",
6474
- 'fly_rate': frame.slice(14, 16).reduce(msbLsb) + " min",
6475
- 'c1_sensor_gain_db': frame[16] + " dB",
6476
- 'c1_sensor_boot_time': frame[17] + " Sec",
6477
- 'c2_sensor_gain_db': frame[18] + " dB",
6478
- 'c2_sensor_boot_time': frame[19] + " Sec",
6479
- 'hardware_id_1': frame[20],
6480
- 'hardware_id_2': frame[21],
6481
- 'hardware_id_3': frame[22],
6482
- 'rate': frame.slice(23, 27).reduce(msbLsb),
6483
- 'tx_life_count': frame.slice(27, 31).reduce(msbLsb),
6541
+ 'mode': frame_data.mode,
6542
+ 'raw_length': frame_data.raw_lenght + " Bytes",
6543
+ 'raw_on_request_timeout': frame[14] + " sec",
6544
+ 'fly_rate': frame.slice(15, 17).reduce(msbLsb) + " min",
6545
+ 'c1_sensor_gain_db': frame[17] + " dB",
6546
+ 'c1_sensor_boot_time': frame[18] + " sec",
6547
+ 'c2_sensor_gain_db': frame[19] + " dB",
6548
+ 'c2_sensor_boot_time': frame[20] + " sec",
6549
+ 'sampling_frequency': (frame.slice(21, 25).reverse()).reduce(msbLsb) + " Hz",
6550
+ 'hardware_id': frame.slice(25, 28),
6551
+ 'report_rate': frame.slice(28, 32).reduce(msbLsb),
6552
+ 'tx_life_count': frame.slice(32, 36).reduce(msbLsb),
6484
6553
  'machine_values': {
6485
6554
  'firmware': frame[2],
6486
- 'raw_lenght': frame[12],
6487
- 'raw_on_request_timeout': frame[13],
6488
- 'fly_rate': frame.slice(14, 16),
6489
- 'c1_sensor_gain_db': frame[16],
6490
- 'c1_sensor_boot_time': frame[17],
6491
- 'c2_sensor_gain_db': frame[18],
6492
- 'c2_sensor_boot_time': frame[19],
6493
- 'hardware_id_1': frame[20],
6494
- 'hardware_id_2': frame[21],
6495
- 'hardware_id_3': frame[22],
6496
- 'rate': frame.slice(23, 27),
6497
- 'tx_life_count': frame.slice(27, 31)
6555
+ 'mode': frame[12],
6556
+ 'raw_lenght': frame[13],
6557
+ 'raw_on_request_timeout': frame[14],
6558
+ 'fly_rate': frame.slice(15, 17),
6559
+ 'c1_sensor_gain_db': frame[17],
6560
+ 'c1_sensor_boot_time': frame[18],
6561
+ 'c2_sensor_gain_db': frame[19],
6562
+ 'c2_sensor_boot_time': frame[20],
6563
+ 'sampling_frequency': frame.slice(21, 25),
6564
+ 'hardware_id': frame.slice(25, 28),
6565
+ 'report_rate': frame.slice(28, 32),
6566
+ 'tx_life_count': frame.slice(32, 36)
6498
6567
  }
6499
6568
  }
6500
6569
  }
@@ -6643,11 +6712,11 @@ function sensor_types(parent){
6643
6712
  if(payload[8] === 1){
6644
6713
  var deviceAddr = mac;
6645
6714
  var firmware = payload[1];
6646
- var hour = payload[11];
6647
- var minute = payload[12];
6648
- var expected_packets = payload[15];
6649
- var current_packet = payload[16];
6650
- var sdata_start = 17;
6715
+ var hour = payload[12];
6716
+ var minute = payload[13];
6717
+ var expected_packets = payload[16];
6718
+ var current_packet = payload[17];
6719
+ var sdata_start = 18;
6651
6720
 
6652
6721
  if(globalDevices.hasOwnProperty(deviceAddr) || expected_packets == 1){
6653
6722
  if(expected_packets != 1){
@@ -6677,46 +6746,10 @@ function sensor_types(parent){
6677
6746
  } else{
6678
6747
 
6679
6748
  var mode = payload[8];
6680
- var odr = payload[9];
6681
- var en_axis = payload[10] & 7;
6682
- var fsr = payload[10] >> 5;
6683
- var device_temp = msbLsb(payload[13], payload[14])/100;
6684
-
6685
-
6686
- switch(odr){
6687
- case 6:
6688
- odr = 50;
6689
- break;
6690
- case 7:
6691
- odr = 100;
6692
- break;
6693
- case 8:
6694
- odr = 200;
6695
- break;
6696
- case 9:
6697
- odr = 400;
6698
- break;
6699
- case 10:
6700
- odr = 800;
6701
- break;
6702
- case 11:
6703
- odr = 1600;
6704
- break;
6705
- case 12:
6706
- odr = 3200;
6707
- break;
6708
- case 13:
6709
- odr = 6400;
6710
- break;
6711
- case 14:
6712
- odr = 12800;
6713
- break;
6714
- case 15:
6715
- odr = 25600;
6716
- break;
6717
- default:
6718
- odr = 0;
6719
- }
6749
+ var odr = msbLsb(payload[9], payload[10])
6750
+ var en_axis = payload[11] & 7;
6751
+ var fsr = payload[11] >> 5;
6752
+ var device_temp = msbLsb(payload[14], payload[15])/100;
6720
6753
 
6721
6754
  globalDevices[deviceAddr] = {
6722
6755
  // stream_size: expected_packets,
@@ -6739,46 +6772,10 @@ function sensor_types(parent){
6739
6772
  }
6740
6773
  else{
6741
6774
  var mode = payload[8];
6742
- var odr = payload[9];
6743
- var en_axis = payload[10] & 7;
6744
- var fsr = payload[10] >> 5;
6745
- var device_temp = msbLsb(payload[13], payload[14])/100;
6746
-
6747
-
6748
- switch(odr){
6749
- case 6:
6750
- odr = 50;
6751
- break;
6752
- case 7:
6753
- odr = 100;
6754
- break;
6755
- case 8:
6756
- odr = 200;
6757
- break;
6758
- case 9:
6759
- odr = 400;
6760
- break;
6761
- case 10:
6762
- odr = 800;
6763
- break;
6764
- case 11:
6765
- odr = 1600;
6766
- break;
6767
- case 12:
6768
- odr = 3200;
6769
- break;
6770
- case 13:
6771
- odr = 6400;
6772
- break;
6773
- case 14:
6774
- odr = 12800;
6775
- break;
6776
- case 15:
6777
- odr = 25600;
6778
- break;
6779
- default:
6780
- odr = 0;
6781
- }
6775
+ var odr = msbLsb(payload[9], payload[10])
6776
+ var en_axis = payload[11] & 7;
6777
+ var fsr = payload[11] >> 5;
6778
+ var device_temp = msbLsb(payload[14], payload[15])/100;
6782
6779
 
6783
6780
  globalDevices[deviceAddr] = {
6784
6781
  // stream_size: expected_packets,
@@ -6913,46 +6910,10 @@ function sensor_types(parent){
6913
6910
  }else{
6914
6911
 
6915
6912
  var mode = payload[8];
6916
- var odr = payload[9];
6917
- var en_axis = payload[10] & 7;
6918
- var fsr = payload[10] >> 5;
6919
- var device_temp = msbLsb(payload[13], payload[14])/100;
6920
-
6921
-
6922
- switch(odr){
6923
- case 6:
6924
- odr = 50;
6925
- break;
6926
- case 7:
6927
- odr = 100;
6928
- break;
6929
- case 8:
6930
- odr = 200;
6931
- break;
6932
- case 9:
6933
- odr = 400;
6934
- break;
6935
- case 10:
6936
- odr = 800;
6937
- break;
6938
- case 11:
6939
- odr = 1600;
6940
- break;
6941
- case 12:
6942
- odr = 3200;
6943
- break;
6944
- case 13:
6945
- odr = 6400;
6946
- break;
6947
- case 14:
6948
- odr = 12800;
6949
- break;
6950
- case 15:
6951
- odr = 25600;
6952
- break;
6953
- default:
6954
- odr = 0;
6955
- }
6913
+ var odr = msbLsb(payload[9], payload[10])
6914
+ var en_axis = payload[11] & 7;
6915
+ var fsr = payload[11] >> 5;
6916
+ var device_temp = msbLsb(payload[14], payload[15])/100;
6956
6917
 
6957
6918
  globalDevices[deviceAddr] = {
6958
6919
  // stream_size: expected_packets,
@@ -7034,7 +6995,7 @@ function sensor_types(parent){
7034
6995
  z_peak_one_Hz: payload.slice(48, 50).reduce(msbLsb),
7035
6996
  z_peak_two_Hz: payload.slice(50, 52).reduce(msbLsb),
7036
6997
  z_peak_three_Hz: payload.slice(52, 54).reduce(msbLsb),
7037
- rpm: payload.slice(54, 56).reduce(msbLsb) / 10
6998
+ rpm: payload.slice(54, 56).reduce(msbLsb)
7038
6999
  };
7039
7000
  }
7040
7001
  // else{
@@ -7258,11 +7219,11 @@ function sensor_types(parent){
7258
7219
  if(payload[8] === 1){
7259
7220
  var deviceAddr = mac;
7260
7221
  var firmware = payload[1];
7261
- var hour = payload[11];
7262
- var minute = payload[12];
7263
- var expected_packets = payload[15];
7264
- var current_packet = payload[16];
7265
- var sdata_start = 17;
7222
+ var hour = payload[12];
7223
+ var minute = payload[13];
7224
+ var expected_packets = payload[16];
7225
+ var current_packet = payload[17];
7226
+ var sdata_start = 18;
7266
7227
 
7267
7228
  if(globalDevices.hasOwnProperty(deviceAddr) || expected_packets == 1){
7268
7229
  if(expected_packets != 1){
@@ -7291,45 +7252,10 @@ function sensor_types(parent){
7291
7252
  return;
7292
7253
  } else{
7293
7254
  var mode = payload[8];
7294
- var odr = payload[9];
7295
- var en_axis = payload[10] & 7;
7296
- var fsr = payload[10] >> 5;
7297
- var device_temp = msbLsb(payload[13], payload[14])/100;
7298
-
7299
- switch(odr){
7300
- case 6:
7301
- odr = 50;
7302
- break;
7303
- case 7:
7304
- odr = 100;
7305
- break;
7306
- case 8:
7307
- odr = 200;
7308
- break;
7309
- case 9:
7310
- odr = 400;
7311
- break;
7312
- case 10:
7313
- odr = 800;
7314
- break;
7315
- case 11:
7316
- odr = 1600;
7317
- break;
7318
- case 12:
7319
- odr = 3200;
7320
- break;
7321
- case 13:
7322
- odr = 6400;
7323
- break;
7324
- case 14:
7325
- odr = 12800;
7326
- break;
7327
- case 15:
7328
- odr = 25600;
7329
- break;
7330
- default:
7331
- odr = 0;
7332
- }
7255
+ var odr = msbLsb(payload[9], payload[10])
7256
+ var en_axis = payload[11] & 7;
7257
+ var fsr = payload[11] >> 5;
7258
+ var device_temp = msbLsb(payload[14], payload[15])/100;
7333
7259
 
7334
7260
  globalDevices[deviceAddr] = {
7335
7261
  // stream_size: expected_packets,
@@ -7352,76 +7278,40 @@ function sensor_types(parent){
7352
7278
  }
7353
7279
  else{
7354
7280
  var mode = payload[8];
7355
- var odr = payload[9];
7356
- var en_axis = payload[10] & 7;
7357
- var fsr = payload[10] >> 5;
7358
- var device_temp = msbLsb(payload[13], payload[14])/100;
7281
+ var odr = msbLsb(payload[9], payload[10])
7282
+ var en_axis = payload[11] & 7;
7283
+ var fsr = payload[11] >> 5;
7284
+ var device_temp = msbLsb(payload[14], payload[15])/100;
7285
+
7286
+ globalDevices[deviceAddr] = {
7287
+ // stream_size: expected_packets,
7288
+ data: {},
7289
+ odr: odr,
7290
+ mo: mode,
7291
+ en_axis: en_axis,
7292
+ fsr: fsr,
7293
+ hour: hour,
7294
+ minute: minute,
7295
+ device_temp: device_temp,
7296
+ }
7297
+ globalDevices[deviceAddr].data[current_packet] = payload.slice(sdata_start);
7298
+ }
7299
+ if(Object.keys(globalDevices[deviceAddr].data).length == expected_packets){
7300
+ var raw_data = new Array();
7301
+
7302
+ for(const packet in globalDevices[deviceAddr].data){
7303
+ raw_data = raw_data.concat(globalDevices[deviceAddr].data[packet]);
7304
+ }
7305
+ var label = 0;
7359
7306
 
7307
+ var fft = new Array();
7308
+ var fft_concat = {};
7360
7309
 
7361
- switch(odr){
7362
- case 6:
7363
- odr = 50;
7364
- break;
7365
- case 7:
7366
- odr = 100;
7367
- break;
7368
- case 8:
7369
- odr = 200;
7370
- break;
7371
- case 9:
7372
- odr = 400;
7373
- break;
7374
- case 10:
7375
- odr = 800;
7376
- break;
7377
- case 11:
7378
- odr = 1600;
7379
- break;
7380
- case 12:
7381
- odr = 3200;
7382
- break;
7383
- case 13:
7384
- odr = 6400;
7385
- break;
7386
- case 14:
7387
- odr = 12800;
7388
- break;
7389
- case 15:
7390
- odr = 25600;
7391
- break;
7392
- default:
7393
- odr = 0;
7394
- }
7395
-
7396
- globalDevices[deviceAddr] = {
7397
- // stream_size: expected_packets,
7398
- data: {},
7399
- odr: odr,
7400
- mo: mode,
7401
- en_axis: en_axis,
7402
- fsr: fsr,
7403
- hour: hour,
7404
- minute: minute,
7405
- device_temp: device_temp,
7406
- }
7407
- globalDevices[deviceAddr].data[current_packet] = payload.slice(sdata_start);
7408
- }
7409
- if(Object.keys(globalDevices[deviceAddr].data).length == expected_packets){
7410
- var raw_data = new Array();
7411
-
7412
- for(const packet in globalDevices[deviceAddr].data){
7413
- raw_data = raw_data.concat(globalDevices[deviceAddr].data[packet]);
7414
- }
7415
- var label = 0;
7416
-
7417
- var fft = new Array();
7418
- var fft_concat = {};
7419
-
7420
- var en_axis_data = {};
7421
- switch (globalDevices[deviceAddr].en_axis){
7422
- case 1:
7423
- en_axis_data.x_offset = 0;
7424
- en_axis_data.increment = 2;
7310
+ var en_axis_data = {};
7311
+ switch (globalDevices[deviceAddr].en_axis){
7312
+ case 1:
7313
+ en_axis_data.x_offset = 0;
7314
+ en_axis_data.increment = 2;
7425
7315
  break;
7426
7316
  case 2:
7427
7317
  en_axis_data.y_offset = 0;
@@ -7537,46 +7427,10 @@ function sensor_types(parent){
7537
7427
  }
7538
7428
  }else{
7539
7429
  var mode = payload[8];
7540
- var odr = payload[9];
7541
- var en_axis = payload[10] & 7;
7542
- var fsr = payload[10] >> 5;
7543
- var device_temp = msbLsb(payload[13], payload[14])/100;
7544
-
7545
-
7546
- switch(odr){
7547
- case 6:
7548
- odr = 50;
7549
- break;
7550
- case 7:
7551
- odr = 100;
7552
- break;
7553
- case 8:
7554
- odr = 200;
7555
- break;
7556
- case 9:
7557
- odr = 400;
7558
- break;
7559
- case 10:
7560
- odr = 800;
7561
- break;
7562
- case 11:
7563
- odr = 1600;
7564
- break;
7565
- case 12:
7566
- odr = 3200;
7567
- break;
7568
- case 13:
7569
- odr = 6400;
7570
- break;
7571
- case 14:
7572
- odr = 12800;
7573
- break;
7574
- case 15:
7575
- odr = 25600;
7576
- break;
7577
- default:
7578
- odr = 0;
7579
- }
7430
+ var odr = msbLsb(payload[9], payload[10])
7431
+ var en_axis = payload[11] & 7;
7432
+ var fsr = payload[11] >> 5;
7433
+ var device_temp = msbLsb(payload[14], payload[15])/100;
7580
7434
 
7581
7435
  globalDevices[deviceAddr] = {
7582
7436
  // stream_size: expected_packets,
@@ -7701,7 +7555,7 @@ function sensor_types(parent){
7701
7555
  z1_peak_one_Hz: payload.slice(48, 50).reduce(msbLsb),
7702
7556
  z1_peak_two_Hz: payload.slice(50, 52).reduce(msbLsb),
7703
7557
  z1_peak_three_Hz: payload.slice(52, 54).reduce(msbLsb),
7704
- rpm_1: payload.slice(54, 56).reduce(msbLsb) / 10,
7558
+ rpm_1: payload.slice(54, 56).reduce(msbLsb),
7705
7559
 
7706
7560
  s2_odr: odr2,
7707
7561
  s2_temperature: signInt(payload.slice(55, 57).reduce(msbLsb), 16) / 100,
@@ -7729,7 +7583,7 @@ function sensor_types(parent){
7729
7583
  z2_peak_one_Hz: payload.slice(93, 95).reduce(msbLsb),
7730
7584
  z2_peak_two_Hz: payload.slice(95, 97).reduce(msbLsb),
7731
7585
  z2_peak_three_Hz: payload.slice(97, 99).reduce(msbLsb),
7732
- rpm_2: payload.slice(99, 101).reduce(msbLsb) / 10
7586
+ rpm_2: payload.slice(99, 101).reduce(msbLsb)
7733
7587
  };
7734
7588
  }
7735
7589
  // else{
@@ -8058,11 +7912,11 @@ function sensor_types(parent){
8058
7912
  if(payload[8] === 1){
8059
7913
  var deviceAddr = mac;
8060
7914
  var firmware = payload[1];
8061
- var hour = payload[11];
8062
- var minute = payload[12];
8063
- var expected_packets = payload[15];
8064
- var current_packet = payload[16];
8065
- var sdata_start = 17;
7915
+ var hour = payload[12];
7916
+ var minute = payload[13];
7917
+ var expected_packets = payload[16];
7918
+ var current_packet = payload[17];
7919
+ var sdata_start = 18;
8066
7920
 
8067
7921
  if(globalDevices.hasOwnProperty(deviceAddr) || expected_packets == 1){
8068
7922
  if(expected_packets != 1){
@@ -8092,46 +7946,10 @@ function sensor_types(parent){
8092
7946
  } else{
8093
7947
 
8094
7948
  var mode = payload[8];
8095
- var odr = payload[9];
8096
- var en_axis = payload[10] & 7;
8097
- var fsr = payload[10] >> 5;
8098
- var device_temp = msbLsb(payload[13], payload[14])/100;
8099
-
8100
-
8101
- switch(odr){
8102
- case 6:
8103
- odr = 50;
8104
- break;
8105
- case 7:
8106
- odr = 100;
8107
- break;
8108
- case 8:
8109
- odr = 200;
8110
- break;
8111
- case 9:
8112
- odr = 400;
8113
- break;
8114
- case 10:
8115
- odr = 800;
8116
- break;
8117
- case 11:
8118
- odr = 1600;
8119
- break;
8120
- case 12:
8121
- odr = 3200;
8122
- break;
8123
- case 13:
8124
- odr = 6400;
8125
- break;
8126
- case 14:
8127
- odr = 12800;
8128
- break;
8129
- case 15:
8130
- odr = 25600;
8131
- break;
8132
- default:
8133
- odr = 0;
8134
- }
7949
+ var odr = msbLsb(payload[9], payload[10])
7950
+ var en_axis = payload[11] & 7;
7951
+ var fsr = payload[11] >> 5;
7952
+ var device_temp = msbLsb(payload[14], payload[15])/100;
8135
7953
 
8136
7954
  globalDevices[deviceAddr] = {
8137
7955
  // stream_size: expected_packets,
@@ -8154,46 +7972,10 @@ function sensor_types(parent){
8154
7972
  }
8155
7973
  else{
8156
7974
  var mode = payload[8];
8157
- var odr = payload[9];
8158
- var en_axis = payload[10] & 7;
8159
- var fsr = payload[10] >> 5;
8160
- var device_temp = msbLsb(payload[13], payload[14])/100;
8161
-
8162
-
8163
- switch(odr){
8164
- case 6:
8165
- odr = 50;
8166
- break;
8167
- case 7:
8168
- odr = 100;
8169
- break;
8170
- case 8:
8171
- odr = 200;
8172
- break;
8173
- case 9:
8174
- odr = 400;
8175
- break;
8176
- case 10:
8177
- odr = 800;
8178
- break;
8179
- case 11:
8180
- odr = 1600;
8181
- break;
8182
- case 12:
8183
- odr = 3200;
8184
- break;
8185
- case 13:
8186
- odr = 6400;
8187
- break;
8188
- case 14:
8189
- odr = 12800;
8190
- break;
8191
- case 15:
8192
- odr = 25600;
8193
- break;
8194
- default:
8195
- odr = 0;
8196
- }
7975
+ var odr = msbLsb(payload[9], payload[10])
7976
+ var en_axis = payload[11] & 7;
7977
+ var fsr = payload[11] >> 5;
7978
+ var device_temp = msbLsb(payload[14], payload[15])/100;
8197
7979
 
8198
7980
  globalDevices[deviceAddr] = {
8199
7981
  // stream_size: expected_packets,
@@ -8331,46 +8113,10 @@ function sensor_types(parent){
8331
8113
  }else{
8332
8114
 
8333
8115
  var mode = payload[8];
8334
- var odr = payload[9];
8335
- var en_axis = payload[10] & 7;
8336
- var fsr = payload[10] >> 5;
8337
- var device_temp = msbLsb(payload[13], payload[14])/100;
8338
-
8339
-
8340
- switch(odr){
8341
- case 6:
8342
- odr = 50;
8343
- break;
8344
- case 7:
8345
- odr = 100;
8346
- break;
8347
- case 8:
8348
- odr = 200;
8349
- break;
8350
- case 9:
8351
- odr = 400;
8352
- break;
8353
- case 10:
8354
- odr = 800;
8355
- break;
8356
- case 11:
8357
- odr = 1600;
8358
- break;
8359
- case 12:
8360
- odr = 3200;
8361
- break;
8362
- case 13:
8363
- odr = 6400;
8364
- break;
8365
- case 14:
8366
- odr = 12800;
8367
- break;
8368
- case 15:
8369
- odr = 25600;
8370
- break;
8371
- default:
8372
- odr = 0;
8373
- }
8116
+ var odr = msbLsb(payload[9], payload[10])
8117
+ var en_axis = payload[11] & 7;
8118
+ var fsr = payload[11] >> 5;
8119
+ var device_temp = msbLsb(payload[14], payload[15])/100;
8374
8120
 
8375
8121
  globalDevices[deviceAddr] = {
8376
8122
  // stream_size: expected_packets,
@@ -8453,7 +8199,7 @@ function sensor_types(parent){
8453
8199
  z_peak_one_Hz: payload.slice(56, 58).reduce(msbLsb),
8454
8200
  z_peak_two_Hz: payload.slice(58, 60).reduce(msbLsb),
8455
8201
  z_peak_three_Hz: payload.slice(60, 62).reduce(msbLsb),
8456
- rpm: payload.slice(62, 64).reduce(msbLsb) / 10
8202
+ rpm: payload.slice(62, 64).reduce(msbLsb)
8457
8203
  };
8458
8204
  }
8459
8205
  // else{
@@ -8672,11 +8418,11 @@ function sensor_types(parent){
8672
8418
  if(payload[8] === 1){
8673
8419
  var deviceAddr = mac;
8674
8420
  var firmware = payload[1];
8675
- var hour = payload[11];
8676
- var minute = payload[12];
8677
- var expected_packets = payload[15];
8678
- var current_packet = payload[16];
8679
- var sdata_start = 17;
8421
+ var hour = payload[12];
8422
+ var minute = payload[13];
8423
+ var expected_packets = payload[16];
8424
+ var current_packet = payload[17];
8425
+ var sdata_start = 18;
8680
8426
 
8681
8427
  if(globalDevices.hasOwnProperty(deviceAddr) || expected_packets == 1){
8682
8428
  if(expected_packets != 1){
@@ -8706,46 +8452,10 @@ function sensor_types(parent){
8706
8452
  } else{
8707
8453
 
8708
8454
  var mode = payload[8];
8709
- var odr = payload[9];
8710
- var en_axis = payload[10] & 7;
8711
- var fsr = payload[10] >> 5;
8712
- var device_temp = msbLsb(payload[13], payload[14])/100;
8713
-
8714
-
8715
- switch(odr){
8716
- case 6:
8717
- odr = 50;
8718
- break;
8719
- case 7:
8720
- odr = 100;
8721
- break;
8722
- case 8:
8723
- odr = 200;
8724
- break;
8725
- case 9:
8726
- odr = 400;
8727
- break;
8728
- case 10:
8729
- odr = 800;
8730
- break;
8731
- case 11:
8732
- odr = 1600;
8733
- break;
8734
- case 12:
8735
- odr = 3200;
8736
- break;
8737
- case 13:
8738
- odr = 6400;
8739
- break;
8740
- case 14:
8741
- odr = 12800;
8742
- break;
8743
- case 15:
8744
- odr = 25600;
8745
- break;
8746
- default:
8747
- odr = 0;
8748
- }
8455
+ var odr = msbLsb(payload[9], payload[10])
8456
+ var en_axis = payload[11] & 7;
8457
+ var fsr = payload[11] >> 5;
8458
+ var device_temp = msbLsb(payload[14], payload[15])/100;
8749
8459
 
8750
8460
  globalDevices[deviceAddr] = {
8751
8461
  // stream_size: expected_packets,
@@ -8768,46 +8478,10 @@ function sensor_types(parent){
8768
8478
  }
8769
8479
  else{
8770
8480
  var mode = payload[8];
8771
- var odr = payload[9];
8772
- var en_axis = payload[10] & 7;
8773
- var fsr = payload[10] >> 5;
8774
- var device_temp = msbLsb(payload[13], payload[14])/100;
8775
-
8776
-
8777
- switch(odr){
8778
- case 6:
8779
- odr = 50;
8780
- break;
8781
- case 7:
8782
- odr = 100;
8783
- break;
8784
- case 8:
8785
- odr = 200;
8786
- break;
8787
- case 9:
8788
- odr = 400;
8789
- break;
8790
- case 10:
8791
- odr = 800;
8792
- break;
8793
- case 11:
8794
- odr = 1600;
8795
- break;
8796
- case 12:
8797
- odr = 3200;
8798
- break;
8799
- case 13:
8800
- odr = 6400;
8801
- break;
8802
- case 14:
8803
- odr = 12800;
8804
- break;
8805
- case 15:
8806
- odr = 25600;
8807
- break;
8808
- default:
8809
- odr = 0;
8810
- }
8481
+ var odr = msbLsb(payload[9], payload[10])
8482
+ var en_axis = payload[11] & 7;
8483
+ var fsr = payload[11] >> 5;
8484
+ var device_temp = msbLsb(payload[14], payload[15])/100;
8811
8485
 
8812
8486
  globalDevices[deviceAddr] = {
8813
8487
  // stream_size: expected_packets,
@@ -8941,46 +8615,10 @@ function sensor_types(parent){
8941
8615
  }else{
8942
8616
 
8943
8617
  var mode = payload[8];
8944
- var odr = payload[9];
8945
- var en_axis = payload[10] & 7;
8946
- var fsr = payload[10] >> 5;
8947
- var device_temp = msbLsb(payload[13], payload[14])/100;
8948
-
8949
-
8950
- switch(odr){
8951
- case 6:
8952
- odr = 50;
8953
- break;
8954
- case 7:
8955
- odr = 100;
8956
- break;
8957
- case 8:
8958
- odr = 200;
8959
- break;
8960
- case 9:
8961
- odr = 400;
8962
- break;
8963
- case 10:
8964
- odr = 800;
8965
- break;
8966
- case 11:
8967
- odr = 1600;
8968
- break;
8969
- case 12:
8970
- odr = 3200;
8971
- break;
8972
- case 13:
8973
- odr = 6400;
8974
- break;
8975
- case 14:
8976
- odr = 12800;
8977
- break;
8978
- case 15:
8979
- odr = 25600;
8980
- break;
8981
- default:
8982
- odr = 0;
8983
- }
8618
+ var odr = msbLsb(payload[9], payload[10])
8619
+ var en_axis = payload[11] & 7;
8620
+ var fsr = payload[11] >> 5;
8621
+ var device_temp = msbLsb(payload[14], payload[15])/100;
8984
8622
 
8985
8623
  globalDevices[deviceAddr] = {
8986
8624
  // stream_size: expected_packets,
@@ -9273,9 +8911,9 @@ function sensor_types(parent){
9273
8911
  name: 'Dual Pressure and Temperature Sensor',
9274
8912
  parse: (d) => {
9275
8913
  return{
9276
- pressure_s1: signInt(d.slice(0, 4).reduce(msbLsb)),
8914
+ pressure_s1: signInt(d.slice(0, 4).reduce(msbLsb)) / 100,
9277
8915
  temperature_s1: signInt(d.slice(4, 6).reduce(msbLsb))/100,
9278
- pressure_s2: signInt(d.slice(6, 10).reduce(msbLsb)),
8916
+ pressure_s2: signInt(d.slice(6, 10).reduce(msbLsb)) / 100,
9279
8917
  temperature_s2: signInt(d.slice(10, 12).reduce(msbLsb))/100
9280
8918
  };
9281
8919
  },
@@ -9335,9 +8973,7 @@ function sensor_types(parent){
9335
8973
  'auto_check_interval': frame.slice(14, 16).reduce(msbLsb) + " Sec.",
9336
8974
  'press_auto_check_percent': frame[17] + " %",
9337
8975
  'temp_auto_check_percent': frame[17] + " %",
9338
- 'hardware_id_1': frame[18],
9339
- 'hardware_id_2': frame[19],
9340
- 'hardware_id_3': frame[20],
8976
+ 'hardware_id': frame.slice(18, 21),
9341
8977
  'sample_rate': frame.slice(21, 25).reduce(msbLsb) + " Sec.",
9342
8978
  'tx_life_counter': frame.slice(25, 29).reduce(msbLsb),
9343
8979
  'machine_values': {
@@ -9347,9 +8983,7 @@ function sensor_types(parent){
9347
8983
  'auto_check_interval': frame.slice(14, 16),
9348
8984
  'press_auto_check_percent': frame[16],
9349
8985
  'temp_auto_check_percent': frame[17],
9350
- 'hardware_id_1': frame[18],
9351
- 'hardware_id_2': frame[19],
9352
- 'hardware_id_3': frame[20],
8986
+ 'hardware_id': frame.slice(18, 21),
9353
8987
  'sample_rate': frame.slice(21, 25),
9354
8988
  'tx_life_counter': frame.slice(25, 29),
9355
8989
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ncd-io/node-red-enterprise-sensors",
3
- "version": "1.1.1",
3
+ "version": "1.1.2",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/wireless.html CHANGED
@@ -324,8 +324,10 @@
324
324
  led_velocity_threshold_84_active: {value: ""},
325
325
  led_velocity_threshold_84: {},
326
326
 
327
- acceleration_interrupt_threshold_84_active: {value: ""},
328
- acceleration_interrupt_threshold_84: {},
327
+ acceleration_interrupt_threshold_p1_84_active: {value: ""},
328
+ acceleration_interrupt_threshold_p1_84: {},
329
+ acceleration_interrupt_threshold_p2_84_active: {value: ""},
330
+ acceleration_interrupt_threshold_p2_84: {},
329
331
 
330
332
  set_rtc_101:{value:0},
331
333
  set_rtc_202:{value:0},
@@ -616,7 +618,10 @@
616
618
  number_of_samples_thermocouple_active:{value: ""},
617
619
  number_of_samples_thermocouple:{value:0},
618
620
  measurement_type_thermocouple_active:{value: ""},
619
- measurement_type_thermocouple:{value:0}
621
+ measurement_type_thermocouple:{value:0},
622
+
623
+ mode_97_active: {value: ""},
624
+ mode_97: {value: 0}
620
625
  },
621
626
  inputs: 0,
622
627
  outputs: 1,
@@ -1556,7 +1561,7 @@
1556
1561
  </div>
1557
1562
  </div>
1558
1563
  </div>
1559
- <div class="ncd-dependent" data-sensor-84 data-sensor-110 data-sensor-111 data-sensor-112 data-sensor-114 data-sensor-519 data-sensor-537>
1564
+ <div class="ncd-dependent" data-sensor-84 data-sensor-114 data-sensor-519 data-sensor-537>
1560
1565
  <hr>
1561
1566
  <div class="form-row ncd-active-check">
1562
1567
  <strong>LED Alert Mode</strong>
@@ -1601,6 +1606,9 @@
1601
1606
  <input type="text" id="node-input-led_velocity_threshold_84" placeholder="10" value="10">
1602
1607
  </div>
1603
1608
  </div>
1609
+ </div>
1610
+ <div class="ncd-dependent" data-sensor-110 data-sensor-111 data-sensor-112 data-sensor-114>
1611
+ <hr>
1604
1612
  <div class="form-row ncd-active-check">
1605
1613
  <div>
1606
1614
  <strong>Set Acceleration Wake/Interrupt Threshold</strong>
@@ -1608,16 +1616,32 @@
1608
1616
  <p>This will be an integer value that increments the interrupt threshold by 50mg. A value of 1 means turn the wake the sensor if acceleration is above 50mg, 2 means 100mg, etc.</p>
1609
1617
  </div>
1610
1618
  <div>
1611
- <label for="node-input-acceleration_interrupt_threshold_84_active"><i class="icon-tag"></i> Auto Config</label>
1612
- <input type="checkbox" id="node-input-acceleration_interrupt_threshold_84_active" class="ncd-config-toggle" data-target-id="node-input-acceleration_interrupt_threshold_84" value="1">
1619
+ <label for="node-input-acceleration_interrupt_threshold_p1_84_active"><i class="icon-tag"></i> Auto Config</label>
1620
+ <input type="checkbox" id="node-input-acceleration_interrupt_threshold_p1_84_active" class="ncd-config-toggle" data-target-id="node-input-acceleration_interrupt_threshold_p1_84" value="1">
1613
1621
  </div>
1614
1622
  <div>
1615
- <label for="node-input-acceleration_interrupt_threshold_84"><i class="icon-tag"></i> Value</label>
1616
- <input type="text" id="node-input-acceleration_interrupt_threshold_84" placeholder="10" value="10">
1623
+ <label for="node-input-acceleration_interrupt_threshold_p1_84"><i class="icon-tag"></i> Value</label>
1624
+ <input type="text" id="node-input-acceleration_interrupt_threshold_p1_84" placeholder="10" value="10">
1625
+ </div>
1626
+ </div>
1627
+ </div>
1628
+ <div class="ncd-dependent" data-sensor-111>
1629
+ <div class="form-row ncd-active-check">
1630
+ <div>
1631
+ <strong>Set Acceleration Wake/Interrupt Threshold Probe 2</strong>
1632
+ <p>Set a breakpoint for sensor to wake up and broadcast readings. This is an interrupt based configuration ideal for devices with minimal workload/uptime.</p>
1633
+ <p>This will be an integer value that increments the interrupt threshold by 50mg. A value of 1 means turn the wake the sensor if acceleration is above 50mg, 2 means 100mg, etc.</p>
1634
+ </div>
1635
+ <div>
1636
+ <label for="node-input-acceleration_interrupt_threshold_p2_84_active"><i class="icon-tag"></i> Auto Config</label>
1637
+ <input type="checkbox" id="node-input-acceleration_interrupt_threshold_p2_84_active" class="ncd-config-toggle" data-target-id="node-input-acceleration_interrupt_threshold_p2_84" value="1">
1638
+ </div>
1639
+ <div>
1640
+ <label for="node-input-acceleration_interrupt_threshold_p2_84"><i class="icon-tag"></i> Value</label>
1641
+ <input type="text" id="node-input-acceleration_interrupt_threshold_p2_84" placeholder="10" value="10">
1617
1642
  </div>
1618
1643
  </div>
1619
1644
  </div>
1620
-
1621
1645
  <div class="ncd-dependent" data-sensor-80 data-sensor-81 data-sensor-82 data-sensor-84 data-sensor-180 data-sensor-181 data-sensor-519 data-sensor-537 data-sensor-538>
1622
1646
  <hr>
1623
1647
  <div class="form-row ncd-active-check">
@@ -3672,6 +3696,23 @@
3672
3696
  </div>
3673
3697
  </div>
3674
3698
  <div class="ncd-dependent" data-sensor-97 data-sensor-98>
3699
+ <hr>
3700
+ <div class="form-row ncd-active-check">
3701
+ <strong>Set Mode</strong>
3702
+ <p> WARNING: If Mode is set to Raw it is recommended to also set the Destination Address configuration to the address of your Receiver/Gateway.</p>
3703
+ <div>
3704
+ <label for="node-input-mode_97_active"><i class="icon-tag"></i>Active:</label>
3705
+ <input type="checkbox" id="node-input-mode_97_active" class="ncd-config-toggle" data-target-id="node-input-mode_97" value="1">
3706
+ </div>
3707
+ <div>
3708
+ <label for="node-input-mode_97"><i class="icon-tag"></i>Value:</label>
3709
+ <select id="node-input-mode_97">
3710
+ <option value="0">Processed</option>
3711
+ <option value="1">Raw</option>
3712
+ <option value="2">Processed + Raw on demand</option>
3713
+ </select>
3714
+ </div>
3715
+ </div>
3675
3716
  <div class="form-row ncd-active-check">
3676
3717
  <strong>Set Raw Length</strong>
3677
3718
  <div>
package/wireless.js CHANGED
@@ -1690,6 +1690,9 @@ module.exports = function(RED) {
1690
1690
  if(config.boot_up_time_97_active){
1691
1691
  promises.boot_up_time_97 = node.config_gateway.config_set_boot_up_time_97(mac, parseInt(config.boot_up_time_97));
1692
1692
  }
1693
+ if(config.mode_97_active){
1694
+ promises.mode = node.config_gateway.config_set_mode_97(mac, parseInt(config.mode_97));
1695
+ }
1693
1696
  break;
1694
1697
  case 98:
1695
1698
  if(config.raw_length_97_active){
@@ -1704,6 +1707,9 @@ module.exports = function(RED) {
1704
1707
  if(config.boot_up_time_97_active){
1705
1708
  promises.boot_up_time_97 = node.config_gateway.config_set_boot_up_time_97(mac, parseInt(config.boot_up_time_97));
1706
1709
  }
1710
+ if(config.mode_97_active){
1711
+ promises.mode = node.config_gateway.config_set_mode_97(mac, parseInt(config.mode_97));
1712
+ }
1707
1713
  // if(config.sensor_boot_time_420ma_active){
1708
1714
  // promises.sensor_boot_time_420ma = node.config_gateway.config_set_sensor_boot_time_420ma(mac, parseInt(config.sensor_boot_time_420ma));
1709
1715
  // }
@@ -1935,6 +1941,9 @@ module.exports = function(RED) {
1935
1941
  if(config.fly_interval_110_active){
1936
1942
  promises.fly_interval_110 = node.config_gateway.config_set_fly_interval_110(mac, parseInt(config.fly_interval_110));
1937
1943
  }
1944
+ if(config.acceleration_interrupt_threshold_p1_84_active){
1945
+ promises.acceleration_interrupt_threshold_p1_84 = node.config_gateway.config_set_acceleration_interrupt_threshold_p1_84(mac, parseInt(config.acceleration_interrupt_threshold_p1_84));
1946
+ }
1938
1947
  break;
1939
1948
  case 111:
1940
1949
  if(config.output_data_rate_p1_81_active){
@@ -2012,6 +2021,12 @@ module.exports = function(RED) {
2012
2021
  if(config.fly_interval_110_active){
2013
2022
  promises.fly_interval_110 = node.config_gateway.config_set_fly_interval_110(mac, parseInt(config.fly_interval_110));
2014
2023
  }
2024
+ if(config.acceleration_interrupt_threshold_p1_84_active){
2025
+ promises.acceleration_interrupt_threshold_p1_84 = node.config_gateway.config_set_acceleration_interrupt_threshold_p1_84(mac, parseInt(config.acceleration_interrupt_threshold_p1_84));
2026
+ }
2027
+ if(config.acceleration_interrupt_threshold_p2_84_active){
2028
+ promises.acceleration_interrupt_threshold_p2_84 = node.config_gateway.config_set_acceleration_interrupt_threshold_p2_84(mac, parseInt(config.acceleration_interrupt_threshold_p2_84));
2029
+ }
2015
2030
  break;
2016
2031
  case 112:
2017
2032
  if(config.current_calibration_82_active){
@@ -2077,6 +2092,9 @@ module.exports = function(RED) {
2077
2092
  if(config.fly_interval_110_active){
2078
2093
  promises.fly_interval_110 = node.config_gateway.config_set_fly_interval_110(mac, parseInt(config.fly_interval_110));
2079
2094
  }
2095
+ if(config.acceleration_interrupt_threshold_p1_84_active){
2096
+ promises.acceleration_interrupt_threshold_p1_84 = node.config_gateway.config_set_acceleration_interrupt_threshold_p1_84(mac, parseInt(config.acceleration_interrupt_threshold_p1_84));
2097
+ }
2080
2098
  break;
2081
2099
  case 114:
2082
2100
  if(config.output_data_rate_101_active){
@@ -2124,8 +2142,8 @@ module.exports = function(RED) {
2124
2142
  if(config.led_velocity_threshold_84_active){
2125
2143
  promises.led_velocity_threshold_84 = node.config_gateway.config_set_led_velocity_threshold_84(mac, parseInt(config.led_velocity_threshold_84));
2126
2144
  }
2127
- if(config.acceleration_interrupt_threshold_84_active){
2128
- promises.acceleration_interrupt_threshold_84 = node.config_gateway.config_set_acceleration_interrupt_threshold_84(mac, parseInt(config.acceleration_interrupt_threshold_84));
2145
+ if(config.acceleration_interrupt_threshold_p1_84_active){
2146
+ promises.acceleration_interrupt_threshold_p1_84 = node.config_gateway.config_set_acceleration_interrupt_threshold_p1_84(mac, parseInt(config.acceleration_interrupt_threshold_p1_84));
2129
2147
  }
2130
2148
  if(config.payload_length_80_active){
2131
2149
  promises.payload_length_80 = node.config_gateway.config_set_payload_length_80(mac, parseInt(config.payload_length_80));