wiliot-certificate 4.4.0a1__py3-none-any.whl → 4.4.1__py3-none-any.whl
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.
- brg_certificate/certificate_bcc_test_list.txt +0 -2
- brg_certificate/tests/calibration/interval_test/interval_test.json +1 -1
- brg_certificate/tests/calibration/interval_test/interval_test.py +2 -3
- brg_certificate/tests/calibration/output_power_test/output_power_test.json +1 -1
- brg_certificate/tests/calibration/output_power_test/output_power_test.py +2 -3
- brg_certificate/tests/calibration/pattern_test/pattern_test.json +1 -1
- brg_certificate/tests/calibration/pattern_test/pattern_test.py +4 -8
- brg_certificate/tests/datapath/aging_test/aging_test.py +3 -4
- brg_certificate/tests/datapath/num_of_tags_test/num_of_tags_test.py +4 -7
- brg_certificate/tests/datapath/output_power_test/output_power_test.json +1 -1
- brg_certificate/tests/datapath/output_power_test/output_power_test.py +1 -3
- brg_certificate/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.json +1 -1
- brg_certificate/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.py +2 -3
- brg_certificate/tests/datapath/pacer_interval_test/pacer_interval_test.py +1 -3
- brg_certificate/tests/datapath/pattern_test/pattern_test.json +1 -1
- brg_certificate/tests/datapath/pattern_test/pattern_test.py +1 -3
- brg_certificate/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.json +1 -1
- brg_certificate/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.py +1 -3
- brg_certificate/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.json +1 -1
- brg_certificate/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.py +1 -3
- brg_certificate/tests/datapath/pkt_filter_test/pkt_filter_test.json +1 -1
- brg_certificate/tests/datapath/pkt_filter_test/pkt_filter_test.py +2 -3
- brg_certificate/tests/datapath/rssi_threshold_test/rssi_threshold_test.json +1 -1
- brg_certificate/tests/datapath/rssi_threshold_test/rssi_threshold_test.py +2 -3
- brg_certificate/tests/datapath/rx_channel_test/rx_channel_test.json +1 -1
- brg_certificate/tests/datapath/rx_channel_test/rx_channel_test.py +2 -3
- brg_certificate/tests/datapath/rx_rate_gen2_test/rx_rate_gen2_test.py +9 -6
- brg_certificate/tests/datapath/rx_rate_gen3_test/rx_rate_gen3_test.py +9 -6
- brg_certificate/tests/datapath/stress_gen3_test/stress_gen3_test.json +1 -1
- brg_certificate/tests/datapath/stress_gen3_test/stress_gen3_test.py +17 -11
- brg_certificate/tests/datapath/stress_test/stress_test.json +1 -1
- brg_certificate/tests/datapath/stress_test/stress_test.py +15 -10
- brg_certificate/tests/datapath/tx_repetition_test/tx_repetition_test.json +1 -1
- brg_certificate/tests/datapath/tx_repetition_test/tx_repetition_test.py +2 -3
- brg_certificate/tests/edge_mgmt/actions_test/actions_test.json +1 -1
- brg_certificate/tests/edge_mgmt/actions_test/actions_test.py +1 -3
- brg_certificate/tests/energy2400/duty_cycle_test/duty_cycle_test.json +1 -1
- brg_certificate/tests/energy2400/duty_cycle_test/duty_cycle_test.py +1 -3
- brg_certificate/tests/energy2400/output_power_test/output_power_test.json +1 -1
- brg_certificate/tests/energy2400/output_power_test/output_power_test.py +1 -3
- brg_certificate/tests/energy2400/pattern_test/pattern_test.json +1 -1
- brg_certificate/tests/energy2400/pattern_test/pattern_test.py +1 -3
- brg_certificate/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.json +1 -1
- brg_certificate/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.py +2 -3
- brg_certificate/tests/energy_sub1g/pattern_test/pattern_test.json +1 -1
- brg_certificate/tests/energy_sub1g/pattern_test/pattern_test.py +1 -3
- brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.json +1 -1
- brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.py +2 -3
- brg_certificate/tests/sensors/ext_sensor_test/ext_sensor_test.json +1 -1
- brg_certificate/tests/sensors/ext_sensor_test/ext_sensor_test.py +1 -3
- brg_certificate/wltPb_pb2.py +4 -4
- brg_certificate/wltPb_pb2.pyi +2 -1
- gw_certificate/common/serialization_formatter.py +14 -1
- gw_certificate/interface/4.4.91_app.zip +0 -0
- gw_certificate/interface/{4.4.88_sd_bl_app.zip → 4.4.91_sd_bl_app.zip} +0 -0
- gw_certificate/interface/flash_fw.py +90 -0
- gw_certificate/interface/uart_if.py +1 -1
- gw_certificate/tests/actions.py +1 -1
- gw_certificate/tests/downlink.py +2 -2
- gw_certificate/tests/generic.py +4 -3
- gw_certificate/tests/static/generated_packet_table.py +16 -16
- gw_certificate/tests/static/packet_table.csv +10052 -10052
- gw_certificate/tests/static/uplink_defines.py +1 -1
- gw_certificate/tests/throughput.py +1 -1
- gw_certificate/tests/uplink.py +38 -19
- {wiliot_certificate-4.4.0a1.dist-info → wiliot_certificate-4.4.1.dist-info}/METADATA +71 -30
- {wiliot_certificate-4.4.0a1.dist-info → wiliot_certificate-4.4.1.dist-info}/RECORD +71 -70
- {wiliot_certificate-4.4.0a1.dist-info → wiliot_certificate-4.4.1.dist-info}/WHEEL +1 -1
- gw_certificate/interface/4.4.88_app.zip +0 -0
- {wiliot_certificate-4.4.0a1.dist-info → wiliot_certificate-4.4.1.dist-info}/entry_points.txt +0 -0
- {wiliot_certificate-4.4.0a1.dist-info → wiliot_certificate-4.4.1.dist-info}/licenses/LICENSE +0 -0
- {wiliot_certificate-4.4.0a1.dist-info → wiliot_certificate-4.4.1.dist-info}/top_level.txt +0 -0
|
@@ -200,7 +200,7 @@ class StressTestStage(GenericStressStage):
|
|
|
200
200
|
for idx, delay in enumerate(self.delays):
|
|
201
201
|
if self.ts_records_arr[idx].is_ts_error():
|
|
202
202
|
self.add_to_stage_report(f"Timestamps errors during PPS {self.report_data[str(delay)]['pkts_per_sec_desired']}:")
|
|
203
|
-
self.ts_records_arr[idx].add_ts_errs_to_report(self)
|
|
203
|
+
self.ts_records_arr[idx].add_ts_errs_to_report(self, newline=False)
|
|
204
204
|
self.add_report_line_separator()
|
|
205
205
|
self.add_to_stage_report(f'Stage data saved - {self.csv_path}')
|
|
206
206
|
|
gw_certificate/tests/uplink.py
CHANGED
|
@@ -15,7 +15,7 @@ from gw_certificate.tests.static.uplink_defines import *
|
|
|
15
15
|
from gw_certificate.interface.mqtt import MqttClient, Serialization
|
|
16
16
|
from gw_certificate.interface.pkt_generator import BrgPktGenerator, apply_adva_bitmask
|
|
17
17
|
from gw_certificate.tests.static.generated_packet_table import UnifiedRunData, SensorRunData, MgmtRunData, PacketTableHelper, ACLRunData
|
|
18
|
-
from gw_certificate.tests.generic import PassCriteria, PERFECT_SCORE, MINIMUM_SCORE, GenericTest, GenericStage, ERR_SUMMARY_DEFAULT
|
|
18
|
+
from gw_certificate.tests.generic import PassCriteria, PERFECT_SCORE, MINIMUM_SCORE, GenericTest, GenericStage, ERR_SUMMARY_DEFAULT, INFORMATIVE
|
|
19
19
|
from gw_certificate.api_if.api_validation import MESSAGE_TYPES, validate_message
|
|
20
20
|
from gw_certificate.tests.static.generated_packet_table import CSV_NAME
|
|
21
21
|
from gw_certificate.common.serialization_formatter import ACL_MODE, ACL_BRIDGE_IDS, SerializationFormatter, Configurable, ACL_ALLOW, ACL_DENY
|
|
@@ -108,21 +108,24 @@ class TimestampsHelper(PacketTableHelper):
|
|
|
108
108
|
|
|
109
109
|
packets_sent_df[REC_TIMESTAMP] = packets_sent_df.apply(validate_row, axis=1)
|
|
110
110
|
|
|
111
|
-
# Validate no 2 packets hold the same timestamp
|
|
112
|
-
if REC_TIMESTAMP in packets_sent_df.columns:
|
|
113
|
-
|
|
114
|
-
|
|
111
|
+
# # Validate no 2 packets hold the same timestamp - disabled, not a requirement for certification
|
|
112
|
+
# if REC_TIMESTAMP in packets_sent_df.columns:
|
|
113
|
+
# duplicates = packets_sent_df[REC_TIMESTAMP].value_counts()
|
|
114
|
+
# duplicated_ts = duplicates[duplicates > 1].index
|
|
115
115
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
116
|
+
# for ts in duplicated_ts:
|
|
117
|
+
# self.ts_errors.append(f"Multiple packets were uploaded with identical timestamp (ts = {int(ts)})")
|
|
118
|
+
# self.has_identical_ts = True
|
|
119
|
+
|
|
120
|
+
def add_ts_errs_to_report(self, stage:GenericStage, newline=True):
|
|
119
121
|
|
|
120
|
-
def add_ts_errs_to_report(self, stage:GenericStage):
|
|
121
122
|
for idx, ts_err in enumerate(self.ts_errors):
|
|
122
123
|
stage.add_to_stage_report(ts_err)
|
|
123
124
|
if idx == 1 and (len(self.ts_errors) - 1) > idx:
|
|
124
125
|
stage.add_to_stage_report(f'Additional errors ({len(self.ts_errors) - 1 - idx}) are suppressed to avoid clutter')
|
|
125
126
|
break
|
|
127
|
+
if len(self.ts_errors) > 0 and newline:
|
|
128
|
+
stage.add_to_stage_report('')
|
|
126
129
|
|
|
127
130
|
def is_ts_error(self) -> bool:
|
|
128
131
|
return len(self.ts_errors) > 0
|
|
@@ -205,6 +208,7 @@ class GenericUplinkStage(GenericStage):
|
|
|
205
208
|
if len(not_received) > 0:
|
|
206
209
|
self.add_to_stage_report('Packets not received:')
|
|
207
210
|
self.add_to_stage_report(tabulate.tabulate(not_received, headers='keys', showindex=False))
|
|
211
|
+
self.add_to_stage_report('')
|
|
208
212
|
|
|
209
213
|
self.ts_records.add_ts_errs_to_report(self)
|
|
210
214
|
|
|
@@ -223,6 +227,9 @@ class GenericUplinkStage(GenericStage):
|
|
|
223
227
|
|
|
224
228
|
return self.report
|
|
225
229
|
|
|
230
|
+
def swap_endianness(self, hex_str: str) -> str:
|
|
231
|
+
return ''.join(format(b, '02X') for b in bytes.fromhex(hex_str)[::-1])
|
|
232
|
+
|
|
226
233
|
|
|
227
234
|
class ManagementPacketStage(GenericUplinkStage):
|
|
228
235
|
def __init__(self, **kwargs):
|
|
@@ -374,6 +381,7 @@ class SensorPacketStage(GenericUplinkStage):
|
|
|
374
381
|
if len(not_received) > 0:
|
|
375
382
|
self.add_to_stage_report('Packets not received:')
|
|
376
383
|
self.add_to_stage_report(tabulate.tabulate(not_received_rep_cols, headers='keys', showindex=False))
|
|
384
|
+
self.add_to_stage_report('')
|
|
377
385
|
|
|
378
386
|
def all_varying_len_sensors_missed(not_received_df):
|
|
379
387
|
not_uploaded_count = 0
|
|
@@ -568,9 +576,6 @@ class AliasBridgeIDStage(GenericUplinkStage):
|
|
|
568
576
|
if any(payload in test_payload for test_payload in self.all_test_payloads):
|
|
569
577
|
filtered_pkts.append(pkt)
|
|
570
578
|
message['packets'] = filtered_pkts
|
|
571
|
-
|
|
572
|
-
def swap_endianness(hex_str: str) -> str:
|
|
573
|
-
return ''.join(format(b, '02X') for b in bytes.fromhex(hex_str)[::-1])
|
|
574
579
|
|
|
575
580
|
def is_alias_bridge_id_valid(message):
|
|
576
581
|
nonlocal aliasBridgeId_valid
|
|
@@ -585,7 +590,7 @@ class AliasBridgeIDStage(GenericUplinkStage):
|
|
|
585
590
|
debug_print(f"validation_data unexpected len:{len(validation_data)}, for payload:{pkt_payload}")
|
|
586
591
|
return
|
|
587
592
|
expected_bridge_id = validation_data.iloc[0]['adva']
|
|
588
|
-
expected_bridge_ids = [expected_bridge_id, swap_endianness(expected_bridge_id)]
|
|
593
|
+
expected_bridge_ids = [expected_bridge_id, self.swap_endianness(expected_bridge_id)]
|
|
589
594
|
if pkt_alias_bridge_id.upper() not in expected_bridge_ids:
|
|
590
595
|
report.append(f"Alias bridge ID of the packet does not match. Expected alias bridge IDs:{expected_bridge_ids} but the packet alias bridge ID is {pkt_alias_bridge_id}")
|
|
591
596
|
self.stage_pass = MINIMUM_SCORE
|
|
@@ -625,6 +630,7 @@ class GeolocationStage(GenericUplinkStage):
|
|
|
625
630
|
self.__dict__.update(kwargs)
|
|
626
631
|
super().__init__(**self.__dict__, stage_name=type(self).__name__)
|
|
627
632
|
self.graph_html_path = os.path.join(self.test_dir, f'{self.stage_name}.html')
|
|
633
|
+
self.result_indication = INFORMATIVE
|
|
628
634
|
|
|
629
635
|
|
|
630
636
|
def prepare_stage(self):
|
|
@@ -672,7 +678,7 @@ class GeolocationStage(GenericUplinkStage):
|
|
|
672
678
|
|
|
673
679
|
class ACLStage(GenericUplinkStage):
|
|
674
680
|
def __init__(self, **kwargs):
|
|
675
|
-
self.stage_tooltip = "
|
|
681
|
+
self.stage_tooltip = "Configures the gateway's Access Control List and simulate bridges. Expects 100% discard rate"
|
|
676
682
|
self.__dict__.update(kwargs)
|
|
677
683
|
super().__init__(**self.__dict__, stage_name=type(self).__name__)
|
|
678
684
|
self.pass_min = 60
|
|
@@ -712,7 +718,10 @@ class ACLStage(GenericUplinkStage):
|
|
|
712
718
|
self.mqttc.send_payload(payload)
|
|
713
719
|
time.sleep(5 if self.aggregation_time == 0 else self.aggregation_time)
|
|
714
720
|
debug_print('Status message received from gw:')
|
|
715
|
-
|
|
721
|
+
gw_status = self.mqttc.get_status_message()
|
|
722
|
+
if gw_status != None and isinstance(gw_status, dict) and ser_format.is_pb():
|
|
723
|
+
gw_status = ser_format.pb_status_acl_bytes_to_hex_string(gw_status)
|
|
724
|
+
debug_print(gw_status)
|
|
716
725
|
|
|
717
726
|
# Configuring each bridge in ACL, once for each mode
|
|
718
727
|
brg_ids = self.run_data['bridge_id'].unique().tolist()
|
|
@@ -759,18 +768,28 @@ class ACLStage(GenericUplinkStage):
|
|
|
759
768
|
num_pkts_should_received = self.comparison[SHOULD_RECEIVE].eq(True).sum()
|
|
760
769
|
num_pkts_should_discard = self.comparison[SHOULD_RECEIVE].eq(False).sum()
|
|
761
770
|
num_pkts_discarded_correctly = (self.comparison[SHOULD_RECEIVE].eq(False) & self.comparison[RECEIVED].eq(False)).sum()
|
|
762
|
-
|
|
771
|
+
num_pkts_received_correctly = (self.comparison[SHOULD_RECEIVE].eq(True) & self.comparison[RECEIVED].eq(True)).sum()
|
|
772
|
+
num_pkts_failed_to_discard = (self.comparison[SHOULD_RECEIVE].eq(False) & self.comparison[RECEIVED].eq(True)).sum()
|
|
773
|
+
num_pkts_failed_to_receive = (self.comparison[SHOULD_RECEIVE].eq(True) & self.comparison[RECEIVED].eq(False)).sum()
|
|
763
774
|
self.add_to_stage_report(f"Total packets advertised: {num_pkts_sent}")
|
|
764
|
-
self.add_to_stage_report(f"Packets received / should've received: {
|
|
775
|
+
self.add_to_stage_report(f"Packets received / should've received: {num_pkts_received_correctly} / {num_pkts_should_received}")
|
|
765
776
|
self.add_to_stage_report(f"Packets discarded / should've discarded: {num_pkts_discarded_correctly} / {num_pkts_should_discard}")
|
|
766
|
-
self.add_to_stage_report(f"
|
|
777
|
+
self.add_to_stage_report(f"Failed to discard: {num_pkts_failed_to_discard}\n")
|
|
767
778
|
|
|
768
|
-
if
|
|
779
|
+
if num_pkts_failed_to_discard > 0:
|
|
769
780
|
self.stage_pass = MINIMUM_SCORE
|
|
770
781
|
self.error_summary = "Received packet/s that should've been discarded"
|
|
771
782
|
for index, row in self.comparison.iterrows():
|
|
772
783
|
if row[RECEIVED] == True and row[SHOULD_RECEIVE] == False:
|
|
773
784
|
self.add_to_stage_report(f"Payload from bridge {row['aliasBridgeId']} should have been filtered out: {row[PAYLOAD]}")
|
|
785
|
+
self.add_to_stage_report('')
|
|
786
|
+
# Report packets failed to receive only if we have issue discarding.
|
|
787
|
+
# Since it increase the likelyhood of bad logic, and not just missed packets
|
|
788
|
+
if num_pkts_failed_to_receive > 0:
|
|
789
|
+
for index, row in self.comparison.iterrows():
|
|
790
|
+
if row[RECEIVED] == False and row[SHOULD_RECEIVE] == True:
|
|
791
|
+
self.add_to_stage_report(f"Payload from bridge {row['aliasBridgeId']} wasn't received: {row[PAYLOAD]}")
|
|
792
|
+
self.add_to_stage_report('')
|
|
774
793
|
elif num_pkts_received == 0:
|
|
775
794
|
self.stage_pass = MINIMUM_SCORE
|
|
776
795
|
self.error_summary = "No packets received"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: wiliot_certificate
|
|
3
|
-
Version: 4.4.
|
|
3
|
+
Version: 4.4.1
|
|
4
4
|
Summary: A library for certifying Wiliot-compliant boards
|
|
5
5
|
Author-email: Wiliot <support@wiliot.com>
|
|
6
6
|
License: MIT License
|
|
@@ -52,24 +52,33 @@ Requires-Dist: reportlab>=4.3.1
|
|
|
52
52
|
Requires-Dist: google-api-python-client>=2.162.0
|
|
53
53
|
Dynamic: license-file
|
|
54
54
|
|
|
55
|
-
# wiliot-certificate
|
|
55
|
+
# wiliot-certificate Version 4.4.0
|
|
56
56
|
|
|
57
57
|
<!-- Description -->
|
|
58
|
-
wiliot-certificate is a
|
|
58
|
+
wiliot-certificate is a Python library that provides tools for testing and certifying boards for compatibility with Wiliot’s ecosystem.
|
|
59
59
|
This python package includes the following CLI utilities:
|
|
60
60
|
- Gateway Certificate (`wlt-cert-gw`)
|
|
61
61
|
- Bridge Certificate (`wlt-cert-brg`)
|
|
62
62
|
|
|
63
|
+
# Version:
|
|
64
|
+
wiliot-certificate versions 4.4.0 are compatible with firmware version 4.4.6 (ESP: 4.4.44, BLE: 4.4.93)
|
|
65
|
+
|
|
63
66
|
## Installing wiliot-certificate
|
|
67
|
+
Uninstall wiliot-deployment-tools if installed (relevant for old wlt-gw-certificate users):
|
|
68
|
+
````commandline
|
|
69
|
+
pip uninstall wiliot-deployment-tools
|
|
70
|
+
````
|
|
71
|
+
|
|
72
|
+
Install wiliot-certificate:
|
|
64
73
|
````commandline
|
|
65
74
|
pip install wiliot-certificate
|
|
66
75
|
````
|
|
67
76
|
|
|
68
77
|
## Using wiliot-certificate
|
|
69
78
|
### Gateway Certificate
|
|
70
|
-
Test Wiliot
|
|
71
|
-
The
|
|
72
|
-
To run the
|
|
79
|
+
Test Wiliot Gateway capabilities.
|
|
80
|
+
The Gateway Certificate includes different test that run sequentially to test each capability reported by the Gateway.
|
|
81
|
+
To run the Gateway Certificate the Gateway needs to use a public MQTT Broker (Eclipse):
|
|
73
82
|
|
|
74
83
|
Host: mqtt.eclipseprojects.io
|
|
75
84
|
TLS TCP Port: 8883
|
|
@@ -79,59 +88,91 @@ Websocket Port: 80
|
|
|
79
88
|
|
|
80
89
|
More information can be found at https://mqtt.eclipseprojects.io/.
|
|
81
90
|
|
|
82
|
-
####
|
|
91
|
+
#### Gateway Certificate Release Notes:
|
|
83
92
|
Release:
|
|
84
93
|
- Standalone wiliot-certificate package
|
|
85
94
|
- Python 3.13 support
|
|
86
|
-
-
|
|
95
|
+
- Gateway API version 205 support
|
|
87
96
|
- Registration test added
|
|
88
97
|
- Bridge OTA stage added under actions
|
|
89
98
|
- Aggregation flag supported by StressTest
|
|
90
99
|
- -update flag compatibility fix. Upgrades bootloader if needed
|
|
91
100
|
- -actions flag to select specific actions to test
|
|
101
|
+
- ACL (Access control list) test for gateways reporting API version 205 in the connection test
|
|
102
|
+
|
|
103
|
+
#### The following capabilities are not tested in this version
|
|
104
|
+
- Access control list stress stress
|
|
105
|
+
- Validation schema verification
|
|
106
|
+
- Board type registered within the Board Type Management system
|
|
107
|
+
- Bridge OTA progress reporting
|
|
108
|
+
|
|
92
109
|
|
|
93
110
|
```
|
|
94
|
-
|
|
111
|
+
Usage: wlt-cert-gw [-h] -owner OWNER -gw GW [-suffix SUFFIX] [-tests {connection,uplink,downlink,stress}]
|
|
95
112
|
|
|
96
113
|
Gateway Certificate - CLI Tool to test Wiliot GWs
|
|
97
114
|
|
|
98
|
-
|
|
115
|
+
Required arguments:
|
|
99
116
|
-gw GW Gateway ID
|
|
100
117
|
|
|
101
|
-
|
|
118
|
+
Optional arguments:
|
|
102
119
|
-owner OWNER Owner ID (Required for non-registration tests)
|
|
103
120
|
-tests Pick specific tests to run
|
|
104
121
|
-actions Pick specific actions to test during the ActionsTest
|
|
105
122
|
-update Update the firmware of the test board
|
|
106
123
|
-pps Pick specific PPS rate for the stress test
|
|
107
|
-
-agg
|
|
108
|
-
-suffix Allow for different suffixes after the
|
|
109
|
-
-env Wiliot
|
|
124
|
+
-agg Duration uplink stages wait before processing packets
|
|
125
|
+
-suffix Allow for different suffixes after the Gateway ID in MQTT topics
|
|
126
|
+
-env Wiliot environment for registration and bridgeOTA tests
|
|
110
127
|
-h, --help show this help message and exit
|
|
111
128
|
```
|
|
112
129
|
|
|
113
130
|
### Bridge Certificate
|
|
114
|
-
Test Wiliot
|
|
115
|
-
The
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
131
|
+
Test Wiliot Bridge capabilities.
|
|
132
|
+
The Bridge Certificate includes different tests that run sequentially to test each capability reported by the bridge.
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
# update Gateway sim version :
|
|
136
|
+
- Update your gateway and bridge using Wiliot's platform. (https://platform.wiliot.com/)
|
|
137
|
+
- Transfer the gateway to dev mode - run the following command: py ut\dev_mode.py --gw [GW] --enable
|
|
138
|
+
- Connect the gateway to your laptop via USB connection:
|
|
139
|
+
- Run the following: wlt-cert-brg --gw SIM --brg <XXXXXXXXXXXX> --port <COM_PORT>
|
|
140
|
+
- For other options of running, see the 'run example' section.
|
|
141
|
+
|
|
142
|
+
#### Bridge Certificate Release Notes:
|
|
143
|
+
Release
|
|
144
|
+
- First release of Bridge Certificate – includes validation tests for bridge functionality.
|
|
145
|
+
- Additional details are available in the JSON files.
|
|
146
|
+
|
|
147
|
+
# The following capabilities are not tested in this version
|
|
148
|
+
|
|
149
|
+
## Power management
|
|
150
|
+
- Functionality of energize and transmit in sleep mode
|
|
151
|
+
## Edge management
|
|
152
|
+
- Timing of heartbeat and interface packets
|
|
153
|
+
## Module Energy 2400
|
|
154
|
+
- Functionality of energy pattern, output power and duty cycle
|
|
155
|
+
## Module Energy SUB1G
|
|
156
|
+
- Functionality of energy pattern and duty cycle
|
|
157
|
+
## Module Datapath
|
|
158
|
+
- RSSI edge cases: -127 and 0
|
|
159
|
+
- Functionality of transmission pattern, output power
|
|
160
|
+
- Pacer interval with channel 10 and 500k modulation
|
|
161
|
+
- Pacer interval using GEN3 Pixels
|
|
162
|
+
- Packet filter: the following configuration - DEBUG, TEMP & DEBUG, TEMPS & DEBUG & ADVANCE
|
|
163
|
+
- Rx rate feature with extended advertising
|
|
164
|
+
- Functionality of adaptive pacer algorithm
|
|
165
|
+
- Supported Pixels for extended advertising and GEN3
|
|
166
|
+
## Calibration
|
|
167
|
+
- Functionality of output power and interval calibration
|
|
168
|
+
- Functionality of calibration transmission patterns for the configuration STANDARD & EU & DISABLE
|
|
125
169
|
|
|
126
|
-
#### BRG Certificate Release Notes:
|
|
127
|
-
1.3.0:
|
|
128
|
-
- FIRST VERSION
|
|
129
170
|
|
|
130
171
|
```
|
|
131
|
-
usage:
|
|
172
|
+
usage: wlt-cert-brg [-h] [--brg BRG] [--brg_cloud_connectivity BRG_CLOUD_CONNECTIVITY] [--brg1 BRG1] --gw GW [--data {tags,sim}] [--port PORT] [--clean] [--tl TL] [--run RUN]
|
|
132
173
|
[--drun DRUN] [--exit_on_test_failure] [--exit_on_param_failure] [--analyze_interference]
|
|
133
174
|
|
|
134
|
-
Bridge Certificate CLI
|
|
175
|
+
# Bridge Certificate CLI
|
|
135
176
|
|
|
136
177
|
options:
|
|
137
178
|
-h, --help show this help message and exit
|
|
@@ -12,12 +12,12 @@ brg_certificate/cert_protobuf.py,sha256=1jiPIYBFkA21iClxn2fC3GEQzdh7wLB01pdddwXM
|
|
|
12
12
|
brg_certificate/cert_results.py,sha256=GU4oQf1NBrehhaQRPrOuv3ts3RUIzxitaCpxKxNJRu0,20870
|
|
13
13
|
brg_certificate/cert_utils.py,sha256=zFQFNxNOi5AH92JgWknZv9NZN-sz-G-dh7sOzz_SRgw,16550
|
|
14
14
|
brg_certificate/certificate_bcc_sanity_test_list.txt,sha256=SURuNOLuIO7xzh5KnMBYYzwMjZlcLqGaPLwBdqxCKbc,2281
|
|
15
|
-
brg_certificate/certificate_bcc_test_list.txt,sha256=
|
|
15
|
+
brg_certificate/certificate_bcc_test_list.txt,sha256=WduySF_fWZ3HK1Wr4zGfFNiyRL8ONsIV9D7vyBCpmig,3332
|
|
16
16
|
brg_certificate/certificate_sanity_test_list.txt,sha256=Egv00zGNAWdFhzO4T1oUkmeLOSG35aHNfXSxH6DRd9g,2291
|
|
17
17
|
brg_certificate/certificate_test_list.txt,sha256=RnQkzEWrF_RJlDL0E75mwnboKsJUNCX8uAMZs6AOL1M,3624
|
|
18
18
|
brg_certificate/restore_brg.py,sha256=rPV-Foa-mPHUSTdJq_LDNuoL6orMyevbulzRIW4GIHs,2341
|
|
19
|
-
brg_certificate/wltPb_pb2.py,sha256=
|
|
20
|
-
brg_certificate/wltPb_pb2.pyi,sha256=
|
|
19
|
+
brg_certificate/wltPb_pb2.py,sha256=DPFrv5IVbxBUpmGRXO6iZjp-QwWUUaD9c37lMZnQoCM,8686
|
|
20
|
+
brg_certificate/wltPb_pb2.pyi,sha256=OcVo8ehkzIQ9EZoXp4om_kT2Any32stYKTTQvUsPEMU,11472
|
|
21
21
|
brg_certificate/wlt_types.py,sha256=7pWm-56wDkq7HoMheBdvjUwbDS8suYTz13aEeAgIc6w,5166
|
|
22
22
|
brg_certificate/ag/energous_v0_defines.py,sha256=3VEpuhPee2jLJ9cGuLBNuk_zs2ExHorWor7fhkRTIyk,64353
|
|
23
23
|
brg_certificate/ag/energous_v1_defines.py,sha256=vIOy1wMmN4k90TEJ1oiDRGDDB52WTWT3j2GyRFTanzU,64563
|
|
@@ -51,50 +51,50 @@ brg_certificate/config/hivemq.json,sha256=nj61J4FaDeVopndiK-vAxlV4xw5d-EYnTIYtZh
|
|
|
51
51
|
brg_certificate/config/mosquitto.json,sha256=Wd8Fj36GcZNdIKpXZQzx3wb8EmnTBDmOx1kA0Qgi0Ww,254
|
|
52
52
|
brg_certificate/config/mosquitto.md,sha256=xU7q2-FpYYwxd6xE-6cl6j_ywc3120ZZnGG1ofl9peY,2494
|
|
53
53
|
brg_certificate/config/wiliot-dev.json,sha256=J6O70nIJYk_qcnw6Hxf9TaKxcaG72p_dqAUpbbeCsCQ,288
|
|
54
|
-
brg_certificate/tests/calibration/interval_test/interval_test.json,sha256=
|
|
55
|
-
brg_certificate/tests/calibration/interval_test/interval_test.py,sha256=
|
|
56
|
-
brg_certificate/tests/calibration/output_power_test/output_power_test.json,sha256=
|
|
57
|
-
brg_certificate/tests/calibration/output_power_test/output_power_test.py,sha256=
|
|
58
|
-
brg_certificate/tests/calibration/pattern_test/pattern_test.json,sha256=
|
|
59
|
-
brg_certificate/tests/calibration/pattern_test/pattern_test.py,sha256=
|
|
54
|
+
brg_certificate/tests/calibration/interval_test/interval_test.json,sha256=xHDygAh4NFOlgHnj3IJtcCV7ywbavF2BFMDE95A8yI8,594
|
|
55
|
+
brg_certificate/tests/calibration/interval_test/interval_test.py,sha256=0gi3uOXMQ1IXoGJQrHVJewAbai3Mh6kv1laH0rRWEz0,1139
|
|
56
|
+
brg_certificate/tests/calibration/output_power_test/output_power_test.json,sha256=B3bvNohuIaPKWFgDJIODbL1OLDclLuszkTGxEYAEm34,690
|
|
57
|
+
brg_certificate/tests/calibration/output_power_test/output_power_test.py,sha256=PSSRFxJ2Yq7YVz1mac3FZCg7NeI9TGd3as5-sXcIuGY,1115
|
|
58
|
+
brg_certificate/tests/calibration/pattern_test/pattern_test.json,sha256=1i0O5_0StjAjusfkEWIiK1uwKbP3hqN9AJHn1IgHeOQ,1021
|
|
59
|
+
brg_certificate/tests/calibration/pattern_test/pattern_test.py,sha256=fLbnShqqu1ptD2DIFgtbERK1qWkeZb3Zejq-IuM8VC8,4315
|
|
60
60
|
brg_certificate/tests/datapath/aging_test/aging_test.json,sha256=J-cqOVxqtcbq5DEvkUnfhvyshpbm2sfyoD6UUmvx3bk,900
|
|
61
|
-
brg_certificate/tests/datapath/aging_test/aging_test.py,sha256=
|
|
61
|
+
brg_certificate/tests/datapath/aging_test/aging_test.py,sha256=f_qxDOgHuMjjfmJDFPxxYxXzlRrBW0y5yqMiVThiMTY,6042
|
|
62
62
|
brg_certificate/tests/datapath/num_of_tags_test/num_of_tags_test.json,sha256=J3FYtqCwyjoqMnxu7ZHKF9McQAxUvWHSop8jRTkuPj0,829
|
|
63
|
-
brg_certificate/tests/datapath/num_of_tags_test/num_of_tags_test.py,sha256=
|
|
64
|
-
brg_certificate/tests/datapath/output_power_test/output_power_test.json,sha256=
|
|
65
|
-
brg_certificate/tests/datapath/output_power_test/output_power_test.py,sha256=
|
|
66
|
-
brg_certificate/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.json,sha256=
|
|
67
|
-
brg_certificate/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.py,sha256=
|
|
63
|
+
brg_certificate/tests/datapath/num_of_tags_test/num_of_tags_test.py,sha256=WBCdpbqkH1Q9Ry3XfQvqu-3TS7RGcAeSGTn0UTJg8Uk,3403
|
|
64
|
+
brg_certificate/tests/datapath/output_power_test/output_power_test.json,sha256=V4XCGroVhJDYfVXp04YaF-3CubfKaMxuYganSOM7DAg,696
|
|
65
|
+
brg_certificate/tests/datapath/output_power_test/output_power_test.py,sha256=LvHgjMwptUfER4Q8NJ4NfjPfkEyDMbaDitd1I6QXEaI,1121
|
|
66
|
+
brg_certificate/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.json,sha256=IX4Undkuv3RCsSXy-GfsdmgSrpNwSXbkF9UHRctgyhM,947
|
|
67
|
+
brg_certificate/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.py,sha256=daE1NCAiw1KTvKd3bznhMT8wUC7DXc-M11t2CxDIKWI,2602
|
|
68
68
|
brg_certificate/tests/datapath/pacer_interval_tags_count_test/pacer_interval_tags_count_test.json,sha256=TrMceZ6FV5g7tQdLRdWLBmuJjUH-HuBv8qYOD22tzBo,905
|
|
69
69
|
brg_certificate/tests/datapath/pacer_interval_tags_count_test/pacer_interval_tags_count_test.py,sha256=dKRe0tKOeRCm_AhSxHLMV1zMvdq8qAJYYPJDtrdJffo,3956
|
|
70
70
|
brg_certificate/tests/datapath/pacer_interval_test/pacer_interval_test.json,sha256=3OLVPgHuu6y_hMnxPgu2FwW6D_rJIzNyPYXsznFOFUo,921
|
|
71
|
-
brg_certificate/tests/datapath/pacer_interval_test/pacer_interval_test.py,sha256=
|
|
72
|
-
brg_certificate/tests/datapath/pattern_test/pattern_test.json,sha256=
|
|
73
|
-
brg_certificate/tests/datapath/pattern_test/pattern_test.py,sha256=
|
|
74
|
-
brg_certificate/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.json,sha256=
|
|
75
|
-
brg_certificate/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.py,sha256=
|
|
76
|
-
brg_certificate/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.json,sha256=
|
|
77
|
-
brg_certificate/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.py,sha256=
|
|
78
|
-
brg_certificate/tests/datapath/pkt_filter_test/pkt_filter_test.json,sha256=
|
|
79
|
-
brg_certificate/tests/datapath/pkt_filter_test/pkt_filter_test.py,sha256=
|
|
80
|
-
brg_certificate/tests/datapath/rssi_threshold_test/rssi_threshold_test.json,sha256=
|
|
81
|
-
brg_certificate/tests/datapath/rssi_threshold_test/rssi_threshold_test.py,sha256=
|
|
82
|
-
brg_certificate/tests/datapath/rx_channel_test/rx_channel_test.json,sha256=
|
|
83
|
-
brg_certificate/tests/datapath/rx_channel_test/rx_channel_test.py,sha256=
|
|
71
|
+
brg_certificate/tests/datapath/pacer_interval_test/pacer_interval_test.py,sha256=nqNUew48m_FVDUwxiQLzp-qg2e_0N2ZyQKvMmkw-Kz0,2595
|
|
72
|
+
brg_certificate/tests/datapath/pattern_test/pattern_test.json,sha256=EjV4vYrmkIHc8B2KE2OLq42MMTLi9K2n_YrZx8gurHA,758
|
|
73
|
+
brg_certificate/tests/datapath/pattern_test/pattern_test.py,sha256=eE52YSSMKnBFhSdtbGRhCDxk_qKcMI6m1TRPW8RL1Vg,1137
|
|
74
|
+
brg_certificate/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.json,sha256=87ppotggyGvBs_R4NsAnCjvzbAZS9C1CE93Hfj4rjic,1202
|
|
75
|
+
brg_certificate/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.py,sha256=k2pQta-QfjqrtQGAh7TsygAsHHsZ9kFw9XWnzuTQN2g,3114
|
|
76
|
+
brg_certificate/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.json,sha256=0kypJ_QvnoYQ_doOHi_sjSdCKfKLAkgDDp7Z5q6EZ1k,1156
|
|
77
|
+
brg_certificate/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.py,sha256=bjcZgRaR-ZN82J9eao1MbXb78M7KGbhed6rPHBhQYL0,3106
|
|
78
|
+
brg_certificate/tests/datapath/pkt_filter_test/pkt_filter_test.json,sha256=nW0M2zznpvgLyw-mvHedY22Wno3-jCIycx8Emiyv5p0,1167
|
|
79
|
+
brg_certificate/tests/datapath/pkt_filter_test/pkt_filter_test.py,sha256=Q4HTfqFdQYt72wnd-vBrDMZ8F20ocLoKECnyGYJnwTg,3086
|
|
80
|
+
brg_certificate/tests/datapath/rssi_threshold_test/rssi_threshold_test.json,sha256=89IWoUid1s4q471K229k7h3HbScj2PNH6VxmMKGZ1XM,737
|
|
81
|
+
brg_certificate/tests/datapath/rssi_threshold_test/rssi_threshold_test.py,sha256=heC7U7PdhWBIhYS5PhEH1UC8rMTAniK7nJNJY8ELHvs,3213
|
|
82
|
+
brg_certificate/tests/datapath/rx_channel_test/rx_channel_test.json,sha256=FVxQKGqCSGfafn17Y3X2ztGtUxodmv9NZJgWVRwcKeo,765
|
|
83
|
+
brg_certificate/tests/datapath/rx_channel_test/rx_channel_test.py,sha256=u2HyaT_rBVPeTdWJDMZAp3mrbpD9m8JtQ6itv9i4QhE,1740
|
|
84
84
|
brg_certificate/tests/datapath/rx_rate_gen2_test/rx_rate_gen2_test.json,sha256=bYp_P_r8XgFDyUv1on5jL8Tp-04RhnnGJp2qOJhd4Tk,1395
|
|
85
|
-
brg_certificate/tests/datapath/rx_rate_gen2_test/rx_rate_gen2_test.py,sha256=
|
|
85
|
+
brg_certificate/tests/datapath/rx_rate_gen2_test/rx_rate_gen2_test.py,sha256=7fierhPmE8MjqwhvfsaAswtF3qnXeilDzJar47wuMdA,10503
|
|
86
86
|
brg_certificate/tests/datapath/rx_rate_gen3_test/rx_rate_gen3_test.json,sha256=qhVoafzoQx8oO4VSxFZDnqXFLI3r8I6IK6ZLWpGAgRY,1395
|
|
87
|
-
brg_certificate/tests/datapath/rx_rate_gen3_test/rx_rate_gen3_test.py,sha256=
|
|
88
|
-
brg_certificate/tests/datapath/stress_gen3_test/stress_gen3_test.json,sha256=
|
|
89
|
-
brg_certificate/tests/datapath/stress_gen3_test/stress_gen3_test.py,sha256=
|
|
90
|
-
brg_certificate/tests/datapath/stress_test/stress_test.json,sha256=
|
|
91
|
-
brg_certificate/tests/datapath/stress_test/stress_test.py,sha256=
|
|
87
|
+
brg_certificate/tests/datapath/rx_rate_gen3_test/rx_rate_gen3_test.py,sha256=NaLZu7s99JqattYqxbOIDpviTGSAVp6H_RjBXZwinZc,10503
|
|
88
|
+
brg_certificate/tests/datapath/stress_gen3_test/stress_gen3_test.json,sha256=0Xrt9c43zt_X80Hc9syRWvJbUgcNCJiNM8QxKu2j9_M,1378
|
|
89
|
+
brg_certificate/tests/datapath/stress_gen3_test/stress_gen3_test.py,sha256=57gjJtsbBfNiAeFZeC81i51QC9gZRsUZw0zDOuI4Shg,11008
|
|
90
|
+
brg_certificate/tests/datapath/stress_test/stress_test.json,sha256=MG79WsyLNq9kOeA5Z_8L_7cbFZhio9J2jJT3-_DdVJ4,1378
|
|
91
|
+
brg_certificate/tests/datapath/stress_test/stress_test.py,sha256=ddu_YG6Z0Fw4fSvEcfwm3PJvSVW3d9QOgI749cgqBGI,11007
|
|
92
92
|
brg_certificate/tests/datapath/tx_repetition_algo_test/tx_repetition_algo_test.json,sha256=RLyxlEUQF24gMXLhsWLOd0jjUZ7KEOX1zSmO9DjVHa0,808
|
|
93
93
|
brg_certificate/tests/datapath/tx_repetition_algo_test/tx_repetition_algo_test.py,sha256=DxEPHS-ivLBwSxX07cYxnoVjB_DG1XPQrWeK4288hS4,4044
|
|
94
|
-
brg_certificate/tests/datapath/tx_repetition_test/tx_repetition_test.json,sha256=
|
|
95
|
-
brg_certificate/tests/datapath/tx_repetition_test/tx_repetition_test.py,sha256=
|
|
96
|
-
brg_certificate/tests/edge_mgmt/actions_test/actions_test.json,sha256=
|
|
97
|
-
brg_certificate/tests/edge_mgmt/actions_test/actions_test.py,sha256=
|
|
94
|
+
brg_certificate/tests/datapath/tx_repetition_test/tx_repetition_test.json,sha256=2mcvlH-djpKP-Al7TSwGx47fiDItk-U-z0Hgg3lWwFY,968
|
|
95
|
+
brg_certificate/tests/datapath/tx_repetition_test/tx_repetition_test.py,sha256=ooCFmhjhnaTmMGT9NBsPTChIyhdezs5Afifjyeo2S0c,3613
|
|
96
|
+
brg_certificate/tests/edge_mgmt/actions_test/actions_test.json,sha256=Nc7amijSFqu5aS2Dw60MKPvwoXTdwx7KJbmgl2TqZUE,714
|
|
97
|
+
brg_certificate/tests/edge_mgmt/actions_test/actions_test.py,sha256=pWHi-4qxEiY7ilGqJKexnLQtsugTQVgMRkc4OG8P23E,18739
|
|
98
98
|
brg_certificate/tests/edge_mgmt/brg2brg_ota_ble5_test/brg2brg_ota_ble5_test.json,sha256=lYdqQJtgQwVIK4_pUD_abCt4bSHSqFpJQ1lWLcx9Z9I,1268
|
|
99
99
|
brg_certificate/tests/edge_mgmt/brg2brg_ota_ble5_test/brg2brg_ota_ble5_test.py,sha256=kedRXAc8sgRnL2JRFNXaLNMqgykQlrSYTbbP_08WwzQ,4400
|
|
100
100
|
brg_certificate/tests/edge_mgmt/brg2brg_ota_test/brg2brg_ota_test.json,sha256=lFLCF9RNZXYjmjeXOHTrasNAmsPF6uDXmfex93DrrSA,1158
|
|
@@ -105,12 +105,12 @@ brg_certificate/tests/edge_mgmt/ota_test/ota_test.json,sha256=A-psNlYEFZ6f0KtdKt
|
|
|
105
105
|
brg_certificate/tests/edge_mgmt/ota_test/ota_test.py,sha256=m3SlHdtEtbE0L8rclZ-0_z1RsJFm7lej9fxbrv76EXQ,5207
|
|
106
106
|
brg_certificate/tests/edge_mgmt/periodic_msgs_test/periodic_msgs_test.json,sha256=As4vG-Tx4iOTF6KWrm-7ciipWh2x5aDbLYn_oN5OjGk,584
|
|
107
107
|
brg_certificate/tests/edge_mgmt/periodic_msgs_test/periodic_msgs_test.py,sha256=VMGVYtzP2Ic1A5y56zQzLYwMxkJw3DU671ownzmj4rQ,1977
|
|
108
|
-
brg_certificate/tests/energy2400/duty_cycle_test/duty_cycle_test.json,sha256
|
|
109
|
-
brg_certificate/tests/energy2400/duty_cycle_test/duty_cycle_test.py,sha256=
|
|
110
|
-
brg_certificate/tests/energy2400/output_power_test/output_power_test.json,sha256=
|
|
111
|
-
brg_certificate/tests/energy2400/output_power_test/output_power_test.py,sha256=
|
|
112
|
-
brg_certificate/tests/energy2400/pattern_test/pattern_test.json,sha256=
|
|
113
|
-
brg_certificate/tests/energy2400/pattern_test/pattern_test.py,sha256=
|
|
108
|
+
brg_certificate/tests/energy2400/duty_cycle_test/duty_cycle_test.json,sha256=-meatjF53qoFBO_q_gOfQvDRDW79Rh5F6T9HOfNqBwE,684
|
|
109
|
+
brg_certificate/tests/energy2400/duty_cycle_test/duty_cycle_test.py,sha256=MG3KHDHvrG6loJxd0vQPgUlPt5LCaBNXYTLSUj7J8CM,1126
|
|
110
|
+
brg_certificate/tests/energy2400/output_power_test/output_power_test.json,sha256=vGyqsmKUyw_5kfgC-bp-fILVFC63CcVRD7cIKTnwHUU,699
|
|
111
|
+
brg_certificate/tests/energy2400/output_power_test/output_power_test.py,sha256=8e1ITKdUJb0f8LfgWDlLyQGgQnM7lkdSIo4KyleclyA,1129
|
|
112
|
+
brg_certificate/tests/energy2400/pattern_test/pattern_test.json,sha256=IlmfE9MbN59IhQyffhAFMCWoaQJcYZWp1qHv2zzs6LQ,866
|
|
113
|
+
brg_certificate/tests/energy2400/pattern_test/pattern_test.py,sha256=4qD--IYlqvexTBNSv7d6dDJ7Q2tUqi3-FgL9pCgWuI4,1147
|
|
114
114
|
brg_certificate/tests/energy2400/signal_indicator_ble5_10_250k_test/signal_indicator_ble5_10_250k_test.json,sha256=XeH-0GbMC4X_g5S8Or_9-DcIic2E6ffo770f5we8uDY,1409
|
|
115
115
|
brg_certificate/tests/energy2400/signal_indicator_ble5_10_250k_test/signal_indicator_ble5_10_250k_test.py,sha256=WzpUZoxpmdp5IDCi7-UIgi9vwMC4j7KQG5N9JfACGtE,19205
|
|
116
116
|
brg_certificate/tests/energy2400/signal_indicator_ble5_10_500k_test/signal_indicator_ble5_10_500k_test.json,sha256=b8mVVwmXup3Xi5dpC2UHOsS0Qhj3DwbxFfzce8GjLAY,1403
|
|
@@ -119,18 +119,18 @@ brg_certificate/tests/energy2400/signal_indicator_sub1g_2_4_test/signal_indicato
|
|
|
119
119
|
brg_certificate/tests/energy2400/signal_indicator_sub1g_2_4_test/signal_indicator_sub1g_2_4_test.py,sha256=cVEc0LKCRdzmF85hx2kWQx2gizp_Y_UAXecsGY1852Y,7804
|
|
120
120
|
brg_certificate/tests/energy2400/signal_indicator_test/signal_indicator_test.json,sha256=iqT5e6Dv1415_LVev_5uowq0dpLTutBJulXYvhpXhjk,1382
|
|
121
121
|
brg_certificate/tests/energy2400/signal_indicator_test/signal_indicator_test.py,sha256=k0SG_LOdfFjNHmtuWbOUuYQvECvopGdVp_PdntdKtpQ,16175
|
|
122
|
-
brg_certificate/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.json,sha256=
|
|
123
|
-
brg_certificate/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.py,sha256=
|
|
124
|
-
brg_certificate/tests/energy_sub1g/pattern_test/pattern_test.json,sha256=
|
|
125
|
-
brg_certificate/tests/energy_sub1g/pattern_test/pattern_test.py,sha256=
|
|
122
|
+
brg_certificate/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.json,sha256=AroWSbQnToy4_hwReF1JQnAQPgV5A6VXqaP2I69prAY,713
|
|
123
|
+
brg_certificate/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.py,sha256=mtmRpkWCjuC90axh3hCspTMrOpGo8gtTvAOYsO70I9M,1147
|
|
124
|
+
brg_certificate/tests/energy_sub1g/pattern_test/pattern_test.json,sha256=7rIPAklqUC03r1JDvzQUD_9JLvn5k0m-ifd7VFBRxsE,1183
|
|
125
|
+
brg_certificate/tests/energy_sub1g/pattern_test/pattern_test.py,sha256=nqVjDDUKgIVTP7VdS_uyxly-0PIyA1UyyjozspjX0C8,1107
|
|
126
126
|
brg_certificate/tests/energy_sub1g/signal_indicator_functionality_test/signal_indicator_functionality_test.json,sha256=qsuf6b0dj_0bp3DhjczuBwiT6jFxyUO8tlJsrj79mLQ,1378
|
|
127
127
|
brg_certificate/tests/energy_sub1g/signal_indicator_functionality_test/signal_indicator_functionality_test.py,sha256=I9LTNBFd5Nx-4J8Vx_kk_hDRtUjyVu-k6ShIsZDYyQ8,26083
|
|
128
|
-
brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.json,sha256=
|
|
129
|
-
brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.py,sha256=
|
|
128
|
+
brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.json,sha256=dQxNN--ZG52EO2WWpKxYarkZl3Zuz_uR7NOieiOlZwY,746
|
|
129
|
+
brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.py,sha256=l-2kmmv-Kw2sjWyKNeJrP5oW8ziP9_rFAdSQspQA2L8,1197
|
|
130
130
|
brg_certificate/tests/pwr_mgmt/pwr_mgmt_test/pwr_mgmt_test.json,sha256=8mfJavH21XJ4iHD3QDY_H8MVKXr59sA4O3Plx38n1Lk,826
|
|
131
131
|
brg_certificate/tests/pwr_mgmt/pwr_mgmt_test/pwr_mgmt_test.py,sha256=VoyZhB2JShzpObXlPD2CN9cLBkAVmJ3915dlbv3488c,3726
|
|
132
|
-
brg_certificate/tests/sensors/ext_sensor_test/ext_sensor_test.json,sha256=
|
|
133
|
-
brg_certificate/tests/sensors/ext_sensor_test/ext_sensor_test.py,sha256=
|
|
132
|
+
brg_certificate/tests/sensors/ext_sensor_test/ext_sensor_test.json,sha256=8MdE9fAz--cb9VVfbNXosX4HVr2ePjA_oPaMLbaHoBw,1932
|
|
133
|
+
brg_certificate/tests/sensors/ext_sensor_test/ext_sensor_test.py,sha256=uYlOSAo-iRPAhV1WklRqmNDjakkNnz93aGhwBeauAh8,12974
|
|
134
134
|
common/wlt_logo.png,sha256=21DEhCEOOBU7Zt7ocwVIKU_CKUoHXScc3ej5VAzVsjM,132154
|
|
135
135
|
gw_certificate/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
136
136
|
gw_certificate/cert_results.py,sha256=y299oQ3TW4xYp0aM20txqvt7ufsUXSunqg2HN3M5emQ,8856
|
|
@@ -164,46 +164,47 @@ gw_certificate/api_if/205/logs.json,sha256=vfVi4hkxKGcSiupTSS2Er8wn4hZ8_MTaO5xbi
|
|
|
164
164
|
gw_certificate/api_if/205/status.json,sha256=WVO5eGzadLazdkHQZ97yEYlPDzJu12WYRZb3s52kixk,1861
|
|
165
165
|
gw_certificate/common/analysis_data_bricks.py,sha256=_DZvurnE7ymKVJbu-YnQUJY0SalwmZxIuMsN-FMr7Qk,2537
|
|
166
166
|
gw_certificate/common/debug.py,sha256=sE_N4sWGRkbwdIb2QxqRtL8YQaePlaxvqecgnbxn6Xc,1208
|
|
167
|
-
gw_certificate/common/serialization_formatter.py,sha256=
|
|
167
|
+
gw_certificate/common/serialization_formatter.py,sha256=NC-tPZ5Dw3L7f9EF1PBtEz-eW7GPSGegcJo6_gmDpvc,4358
|
|
168
168
|
gw_certificate/common/utils.py,sha256=yjE6kdmMIRyQ0rPm56zZroi8a9zY4GnincmOPOL6rJo,215
|
|
169
169
|
gw_certificate/common/utils_defines.py,sha256=zLWKQBZscX1AVwBdJcM5GgZTJ5aYJWhQ1vjwX25EZrM,543
|
|
170
170
|
gw_certificate/common/wltPb_pb2.py,sha256=DPFrv5IVbxBUpmGRXO6iZjp-QwWUUaD9c37lMZnQoCM,8686
|
|
171
171
|
gw_certificate/common/wltPb_pb2.pyi,sha256=OcVo8ehkzIQ9EZoXp4om_kT2Any32stYKTTQvUsPEMU,11472
|
|
172
|
-
gw_certificate/interface/4.4.
|
|
173
|
-
gw_certificate/interface/4.4.
|
|
172
|
+
gw_certificate/interface/4.4.91_app.zip,sha256=Z_U2mg6UlpfDIqP8hBlQ7fA9MBr6jsHMxlEyaf8PP_0,171102
|
|
173
|
+
gw_certificate/interface/4.4.91_sd_bl_app.zip,sha256=Czstl4rmWat8Jm0QvQy6PyTLMXs-axZkf2XxeK73JEU,366514
|
|
174
174
|
gw_certificate/interface/ble_simulator.py,sha256=mdH28n2-pdywKGrTc4nqmyIThNpM68Qf4ICzzeCuxbE,2678
|
|
175
175
|
gw_certificate/interface/ble_sniffer.py,sha256=S5AtT_3gWlm3FCmQSR4KnCIfnr70E9LgQPtQEJs1YFM,6869
|
|
176
|
+
gw_certificate/interface/flash_fw.py,sha256=yAAAY9pBtlvzab0YFvHP48F8XBLmVm8OxkejiyCr7xo,2724
|
|
176
177
|
gw_certificate/interface/if_defines.py,sha256=EAdT26qFl7110breWbpTPrpYZRHmizzvd188bse36ek,999
|
|
177
178
|
gw_certificate/interface/mqtt.py,sha256=dVNkRiFXjCmFlz5897IIZta-t0H095uftczayqDjVUY,25619
|
|
178
179
|
gw_certificate/interface/nrfutil-linux,sha256=9Fzy9VLSzL5dwEWh4HJUFdfmXH69gTrUVV8hxEjPgGU,26071480
|
|
179
180
|
gw_certificate/interface/nrfutil-mac,sha256=YG-iPLwnYUFjwYriqaGaFtYuIj-0T4TkeSWkJ638HWQ,15839744
|
|
180
181
|
gw_certificate/interface/nrfutil.exe,sha256=_uOu7RhDpL_8CCdHzqYNwHKSnrNuZ9Ysij_XRx4NyS0,16155851
|
|
181
182
|
gw_certificate/interface/pkt_generator.py,sha256=yOSCEj8Ybjsq_u6tVmpsbkwYmLFqZR2eIk9k09AIsUM,22174
|
|
182
|
-
gw_certificate/interface/uart_if.py,sha256=
|
|
183
|
+
gw_certificate/interface/uart_if.py,sha256=m5YHsHo4E75714kThYtUN9OCP7AA9fEzag8QIHkguzo,10360
|
|
183
184
|
gw_certificate/interface/uart_ports.py,sha256=HOIdrkr8OtALhoorT51k_tvSh6VYholR2ey4_WwcIAk,547
|
|
184
185
|
gw_certificate/templates/results.html,sha256=w3kqslWDpHb1oYKSbY10RMDZe9HeI-O-GRP15oQIijA,12694
|
|
185
186
|
gw_certificate/templates/stage.html,sha256=o89N0DWCIs2foA9YzommBZ09EPPN7lytiEsHoXD6fWU,1009
|
|
186
187
|
gw_certificate/templates/table.html,sha256=PPUf0St1OPT0fB_6OK0SQlsRST-brUJ99x9-Rxwan1Y,201
|
|
187
188
|
gw_certificate/templates/test.html,sha256=lpwibyrmGXNyNxpxNbQNoT2b5oCq5WHUYZrF0oDnLSA,2062
|
|
188
189
|
gw_certificate/tests/__init__.py,sha256=6XWYuJ1urHGCUTPQ6bbn25lDd32ZyB2dIDr2A_mkvTg,468
|
|
189
|
-
gw_certificate/tests/actions.py,sha256=
|
|
190
|
+
gw_certificate/tests/actions.py,sha256=_EnQxlN3HowRtxdb0fsVz3dOpPl8xLQhKPxzZ2RxVXk,13906
|
|
190
191
|
gw_certificate/tests/bad_crc_to_PER_quantization.csv,sha256=2V1_7HV7pKEKddA429rp4tTn-je9G3Xi2tMvDhqvGhc,357
|
|
191
192
|
gw_certificate/tests/connection.py,sha256=f70DB1R0BHOlNnTYt4qa9tKwAJmNAHBju5bwvbcT6b0,9721
|
|
192
|
-
gw_certificate/tests/downlink.py,sha256=
|
|
193
|
-
gw_certificate/tests/generic.py,sha256=
|
|
193
|
+
gw_certificate/tests/downlink.py,sha256=UcA18NB5N7BEPIrvIvqXUc681isp0XNT9_tzTP8V-ik,8865
|
|
194
|
+
gw_certificate/tests/generic.py,sha256=C2tm5lalQlFyAF3OgA4qTkvJ8amYbxSjuh_jt4vtZfs,8416
|
|
194
195
|
gw_certificate/tests/registration.py,sha256=TgfYyDGkT-HAC11dJIdwFJTMZjTESFZb30-Q6ZCkXek,16152
|
|
195
|
-
gw_certificate/tests/throughput.py,sha256=
|
|
196
|
-
gw_certificate/tests/uplink.py,sha256=
|
|
196
|
+
gw_certificate/tests/throughput.py,sha256=vm1Oe4RVDHQZ2DOHpVtJOtdxN2ag6zg_2M4AhlGRkFk,11187
|
|
197
|
+
gw_certificate/tests/uplink.py,sha256=9jAJV9wKh7iuexwzMsGjSw4ig2dQJ4dp8W8ZsWiCxWs,40020
|
|
197
198
|
gw_certificate/tests/static/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
198
199
|
gw_certificate/tests/static/connection_defines.py,sha256=RZbqvGNjUN-ST5378VZpleRB_b3_6IwME-j0CFnWmgE,309
|
|
199
200
|
gw_certificate/tests/static/downlink_defines.py,sha256=gjzQff_70Rn8m6pmfGciFwEC7efYQGEM9yNwl-8zRCs,340
|
|
200
|
-
gw_certificate/tests/static/generated_packet_table.py,sha256=
|
|
201
|
-
gw_certificate/tests/static/packet_table.csv,sha256=
|
|
201
|
+
gw_certificate/tests/static/generated_packet_table.py,sha256=HDESJ-VF41RiZRKmrPAPRXXgMVNXPzDCIgzq0v05CyY,17059
|
|
202
|
+
gw_certificate/tests/static/packet_table.csv,sha256=dGPSheg-RHuShc8NE3SyhCBeNWxbelVBYxw2ayCB8j8,1882502
|
|
202
203
|
gw_certificate/tests/static/references.py,sha256=vVVaoC_3nEdu2OMtfr_XKxZLvnJmbDeK2pEDFkAzNtU,384
|
|
203
|
-
gw_certificate/tests/static/uplink_defines.py,sha256=
|
|
204
|
-
wiliot_certificate-4.4.
|
|
205
|
-
wiliot_certificate-4.4.
|
|
206
|
-
wiliot_certificate-4.4.
|
|
207
|
-
wiliot_certificate-4.4.
|
|
208
|
-
wiliot_certificate-4.4.
|
|
209
|
-
wiliot_certificate-4.4.
|
|
204
|
+
gw_certificate/tests/static/uplink_defines.py,sha256=PJGUpzr_mD4Z6xUKzpCR7JcD1n2rvWrNdyUYS0xQX4s,387
|
|
205
|
+
wiliot_certificate-4.4.1.dist-info/licenses/LICENSE,sha256=OL5ajUNVx888yC2ogol0BKwPRLdQAF1noGuQ7WrYiAA,1068
|
|
206
|
+
wiliot_certificate-4.4.1.dist-info/METADATA,sha256=yt2ippKZPqP3LeP0EVla4uDq9vs5EWRA_POoKgnniVU,9292
|
|
207
|
+
wiliot_certificate-4.4.1.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
|
|
208
|
+
wiliot_certificate-4.4.1.dist-info/entry_points.txt,sha256=19YeTHY3PnN1wbi7BcgZB0zSgRrp9bvahIX-dIMX3Sg,127
|
|
209
|
+
wiliot_certificate-4.4.1.dist-info/top_level.txt,sha256=wN_MwxdcfgPP5-WN6sRhmZnGXNbZmXalxwYdh3nb2RA,38
|
|
210
|
+
wiliot_certificate-4.4.1.dist-info/RECORD,,
|
|
Binary file
|
{wiliot_certificate-4.4.0a1.dist-info → wiliot_certificate-4.4.1.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{wiliot_certificate-4.4.0a1.dist-info → wiliot_certificate-4.4.1.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|
|
File without changes
|