@ncd-io/node-red-enterprise-sensors 1.0.8 → 1.0.9

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.
@@ -1211,9 +1211,9 @@ module.exports = class WirelessSensor{
1211
1211
  console.log(packet);
1212
1212
  return this.config_send(sensor_mac, packet);
1213
1213
  }
1214
- config_clear_timers_108(sensor_mac){
1214
+ config_set_clear_timers_108(sensor_mac, value){
1215
1215
  console.log('config_clear_timers_108');
1216
- var packet = [244, 36, 0, 0, 0, 7];
1216
+ var packet = [244, 36, 0, 0, 0, value];
1217
1217
  console.log(packet);
1218
1218
  return this.config_send(sensor_mac, packet);
1219
1219
  }
@@ -1255,6 +1255,45 @@ module.exports = class WirelessSensor{
1255
1255
  console.log(packet);
1256
1256
  return this.config_send(sensor_mac, packet);
1257
1257
  }
1258
+ config_set_qos_108(sensor_mac, value){
1259
+ console.log('config_set_qos_108');
1260
+ var packet = [247, 52, 0, 0, 0, value];
1261
+ console.log(packet);
1262
+ return this.config_send(sensor_mac, packet);
1263
+ }
1264
+ config_set_deactivate_activate_accelero_108(sensor_mac, value){
1265
+ console.log('config_set_deactivate_activate_accelero_108');
1266
+ var packet = [244, 37, 0, 0, 0, value];
1267
+ console.log(packet);
1268
+ return this.config_send(sensor_mac, packet);
1269
+ }
1270
+ config_set_reset_timeout_108(sensor_mac, value){
1271
+ console.log('config_set_deactivate_activate_accelero_108');
1272
+ var packet = [244, 49, 0, 0, 0];
1273
+ let timeout = int2Bytes((value), 2);
1274
+ packet.push(...timeout);
1275
+ console.log(packet);
1276
+ return this.config_send(sensor_mac, packet);
1277
+ }
1278
+ config_set_reset_mode_to_disabled_108(sensor_mac, value){
1279
+ console.log('config_set_reset_mode_to_disabled_108');
1280
+ var packet = [244, 51, 0, 0, 0, value];
1281
+ console.log(packet);
1282
+ return this.config_send(sensor_mac, packet);
1283
+ }
1284
+ config_set_rtc_108(sensor_mac){
1285
+ console.log('config_set_rtc_108');
1286
+ var date = new Date();
1287
+ var packet = [244, 53, 0, 0, 0, date.getHours(), date.getMinutes(), date.getSeconds()];
1288
+ console.log(packet);
1289
+ return this.config_send(sensor_mac, packet);
1290
+ }
1291
+ config_set_rtc_interval_108(sensor_mac, value){
1292
+ console.log('config_set_rtc_interval_108');
1293
+ var packet = [244, 55, 0, 0, 0, value];
1294
+ console.log(packet);
1295
+ return this.config_send(sensor_mac, packet);
1296
+ }
1258
1297
  config_set_sensor_boot_time_420ma(sensor_mac, value){
1259
1298
  console.log('sensor_boot_time_420ma');
1260
1299
  var packet = [244, 68, 0, 0, 45, value];
@@ -1425,11 +1464,11 @@ module.exports = class WirelessSensor{
1425
1464
  console.log(packet);
1426
1465
  return this.config_send(sensor_mac, packet);
1427
1466
  }
1428
- config_set_auto_raw_destination_110(sensor_mac, value){
1467
+ config_set_auto_raw_destination_110(sensor_mac, modem_mac){
1429
1468
  console.log('config_set_auto_raw_destination_110');
1430
1469
  var packet = [244, 79, 0, 0, 80, 72];
1431
- let value_dest = int2Bytes((value), 4);
1432
- packet.push(...value_dest);
1470
+ let bytes = int2Bytes((modem_mac), 4);
1471
+ packet.push(...bytes);
1433
1472
  console.log(packet);
1434
1473
  return this.config_send(sensor_mac, packet);
1435
1474
  }
@@ -2328,11 +2367,11 @@ function sensor_types(parent){
2328
2367
  }
2329
2368
  },
2330
2369
  '19': {
2331
- name: '2-channel 24-bit Current Monitor',
2370
+ name: '2-Channel Current Monitor',
2332
2371
  parse: (d) => {
2333
2372
  return {
2334
2373
  channel_1: d.slice(0, 3).reduce(msbLsb),
2335
- channel_2: d.slice(4, 7).reduce(msbLsb),
2374
+ channel_2: d.slice(4, 7).reduce(msbLsb)
2336
2375
  };
2337
2376
  }
2338
2377
  },
@@ -2416,7 +2455,7 @@ function sensor_types(parent){
2416
2455
  }
2417
2456
  },
2418
2457
  '28': {
2419
- 'name': '24-Bit 3-Channel Current Monitor',
2458
+ 'name': '3-Phase Current Sensor',
2420
2459
  parse: (d) => {
2421
2460
  return {
2422
2461
  channel_1: d.slice(0, 3).reduce(msbLsb),
@@ -3639,7 +3678,6 @@ function sensor_types(parent){
3639
3678
  'mode': frame_data.mode,
3640
3679
  'odr_1': frame_data.odr_1+'Hz',
3641
3680
  'sampling_duration_1': frame_data.sampling_duration_1,
3642
- 'sampling_duration_2': frame_data.sampling_duration_2,
3643
3681
  'filter_status': frame_data.filter_status,
3644
3682
  'lpf_coeff_1': frame_data.lpf_coeff_1,
3645
3683
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -3659,7 +3697,6 @@ function sensor_types(parent){
3659
3697
  'mode': frame[16],
3660
3698
  'odr_1': frame[17],
3661
3699
  'sampling_duration_1': frame[19],
3662
- 'sampling_duration_2': frame[20],
3663
3700
  'filter_status': frame[21],
3664
3701
  'lpf_coeff_1': frame[22],
3665
3702
  'hpf_coeff_1': frame[24],
@@ -4447,6 +4484,10 @@ function sensor_types(parent){
4447
4484
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
4448
4485
  'hpf_coeff_1': frame_data.hpf_coeff_1,
4449
4486
  'hpf_freq_1': frame_data.hpf_freq_1+'Hz',
4487
+ 'lpf_coeff_2': frame_data.lpf_coeff_2,
4488
+ 'lpf_freq_2': frame_data.lpf_freq_2+'Hz',
4489
+ 'hpf_coeff_2': frame_data.hpf_coeff_2,
4490
+ 'hpf_freq_2': frame_data.hpf_freq_2+'Hz',
4450
4491
  'sampling_interval': frame_data.sampling_interval,
4451
4492
  'on_request_timeout': frame_data.on_request_timeout,
4452
4493
  'deadband': frame_data.deadband,
@@ -4465,7 +4506,9 @@ function sensor_types(parent){
4465
4506
  'sampling_duration_2': frame[20],
4466
4507
  'filter_status': frame[21],
4467
4508
  'lpf_coeff_1': frame[22],
4509
+ 'lpf_coeff_2': frame[23],
4468
4510
  'hpf_coeff_1': frame[24],
4511
+ 'hpf_coeff_2': frame[25],
4469
4512
  'sampling_interval': frame[26],
4470
4513
  'on_request_timeout': frame[27],
4471
4514
  'deadband': frame[28],
@@ -5066,7 +5109,6 @@ function sensor_types(parent){
5066
5109
  'mode': frame_data.mode,
5067
5110
  'odr_1': frame_data.odr_1+'Hz',
5068
5111
  'sampling_duration_1': frame_data.sampling_duration_1,
5069
- 'sampling_duration_2': frame_data.sampling_duration_2,
5070
5112
  'filter_status': frame_data.filter_status,
5071
5113
  'lpf_coeff_1': frame_data.lpf_coeff_1,
5072
5114
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -5082,7 +5124,6 @@ function sensor_types(parent){
5082
5124
  'mode': frame[16],
5083
5125
  'odr_1': frame[17],
5084
5126
  'sampling_duration_1': frame[19],
5085
- 'sampling_duration_2': frame[20],
5086
5127
  'filter_status': frame[21],
5087
5128
  'lpf_coeff_1': frame[22],
5088
5129
  'hpf_coeff_1': frame[24],
@@ -5677,7 +5718,6 @@ function sensor_types(parent){
5677
5718
  'mode': frame_data.mode,
5678
5719
  'odr_1': frame_data.odr_1+'Hz',
5679
5720
  'sampling_duration_1': frame_data.sampling_duration_1,
5680
- 'sampling_duration_2': frame_data.sampling_duration_2,
5681
5721
  'filter_status': frame_data.filter_status,
5682
5722
  'lpf_coeff_1': frame_data.lpf_coeff_1,
5683
5723
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -5697,7 +5737,6 @@ function sensor_types(parent){
5697
5737
  'mode': frame[16],
5698
5738
  'odr_1': frame[17],
5699
5739
  'sampling_duration_1': frame[19],
5700
- 'sampling_duration_2': frame[20],
5701
5740
  'filter_status': frame[21],
5702
5741
  'lpf_coeff_1': frame[22],
5703
5742
  'hpf_coeff_1': frame[24],
@@ -5720,6 +5759,44 @@ function sensor_types(parent){
5720
5759
  ma: d.slice(2, 4).reduce(msbLsb) / 100,
5721
5760
  db: d.slice(4, 6).reduce(msbLsb) / 100
5722
5761
  };
5762
+ },
5763
+ 'parse_fly': (frame) => {
5764
+ let frame_data = {};
5765
+ switch(frame[16]){
5766
+ case 0:
5767
+ frame_data.fsr = "+-0.256 V";
5768
+ break;
5769
+ case 1:
5770
+ frame_data.fsr = "+-0.512 V";
5771
+ break;
5772
+ case 2:
5773
+ frame_data.fsr = "+-1.024 V";
5774
+ break;
5775
+ case 3:
5776
+ frame_data.fsr = "+-2.048 V";
5777
+ break;
5778
+ case 4:
5779
+ frame_data.fsr = "+-4.096 V";
5780
+ break;
5781
+ case 5:
5782
+ frame_data.fsr = "+-6.144 V";
5783
+ break;
5784
+ }
5785
+ return {
5786
+ 'firmware': frame[2],
5787
+ 'report_rate': frame.slice(12, 16).reduce(msbLsb),
5788
+ 'fsr':frame_data.fsr,
5789
+ 'boot_up_time': frame[17],
5790
+ 'adc_pin_reading': frame.slice(18, 20).reduce(msbLsb),
5791
+ 'machine_values': {
5792
+ 'firmware': frame[2],
5793
+ 'report_rate': frame.slice(12, 16),
5794
+ 'fsr':frame[16],
5795
+ 'boot_up_time': frame[17],
5796
+ 'adc_pin_reading': frame.slice(18, 20),
5797
+ 'frame': frame
5798
+ }
5799
+ }
5723
5800
  }
5724
5801
  },
5725
5802
  '89': {
@@ -5733,6 +5810,44 @@ function sensor_types(parent){
5733
5810
  c2_ma: d.slice(8, 10).reduce(msbLsb) / 100,
5734
5811
  c2_db: d.slice(10, 12).reduce(msbLsb) / 100
5735
5812
  };
5813
+ },
5814
+ 'parse_fly': (frame) => {
5815
+ let frame_data = {};
5816
+ switch(frame[16]){
5817
+ case 0:
5818
+ frame_data.fsr = "+-0.256 V";
5819
+ break;
5820
+ case 1:
5821
+ frame_data.fsr = "+-0.512 V";
5822
+ break;
5823
+ case 2:
5824
+ frame_data.fsr = "+-1.024 V";
5825
+ break;
5826
+ case 3:
5827
+ frame_data.fsr = "+-2.048 V";
5828
+ break;
5829
+ case 4:
5830
+ frame_data.fsr = "+-4.096 V";
5831
+ break;
5832
+ case 5:
5833
+ frame_data.fsr = "+-6.144 V";
5834
+ break;
5835
+ }
5836
+ return {
5837
+ 'firmware': frame[2],
5838
+ 'report_rate': frame.slice(12, 16).reduce(msbLsb),
5839
+ 'fsr':frame_data.fsr,
5840
+ 'boot_up_time': frame[17],
5841
+ 'adc_pin_reading': frame.slice(18, 20).reduce(msbLsb),
5842
+ 'machine_values': {
5843
+ 'firmware': frame[2],
5844
+ 'report_rate': frame.slice(12, 16),
5845
+ 'fsr':frame[16],
5846
+ 'boot_up_time': frame[17],
5847
+ 'adc_pin_reading': frame.slice(18, 20),
5848
+ 'frame': frame
5849
+ }
5850
+ }
5736
5851
  }
5737
5852
  },
5738
5853
  '90': {
@@ -5835,25 +5950,78 @@ function sensor_types(parent){
5835
5950
  '108': {
5836
5951
  name: 'Machine Uptime Monitoring Sensor',
5837
5952
  parse: (d, payload) => {
5953
+ let firmware = payload[1];
5838
5954
  if(payload[7] & 2 != 0){
5839
5955
  console.log('Error found');
5840
5956
  // parsed.data = {error: 'Error found, Acclerometer Probe may be unattached'};
5841
5957
  let error = {error: 'Error found, Acclerometer Probe may be unattached'};
5842
5958
  return error;
5843
5959
  }
5960
+ if(firmware > 5){
5961
+ return {
5962
+ digital_input_counter: d.slice(0, 4).reduce(msbLsb),
5963
+ digital_input_uptime: d.slice(4, 8).reduce(msbLsb),
5964
+ ct_input_counter: d.slice(8, 12).reduce(msbLsb),
5965
+ ct_input_uptime: d.slice(12, 16).reduce(msbLsb),
5966
+ opto_input_counter: d.slice(16, 20).reduce(msbLsb),
5967
+ opto_input_uptime: d.slice(20, 24).reduce(msbLsb),
5968
+ accelerometer_counter: d.slice(24, 28).reduce(msbLsb),
5969
+ accelerometer_uptime: d.slice(28, 32).reduce(msbLsb),
5970
+ magnetometer_counter: d.slice(32, 36).reduce(msbLsb),
5971
+ magnetometer_uptime: d.slice(36, 40).reduce(msbLsb),
5972
+ input_di: d[40] & 1 ? 1 : 0,
5973
+ input_ct: d[40] & 2 ? 1 : 0,
5974
+ input_opto: d[40] & 4 ? 1 : 0,
5975
+ input_acc: d[40] & 8 ? 1 : 0,
5976
+ input_mag: d[40] & 16 ? 1 : 0,
5977
+ report_type: d[41],
5978
+ rtc: [
5979
+ String(d[42]).padStart(2, '0'),
5980
+ String(d[43]).padStart(2, '0'),
5981
+ String(d[44]).padStart(2, '0')
5982
+ ].join(':')
5983
+ };
5984
+ }else{
5985
+ return {
5986
+ digital_input_counter: d.slice(0, 4).reduce(msbLsb),
5987
+ digital_input_uptime: d.slice(4, 8).reduce(msbLsb),
5988
+ ct_input_counter: d.slice(8, 12).reduce(msbLsb),
5989
+ ct_input_uptime: d.slice(12, 16).reduce(msbLsb),
5990
+ opto_input_counter: d.slice(16, 20).reduce(msbLsb),
5991
+ opto_input_uptime: d.slice(20, 24).reduce(msbLsb),
5992
+ accelerometer_counter: d.slice(24, 28).reduce(msbLsb),
5993
+ accelerometer_uptime: d.slice(28, 32).reduce(msbLsb),
5994
+ magnetometer_counter: d.slice(32, 36).reduce(msbLsb),
5995
+ magnetometer_uptime: d.slice(36, 40).reduce(msbLsb),
5996
+ input_di: d[40] & 1 ? 1 : 0,
5997
+ input_ct: d[40] & 2 ? 1 : 0,
5998
+ input_opto: d[40] & 4 ? 1 : 0,
5999
+ input_acc: d[40] & 8 ? 1 : 0,
6000
+ input_mag: d[40] & 16 ? 1 : 0
6001
+ };
6002
+ }
6003
+ },
6004
+ 'parse_fly': (frame) => {
5844
6005
  return {
5845
- digital_input_counter: d.slice(0, 4).reduce(msbLsb),
5846
- digital_input_uptime: d.slice(4, 8).reduce(msbLsb),
5847
- ct_input_counter: d.slice(8, 12).reduce(msbLsb),
5848
- ct_input_uptime: d.slice(12, 16).reduce(msbLsb),
5849
- opto_input_counter: d.slice(16, 20).reduce(msbLsb),
5850
- opto_input_uptime: d.slice(20, 24).reduce(msbLsb),
5851
- accelerometer_counter: d.slice(24, 28).reduce(msbLsb),
5852
- accelerometer_uptime: d.slice(28, 32).reduce(msbLsb),
5853
- magnetometer_counter: d.slice(32, 36).reduce(msbLsb),
5854
- magnetometer_uptime: d.slice(36, 40).reduce(msbLsb),
5855
- io_states: d[40]
5856
- };
6006
+ 'firmware': frame[2],
6007
+ 'report_rate': frame.slice(12, 16).reduce(msbLsb).toString() + "sec.",
6008
+ 'accelerometer_threshold': (frame[16]* 32).toString() + "mg.",
6009
+ 'debouncing_timeout': frame[17].toString() + "sec.",
6010
+ 'accelero_active_state': frame[18],
6011
+ 'digital_inputs_active_edge': frame.slice(19, 22).reduce(msbLsb),
6012
+ 'counter_threshold': frame.slice(22, 26).reduce(msbLsb).toString() + "sec.",
6013
+ 'trasnmit_on_change_status': frame[26],
6014
+ 'machine_values': {
6015
+ 'firmware': frame[2],
6016
+ 'report_rate': frame.slice(12, 16),
6017
+ 'accelerometer_threshold': frame[16],
6018
+ 'debouncing_timeout': frame[17],
6019
+ 'accelero_active_state': frame[18],
6020
+ 'digital_inputs_active_edge': frame.slice(19, 22),
6021
+ 'counter_threshold': frame.slice(22, 26),
6022
+ 'trasnmit_on_change_status': frame[26]
6023
+ }
6024
+ }
5857
6025
  }
5858
6026
  },
5859
6027
  '110': {
@@ -6194,7 +6362,7 @@ function sensor_types(parent){
6194
6362
  return;
6195
6363
  }
6196
6364
  }
6197
- else if(payload[8] === 0 || payload[8] === 2){
6365
+ else if(payload[8] === 0 || payload[8] === 2 || payload[8] === 3){
6198
6366
  // mode byte most significant bit will indicate fft data.
6199
6367
  // console.log(d);
6200
6368
  var odr;
@@ -6439,7 +6607,6 @@ function sensor_types(parent){
6439
6607
  'mode': frame_data.mode,
6440
6608
  'odr_1': frame_data.odr_1+'Hz',
6441
6609
  'sampling_duration_1': frame_data.sampling_duration_1,
6442
- 'sampling_duration_2': frame_data.sampling_duration_2,
6443
6610
  'filter_status': frame_data.filter_status,
6444
6611
  'lpf_coeff_1': frame_data.lpf_coeff_1,
6445
6612
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -6455,7 +6622,6 @@ function sensor_types(parent){
6455
6622
  'mode': frame[16],
6456
6623
  'odr_1': frame[17],
6457
6624
  'sampling_duration_1': frame[19],
6458
- 'sampling_duration_2': frame[20],
6459
6625
  'filter_status': frame[21],
6460
6626
  'lpf_coeff_1': frame[22],
6461
6627
  'hpf_coeff_1': frame[24],
@@ -6819,7 +6985,7 @@ function sensor_types(parent){
6819
6985
  return;
6820
6986
  }
6821
6987
  }
6822
- else if(payload[8] === 0 || payload[8] === 2){
6988
+ else if(payload[8] === 0 || payload[8] === 2 || payload[8] === 3){
6823
6989
  // mode byte most significant bit will indicate fft data.
6824
6990
  // console.log(d);
6825
6991
  var odr1;
@@ -7611,7 +7777,7 @@ function sensor_types(parent){
7611
7777
  return;
7612
7778
  }
7613
7779
  }
7614
- else if(payload[8] === 0 || payload[8] === 2){
7780
+ else if(payload[8] === 0 || payload[8] === 2 || payload[8] === 3){
7615
7781
  // mode byte most significant bit will indicate fft data.
7616
7782
  // console.log(d);
7617
7783
  var odr;
@@ -7857,7 +8023,6 @@ function sensor_types(parent){
7857
8023
  'mode': frame_data.mode,
7858
8024
  'odr_1': frame_data.odr_1+'Hz',
7859
8025
  'sampling_duration_1': frame_data.sampling_duration_1,
7860
- 'sampling_duration_2': frame_data.sampling_duration_2,
7861
8026
  'filter_status': frame_data.filter_status,
7862
8027
  'lpf_coeff_1': frame_data.lpf_coeff_1,
7863
8028
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -7873,7 +8038,6 @@ function sensor_types(parent){
7873
8038
  'mode': frame[16],
7874
8039
  'odr_1': frame[17],
7875
8040
  'sampling_duration_1': frame[19],
7876
- 'sampling_duration_2': frame[20],
7877
8041
  'filter_status': frame[21],
7878
8042
  'lpf_coeff_1': frame[22],
7879
8043
  'hpf_coeff_1': frame[24],
@@ -8222,7 +8386,7 @@ function sensor_types(parent){
8222
8386
  return;
8223
8387
  }
8224
8388
  }
8225
- else if(payload[8] === 0 || payload[8] === 2){
8389
+ else if(payload[8] === 0 || payload[8] === 2 || payload[8] === 3){
8226
8390
  // mode byte most significant bit will indicate fft data.
8227
8391
  // console.log(d);
8228
8392
  var odr;
@@ -8467,7 +8631,6 @@ function sensor_types(parent){
8467
8631
  'mode': frame_data.mode,
8468
8632
  'odr_1': frame_data.odr_1+'Hz',
8469
8633
  'sampling_duration_1': frame_data.sampling_duration_1,
8470
- 'sampling_duration_2': frame_data.sampling_duration_2,
8471
8634
  'filter_status': frame_data.filter_status,
8472
8635
  'lpf_coeff_1': frame_data.lpf_coeff_1,
8473
8636
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -8483,7 +8646,6 @@ function sensor_types(parent){
8483
8646
  'mode': frame[16],
8484
8647
  'odr_1': frame[17],
8485
8648
  'sampling_duration_1': frame[19],
8486
- 'sampling_duration_2': frame[20],
8487
8649
  'filter_status': frame[21],
8488
8650
  'lpf_coeff_1': frame[22],
8489
8651
  'hpf_coeff_1': frame[24],
@@ -8500,25 +8662,19 @@ function sensor_types(parent){
8500
8662
  name: 'C1D2 One Channel Vibration Plus',
8501
8663
  parse: (payload, parsed, mac) => {
8502
8664
  return parent.sensor_types[80].parse(payload, parsed, mac);
8503
- }
8504
- },
8505
- '181': {
8506
- name: 'C1D2 Two Channel Vibration Plus',
8507
- parse: (payload, parsed, mac) => {
8508
- return parent.sensor_types[81].parse(payload, parsed, mac);
8509
- }
8510
- },
8511
- '180': {
8512
- name: 'C1D2 One Channel Vibration Plus',
8513
- parse: (payload, parsed, mac) => {
8514
- return parent.sensor_types[80].parse(payload, parsed, mac);
8515
- }
8665
+ },
8666
+ parse_fly: (payload, parsed, mac) => {
8667
+ return parent.sensor_types[80].parse_fly(payload, parsed, mac);
8668
+ },
8516
8669
  },
8517
8670
  '181': {
8518
8671
  name: 'C1D2 Two Channel Vibration Plus',
8519
8672
  parse: (payload, parsed, mac) => {
8520
8673
  return parent.sensor_types[81].parse(payload, parsed, mac);
8521
- }
8674
+ },
8675
+ parse_fly: (payload, parsed, mac) => {
8676
+ return parent.sensor_types[81].parse_fly(payload, parsed, mac);
8677
+ },
8522
8678
  },
8523
8679
  '200': {
8524
8680
  name: '4-20mA Pass Through',
@@ -8536,7 +8692,6 @@ function sensor_types(parent){
8536
8692
  };
8537
8693
  }
8538
8694
  },
8539
-
8540
8695
  '202': {
8541
8696
  name: 'Wireless Weather Station',
8542
8697
  parse: (d) => {
@@ -8550,6 +8705,17 @@ function sensor_types(parent){
8550
8705
  };
8551
8706
  }
8552
8707
  },
8708
+ '217': {
8709
+ name: 'Wireless Weight Scale',
8710
+ parse: (d) => {
8711
+ let units;
8712
+ d[0] ? units = "Kg" : units = "Lbs"
8713
+ return {
8714
+ unit: units,
8715
+ weight: signInt(d.slice(1, 4).reduce(msbLsb)) * 100
8716
+ };
8717
+ }
8718
+ },
8553
8719
  '502': {
8554
8720
  name: 'Custom Environmental Sensor',
8555
8721
  parse: (d, full) => {
@@ -9360,7 +9526,6 @@ function sensor_types(parent){
9360
9526
  'mode': frame_data.mode,
9361
9527
  'odr_1': frame_data.odr_1+'Hz',
9362
9528
  'sampling_duration_1': frame_data.sampling_duration_1,
9363
- 'sampling_duration_2': frame_data.sampling_duration_2,
9364
9529
  'filter_status': frame_data.filter_status,
9365
9530
  'lpf_coeff_1': frame_data.lpf_coeff_1,
9366
9531
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -9376,7 +9541,6 @@ function sensor_types(parent){
9376
9541
  'mode': frame[16],
9377
9542
  'odr_1': frame[17],
9378
9543
  'sampling_duration_1': frame[19],
9379
- 'sampling_duration_2': frame[20],
9380
9544
  'filter_status': frame[21],
9381
9545
  'lpf_coeff_1': frame[22],
9382
9546
  'hpf_coeff_1': frame[24],
@@ -10244,7 +10408,6 @@ function sensor_types(parent){
10244
10408
  'mode': frame_data.mode,
10245
10409
  'odr_1': frame_data.odr_1+'Hz',
10246
10410
  'sampling_duration_1': frame_data.sampling_duration_1,
10247
- 'sampling_duration_2': frame_data.sampling_duration_2,
10248
10411
  'filter_status': frame_data.filter_status,
10249
10412
  'lpf_coeff_1': frame_data.lpf_coeff_1,
10250
10413
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -10260,7 +10423,6 @@ function sensor_types(parent){
10260
10423
  'mode': frame[16],
10261
10424
  'odr_1': frame[17],
10262
10425
  'sampling_duration_1': frame[19],
10263
- 'sampling_duration_2': frame[20],
10264
10426
  'filter_status': frame[21],
10265
10427
  'lpf_coeff_1': frame[22],
10266
10428
  'hpf_coeff_1': frame[24],
@@ -10855,7 +11017,6 @@ function sensor_types(parent){
10855
11017
  'mode': frame_data.mode,
10856
11018
  'odr_1': frame_data.odr_1+'Hz',
10857
11019
  'sampling_duration_1': frame_data.sampling_duration_1,
10858
- 'sampling_duration_2': frame_data.sampling_duration_2,
10859
11020
  'filter_status': frame_data.filter_status,
10860
11021
  'lpf_coeff_1': frame_data.lpf_coeff_1,
10861
11022
  'lpf_freq_1': frame_data.lpf_freq_1+'Hz',
@@ -10871,7 +11032,6 @@ function sensor_types(parent){
10871
11032
  'mode': frame[16],
10872
11033
  'odr_1': frame[17],
10873
11034
  'sampling_duration_1': frame[19],
10874
- 'sampling_duration_2': frame[20],
10875
11035
  'filter_status': frame[21],
10876
11036
  'lpf_coeff_1': frame[22],
10877
11037
  'hpf_coeff_1': frame[24],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ncd-io/node-red-enterprise-sensors",
3
- "version": "1.0.8",
3
+ "version": "1.0.9",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/wireless.html CHANGED
@@ -133,12 +133,12 @@
133
133
  NCD_validators = {
134
134
  number_range: function(l, h, base, property_name = false){
135
135
  if(!base) base = 10;
136
- if(property_name === 'on_request_timeout_80'){
136
+ if(property_name === 'smart_threshold_110'){
137
137
  return function(v){
138
138
  var int = parseInt(v, base);
139
- if(this.on_request_timeout_80 == 0){
140
- console.log('ERROR: Invalid property detect. Setting on_request_timeout_80 to default value');
141
- $("#node-input-on_request_timeout_80").val(1);
139
+ if(this.smart_threshold_110 == 0){
140
+ console.log('ERROR: Invalid property detect. Setting smart_threshold_110 to default value');
141
+ $("#node-input-smart_threshold_110").val(1);
142
142
  return true;
143
143
  } else if(v == undefined){
144
144
  return true;
@@ -376,7 +376,9 @@
376
376
  accelerometer_state_108:{value:0},
377
377
  accelerometer_state_108_active:{value:""},
378
378
 
379
- clear_all_counters_108:{value:0},
379
+ clear_timers_108_active:{value:""},
380
+ clear_timers_108:{value:7},
381
+
380
382
  accelerometer_threshold_108:{value:10, validate: NCD_validators.number_range(0, 255)},
381
383
  accelerometer_threshold_108_active:{value:""},
382
384
  debounce_time_108:{value:10, validate: NCD_validators.number_range(0, 255)},
@@ -492,7 +494,7 @@
492
494
  smart_interval_110: {value: 0, validate: NCD_validators.number_range(0, 255)},
493
495
 
494
496
  smart_threshold_110_active:{value:""},
495
- smart_threshold_110: {value: 1, validate: NCD_validators.number_range(1, 65534)},
497
+ smart_threshold_110: {value: 1, validate: NCD_validators.number_range(1, 65534, 10, "smart_threshold_110")},
496
498
 
497
499
  rx485_timeout_1011_active:{value:""},
498
500
  rx485_timeout_1011:{value: 0, validate: NCD_validators.number_range(0, 255)},
@@ -516,6 +518,8 @@
516
518
  push_notification_33_active:{value: ""},
517
519
  push_notification_33:{value: 0},
518
520
  clear_counter_33:{value:0},
521
+ input_two_33:{value:1},
522
+ input_two_33_active:{value:""},
519
523
 
520
524
  stop_bit_1011_active:{value: ""},
521
525
  stop_bit_1011:{value:0},
@@ -535,7 +539,19 @@
535
539
  sps_skip_samples_32:{value: 1, validate: NCD_validators.number_range(1, 10)},
536
540
 
537
541
  sampling_interval_110_active:{value: ""},
538
- sampling_interval_110: {value: 1, validate: NCD_validators.number_range(0, 8)}
542
+ sampling_interval_110: {value: 1, validate: NCD_validators.number_range(0, 8)},
543
+
544
+ qos_108_active:{value: ""},
545
+ qos_108: {value: 0},
546
+ deactivate_activate_accelero_108_active: {value: ""},
547
+ deactivate_activate_accelero_108: {value: 0},
548
+ reset_timeout_108_active:{value: ""},
549
+ reset_timeout_108: {value: 60, validate: NCD_validators.number_range(60, 65535)},
550
+ reset_mode_to_disabled_108_active: {value: ""},
551
+ reset_mode_to_disabled_108: {value: 0},
552
+ rtc_interval_108_active: {value: ""},
553
+ rtc_interval_108: {value: 0},
554
+ rtc_108:{value:0}
539
555
  },
540
556
  inputs: 0,
541
557
  outputs: 1,
@@ -570,7 +586,7 @@
570
586
  "25": "25 - Asset Monitor",
571
587
  "26": "26 - Pressure Sensor",
572
588
  "27": "27 - Environmental Sensor",
573
- "28": "28 - 3 Channel Current Sensor",
589
+ "28": "28 - 3-Phase Current Sensor",
574
590
  "29": "29 - Linear Displacement Sensor",
575
591
  "30": "30 - Structural Monitoring Sensor",
576
592
  "31": "31 - Air Quality TVOC eCO2 Temperature and Humidity Sensor",
@@ -641,6 +657,7 @@
641
657
  "181": "181 - C1D2 Two Channel Vibration Plus",
642
658
  "200": "200 - 4-20mA Pass Through",
643
659
  "202": "202 - Weather Station",
660
+ "217": "217 - Wireless Weight Scale",
644
661
  "502": "502 - C_50-27",
645
662
  "505": "505 - Custom_SAP_Current_1C",
646
663
  "506": "506 - Custom_SAP_Current_3C",
@@ -860,7 +877,7 @@
860
877
  <option value="25">25 - Asset Monitor</option>
861
878
  <option value="26">26 - Pressure & Temperature (PSI)</option>
862
879
  <option value="27">27 - Environmental</option>
863
- <option value="28">28 - 3-Channel Current Monitor</option>
880
+ <option value="28">28 - 3-Phase Current Monitor</option>
864
881
  <option value="29">29 - Linear Displacement Sensor</option>
865
882
  <option value="30">30 - Structural Monitoring Sensor</option>
866
883
  <option value="31">31 - Air Quality TVOC eCO2 Temperature and Humidity Sensor</option>
@@ -933,6 +950,7 @@
933
950
  <option value="181">181 - C1D2 Two Channel Vibration Plus</option>
934
951
  <option value="200">200 - 4-20mA Pass Through</option>
935
952
  <option value="202">202 - Weather Station</option>
953
+ <option value="217">217 - Wireless Weight Scale</option>
936
954
  <option value="502">502 - C_50-27</option>
937
955
  <option value="505">505 - Custom_SAP_Current_1C</option>
938
956
  <option value="506">506 - Custom_SAP_Current_3C</option>
@@ -2253,8 +2271,19 @@
2253
2271
  </div>
2254
2272
  <div class="ncd-dependent" data-sensor-108>
2255
2273
  <div class="form-row ncd-active-check">
2256
- <label for="node-input-clear_all_counters_108"><i class="icon-tag"></i>Clear All Counters</label>
2257
- <input type="checkbox" id="node-input-clear_all_counters_108" value="1">
2274
+ <strong>Clear Counters</strong>
2275
+ <div>
2276
+ <label for="node-input-clear_timers_108_active">Active:</label>
2277
+ <input type="checkbox" id="node-input-clear_timers_108_active" class="ncd-config-toggle" data-target-id="node-input-clear_timers_108" value="1">
2278
+ </div>
2279
+ <div>
2280
+ <label for="node-input-clear_timers_108"><i class="icon-tag"></i>Value:</label>
2281
+ <select id="node-input-clear_timers_108">
2282
+ <option value="7" selected>Digital in 1, 2 and 3</option>
2283
+ <option value="16">Magnetometer</option>
2284
+ <option value="8">Accelerometer</option>
2285
+ </select>
2286
+ </div>
2258
2287
  </div>
2259
2288
  <div class="form-row ncd-active-check">
2260
2289
  <strong>Set Accelerometer Threshold</strong>
@@ -2291,12 +2320,12 @@
2291
2320
  <div class="form-row ncd-active-check">
2292
2321
  <strong>Set Contact Closure Detection</strong>
2293
2322
  <div>
2294
- <label for="node-input-input_two_108_active">Active:</label>
2295
- <input type="checkbox" id="node-input-input_two_108_active" class="ncd-config-toggle" data-target-id="node-input-input_two_108" value="1">
2323
+ <label for="node-input-input_two_33_active">Active:</label>
2324
+ <input type="checkbox" id="node-input-input_two_33_active" class="ncd-config-toggle" data-target-id="node-input-input_two_33" value="1">
2296
2325
  </div>
2297
2326
  <div>
2298
- <label for="node-input-input_two_108"><i class="icon-tag"></i>Value:</label>
2299
- <select id="node-input-input_two_108">
2327
+ <label for="node-input-input_two_33"><i class="icon-tag"></i>Value:</label>
2328
+ <select id="node-input-input_two_33">
2300
2329
  <option value="0">Falling Edge Trigger</option>
2301
2330
  <option value="1" selected>Rising Edge Trigger</option>
2302
2331
  </select>
@@ -2382,6 +2411,13 @@
2382
2411
  <div class="ncd-dependent" data-sensor-108>
2383
2412
  <div class="form-row ncd-active-check">
2384
2413
  <strong>Enable Push Notification</strong>
2414
+ <p>
2415
+ IO1 - Digital input<br>
2416
+ IO2 - Current Sensor<br>
2417
+ IO3 - OPTO Input<br>
2418
+ IO4 - Accelerometer<br>
2419
+ IO5 - Magnetometer<br>
2420
+ </p>
2385
2421
  <div>
2386
2422
  <label for="node-input-push_notification_108_active">Active:</label>
2387
2423
  <input type="checkbox" id="node-input-push_notification_108_active" class="ncd-config-toggle" data-target-id="node-input-push_notification_108" value="1">
@@ -2424,6 +2460,97 @@
2424
2460
  </select>
2425
2461
  </div>
2426
2462
  </div>
2463
+ <div class="form-row ncd-active-check">
2464
+ <strong>Enable Quality Of Service (QoS)</strong>
2465
+ <div>
2466
+ <label for="node-input-qos_108_active">Active:</label>
2467
+ <input type="checkbox" id="node-input-qos_108_active" class="ncd-config-toggle" data-target-id="node-input-qos_108" value="1">
2468
+ </div>
2469
+ <div>
2470
+ <label for="node-input-qos_108"><i class="icon-tag"></i>Value:</label>
2471
+ <select id="node-input-qos_108">
2472
+ <option value="0" selected>Disabled</option>
2473
+ <option value="1">Enabled</option>
2474
+ </select>
2475
+ </div>
2476
+ </div>
2477
+ <div class="form-row ncd-active-check">
2478
+ <strong>Enable Accelerometer</strong>
2479
+ <div>
2480
+ <label for="node-input-deactivate_activate_accelero_108_active">Active:</label>
2481
+ <input type="checkbox" id="node-input-deactivate_activate_accelero_108_active" class="ncd-config-toggle" data-target-id="node-input-deactivate_activate_accelero_108" value="1">
2482
+ </div>
2483
+ <div>
2484
+ <label for="node-input-deactivate_activate_accelero_108"><i class="icon-tag"></i>Value:</label>
2485
+ <select id="node-input-deactivate_activate_accelero_108">
2486
+ <option value="0" selected>Disabled</option>
2487
+ <option value="1">Enabled</option>
2488
+ </select>
2489
+ </div>
2490
+ </div>
2491
+ <div class="form-row ncd-active-check">
2492
+ <strong>Reset Timeout</strong>
2493
+ <p class="caption">
2494
+ Valid range: 60 - 65535
2495
+ </p>
2496
+ <div>
2497
+ <label for="node-input-reset_timeout_108_active">Active:</label>
2498
+ <input type="checkbox" id="node-input-reset_timeout_108_active" class="ncd-config-toggle" data-target-id="node-input-reset_timeout_108" value="1">
2499
+ </div>
2500
+ <div>
2501
+ <label for="node-input-reset_timeout_108"><i class="icon-tag"></i>Value:</label>
2502
+ <input type="text" id="node-input-reset_timeout_108" placeholder="60" value="60">
2503
+ </div>
2504
+ </div>
2505
+ <div class="form-row ncd-active-check">
2506
+ <strong> Set Reset Mode to Disabled</strong>
2507
+ <div>
2508
+ <label for="node-input-reset_mode_to_disabled_108_active">Active:</label>
2509
+ <input type="checkbox" id="node-input-reset_mode_to_disabled_108_active" class="ncd-config-toggle" data-target-id="node-input-reset_mode_to_disabled_108" value="1">
2510
+ </div>
2511
+ <div>
2512
+ <label for="node-input-reset_mode_to_disabled_108"><i class="icon-tag"></i>Value:</label>
2513
+ <select id="node-input-reset_mode_to_disabled_108">
2514
+ <option value="0" selected>Do not reset counters</option>
2515
+ <option value="1">Based on Shift Ends</option>
2516
+ <option value="2">Based on the Timeout Provided</option>
2517
+ </select>
2518
+ </div>
2519
+ </div>
2520
+ <div class="form-row ncd-active-check">
2521
+ <strong>Set RTC</strong>
2522
+ <div>
2523
+ <label for="node-input-rtc_108"><i class="icon-tag"></i>Active:</label>
2524
+ <input type="checkbox" id="node-input-rtc_108" value="1">
2525
+ </div>
2526
+ </div>
2527
+ <div class="form-row ncd-active-check">
2528
+ <strong> Set RTC Interval</strong>
2529
+ <div>
2530
+ <label for="node-input-rtc_interval_108_active">Active:</label>
2531
+ <input type="checkbox" id="node-input-rtc_interval_108_active" class="ncd-config-toggle" data-target-id="node-input-rtc_interval_108" value="1">
2532
+ </div>
2533
+ <div>
2534
+ <label for="node-input-rtc_interval_108"><i class="icon-tag"></i>Value:</label>
2535
+ <select id="node-input-rtc_interval_108">
2536
+ <option value="0" selected>1 minute</option>
2537
+ <option value="1">5 minutes</option>
2538
+ <option value="2">10 minutes</option>
2539
+ <option value="3">15 minutes</option>
2540
+ <option value="4">30 minutes</option>
2541
+ <option value="5">45 minutes</option>
2542
+ <option value="6">1 hour</option>
2543
+ <option value="7">2 hours</option>
2544
+ <option value="8">3 hours</option>
2545
+ <option value="9">4 hours</option>
2546
+ <option value="10">6 hours</option>
2547
+ <option value="11">8 hours</option>
2548
+ <option value="12">12 hours</option>
2549
+ </select>
2550
+ </div>
2551
+ </div>
2552
+
2553
+
2427
2554
  </div>
2428
2555
  <div class="ncd-dependent" data-sensor-35 data-sensor-36>
2429
2556
  <hr>
@@ -2961,6 +3088,7 @@
2961
3088
  <div class="ncd-dependent" data-sensor-110 data-sensor-111 data-sensor-112 data-sensor-114>
2962
3089
  <div class="form-row ncd-active-check">
2963
3090
  <strong>Set Auto Raw Interval</strong>
3091
+ <p>The interval is determined by the sample interval. If the value is set to 1 and the sample interval is 10 minutes, raw data will be sent every 10 minutes. If the value is set to 5, raw data will be sent every 50 minutes.</p>
2964
3092
  <div>
2965
3093
  <label for="node-input-auto_raw_interval_110_active">Active:</label>
2966
3094
  <input type="checkbox" id="node-input-auto_raw_interval_110_active" class="ncd-config-toggle" data-target-id="node-input-auto_raw_interval_110" value="1">
package/wireless.js CHANGED
@@ -1017,8 +1017,8 @@ module.exports = function(RED) {
1017
1017
  if(config.clear_counter_33){
1018
1018
  promises.clear_counter_33 = node.config_gateway.config_set_clear_counter_33(mac);
1019
1019
  }
1020
- if(config.input_two_108_active){
1021
- promises.input_two_108 = node.config_gateway.config_set_input_two_108(mac, parseInt(config.input_two_108));
1020
+ if(config.input_two_33_active){
1021
+ promises.input_two_33 = node.config_gateway.config_set_input_two_108(mac, parseInt(config.input_two_33));
1022
1022
  }
1023
1023
  if(config.counter_threshold_108_active){
1024
1024
  promises.counter_threshold_108 = node.config_gateway.config_set_counter_threshold_108(mac, parseInt(config.counter_threshold_108));
@@ -1477,8 +1477,8 @@ module.exports = function(RED) {
1477
1477
  if(config.accelerometer_state_108_active){
1478
1478
  promises.accelerometer_state_108 = node.config_gateway.config_set_accelerometer_state_108(mac, parseInt(config.accelerometer_state_108));
1479
1479
  }
1480
- if(config.clear_all_counters_108){
1481
- promises.clear_all_counters_108 = node.config_gateway.config_clear_timers_108(mac);
1480
+ if(config.clear_timers_108_active){
1481
+ promises.clear_timers_108 = node.config_gateway.config_set_clear_timers_108(mac, parseInt(config.clear_timers_108));
1482
1482
  }
1483
1483
  if(config.accelerometer_threshold_108_active){
1484
1484
  promises.accelerometer_threshold_108 = node.config_gateway.config_set_accelerometer_threshold_108(mac, parseInt(config.accelerometer_threshold_108));
@@ -1501,6 +1501,24 @@ module.exports = function(RED) {
1501
1501
  if(config.push_notification_108_active){
1502
1502
  promises.push_notification_108 = node.config_gateway.config_set_push_notification_108(mac, parseInt(config.push_notification_108));
1503
1503
  }
1504
+ if(config.qos_108_active){
1505
+ promises.qos_108 = node.config_gateway.config_set_qos_108(mac, parseInt(config.qos_108));
1506
+ }
1507
+ if(config.deactivate_activate_accelero_108_active){
1508
+ promises.deactivate_activate_accelero_108 = node.config_gateway.config_set_deactivate_activate_accelero_108(mac, parseInt(config.deactivate_activate_accelero_108));
1509
+ }
1510
+ if(config.reset_timeout_108_active){
1511
+ promises.reset_timeout_108 = node.config_gateway.config_set_reset_timeout_108(mac, parseInt(config.reset_timeout_108));
1512
+ }
1513
+ if(config.reset_mode_to_disabled_108_active){
1514
+ promises.reset_mode_to_disabled_108 = node.config_gateway.config_set_reset_mode_to_disabled_108(mac, parseInt(config.reset_mode_to_disabled_108));
1515
+ }
1516
+ if(config.rtc_108){
1517
+ promises.rtc_108 = node.config_gateway.config_set_rtc_108(mac);
1518
+ }
1519
+ if(config.rtc_interval_108_active){
1520
+ promises.rtc_interval_108 = node.config_gateway.config_set_rtc_interval_108(mac, parseInt(config.rtc_interval_108));
1521
+ }
1504
1522
  break;
1505
1523
  case 110:
1506
1524
  if(config.output_data_rate_101_active){
@@ -1549,7 +1567,7 @@ module.exports = function(RED) {
1549
1567
  promises.auto_raw_interval_110 = node.config_gateway.config_set_auto_raw_interval_110(mac, parseInt(config.auto_raw_interval_110));
1550
1568
  }
1551
1569
  if(config.auto_raw_destination_110_active){
1552
- promises.auto_raw_destination_110 = node.config_gateway.config_set_auto_raw_destination_110(mac, parseInt(config.auto_raw_destination_110));
1570
+ promises.auto_raw_destination_110 = node.config_gateway.config_set_auto_raw_destination_110(mac, parseInt(config.auto_raw_destination_110, 16));
1553
1571
  }
1554
1572
  if(config.clear_probe_uptimers_110_active){
1555
1573
  promises.clear_probe_uptimers_110 = node.config_gateway.config_set_clear_probe_uptimers_110(mac, parseInt(config.clear_probe_uptimers_110));
@@ -1623,7 +1641,7 @@ module.exports = function(RED) {
1623
1641
  promises.auto_raw_interval_110 = node.config_gateway.config_set_auto_raw_interval_110(mac, parseInt(config.auto_raw_interval_110));
1624
1642
  }
1625
1643
  if(config.auto_raw_destination_110_active){
1626
- promises.auto_raw_destination_110 = node.config_gateway.config_set_auto_raw_destination_110(mac, parseInt(config.auto_raw_destination_110));
1644
+ promises.auto_raw_destination_110 = node.config_gateway.config_set_auto_raw_destination_110(mac, parseInt(config.auto_raw_destination_110, 16));
1627
1645
  }
1628
1646
  if(config.clear_probe_uptimers_110_active){
1629
1647
  promises.clear_probe_uptimers_110 = node.config_gateway.config_set_clear_probe_uptimers_110(mac, parseInt(config.clear_probe_uptimers_110));
@@ -1688,7 +1706,7 @@ module.exports = function(RED) {
1688
1706
  promises.auto_raw_interval_110 = node.config_gateway.config_set_auto_raw_interval_110(mac, parseInt(config.auto_raw_interval_110));
1689
1707
  }
1690
1708
  if(config.auto_raw_destination_110_active){
1691
- promises.auto_raw_destination_110 = node.config_gateway.config_set_auto_raw_destination_110(mac, parseInt(config.auto_raw_destination_110));
1709
+ promises.auto_raw_destination_110 = node.config_gateway.config_set_auto_raw_destination_110(mac, parseInt(config.auto_raw_destination_110, 16));
1692
1710
  }
1693
1711
  if(config.clear_probe_uptimers_110_active){
1694
1712
  promises.clear_probe_uptimers_110 = node.config_gateway.config_set_clear_probe_uptimers_110(mac, parseInt(config.clear_probe_uptimers_110));
@@ -1762,7 +1780,7 @@ module.exports = function(RED) {
1762
1780
  promises.auto_raw_interval_110 = node.config_gateway.config_set_auto_raw_interval_110(mac, parseInt(config.auto_raw_interval_110));
1763
1781
  }
1764
1782
  if(config.auto_raw_destination_110_active){
1765
- promises.auto_raw_destination_110 = node.config_gateway.config_set_auto_raw_destination_110(mac, parseInt(config.auto_raw_destination_110));
1783
+ promises.auto_raw_destination_110 = node.config_gateway.config_set_auto_raw_destination_110(mac, parseInt(config.auto_raw_destination_110, 16));
1766
1784
  }
1767
1785
  if(config.clear_probe_uptimers_110_active){
1768
1786
  promises.clear_probe_uptimers_110 = node.config_gateway.config_set_clear_probe_uptimers_110(mac, parseInt(config.clear_probe_uptimers_110));