summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Turney <tturney@google.com>2017-05-31 02:06:33 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2017-05-31 02:06:34 +0000
commitc21561d7e106b1ca5e28010e16f4bac4f6ecffaa (patch)
treefde948a4763701420aa47605bd697a4ee5c2a54a
parent7fc2d99b4f7e6c0b710e42ac55e915f710fcbb7f (diff)
parenta044a755c4359df7564f74e3dc3c4e6ecd885b8f (diff)
downloadplatform_tools_test_connectivity-c21561d7e106b1ca5e28010e16f4bac4f6ecffaa.tar.gz
platform_tools_test_connectivity-c21561d7e106b1ca5e28010e16f4bac4f6ecffaa.tar.bz2
platform_tools_test_connectivity-c21561d7e106b1ca5e28010e16f4bac4f6ecffaa.zip
Merge "PTS cmd line tool instructions" into oc-dev
-rw-r--r--acts/tests/google/bt/pts/instructions/GAP_PTS_INSTRUCTIONS482
-rw-r--r--acts/tests/google/bt/pts/instructions/GATT_PTS_INSTRUCTIONS1331
-rw-r--r--acts/tests/google/bt/pts/instructions/L2CAP_PTS_INSTRUCTIONS169
-rw-r--r--acts/tests/google/bt/pts/instructions/MCAP_PTS_INSTRUCTIONS60
-rw-r--r--acts/tests/google/bt/pts/instructions/RFCOMM_PTS_INSTRUCTIONS98
-rw-r--r--acts/tests/google/bt/pts/instructions/SDP_PTS_INSTRUCTIONS147
-rw-r--r--acts/tests/google/bt/pts/instructions/SM_PTS_INSTRUCTIONS215
7 files changed, 2502 insertions, 0 deletions
diff --git a/acts/tests/google/bt/pts/instructions/GAP_PTS_INSTRUCTIONS b/acts/tests/google/bt/pts/instructions/GAP_PTS_INSTRUCTIONS
new file mode 100644
index 0000000000..d50b44bdda
--- /dev/null
+++ b/acts/tests/google/bt/pts/instructions/GAP_PTS_INSTRUCTIONS
@@ -0,0 +1,482 @@
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+GAP
+=================================================================
+Note: Use this stack change to test all LE testcases:
+https://android-review.googlesource.com/#/c/319838/1/stack/btm/btm_ble_multi_adv.cc TSPC_bd_addr_iut should be set to 4AF441CF285A.
+This sets the random address to a static address.
+
+TC_MOD_NDIS_BV_01_C
+ bta_set_scan_mode SCAN_MODE_NONE
+ [PTS Interaction]
+
+TC_MOD_GDIS_BV_01_C
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_MOD_GDIS_BV_02_C
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_MOD_NCON_BV_01_C
+ bta_set_scan_mode SCAN_MODE_NONE
+
+TC_MOD_CON_BV_01_C
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_DISC_NONM_BV_01_C
+ Note: Requires https://android-review.googlesource.com/344824
+ ble_start_generic_nonconnectable_advertisement
+ [PTS Interaction] Enter Yes
+
+TC_DISC_NONM_BV_02_C
+ Note: Requires https://android-review.googlesource.com/344824
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter Yes
+
+TC_DISC_GENM_BV_01_C
+ [PTS Interaction] Answer NO to non-connectable adv question
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction]
+ ble_stop_all_advertisements
+
+TC_DISC_GENM_BV_02_C
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction]
+
+TC_DESC_GENP_BV_01_C
+ bta_start_discovery
+ [PTS Interaction]
+ bta_get_discovered_devices
+ [Verify output contains PTS GAP Device]
+ [PTS Interaction]
+
+TC_DESC_GENP_BV_02_C
+ bta_start_discovery
+ [PTS Interaction]
+ bta_get_discovered_devices
+ [Verify output contains PTS GAP Device]
+ [PTS Interaction]
+
+TC_DESC_GENP_BV_03_C
+ bta_start_discovery
+ [PTS Interaction]
+ bta_get_discovered_devices
+ [Verify output does not contain PTS GAP Device]
+ [PTS Interaction]
+
+TC_DESC_GENP_BV_04_C
+ bta_start_discovery
+ [PTS Interaction]
+ bta_get_discovered_devices
+ [Verify output does not contain PTS GAP Device]
+ [PTS Interaction]
+
+TC_DESC_GENP_BV_05_C
+ bta_start_discovery
+ [PTS Interaction]
+ bta_get_discovered_devices
+ [Verify output does not contain PTS GAP Device]
+ [PTS Interaction]
+
+TC_IDLE_GIN_BV_01_C
+ bta_start_discovery
+ bta_get_discovered_devices
+ [Verify output contains PTS GAP Device]
+ [PTS Interaction]
+ [PTS Interaction]
+
+TC_IDLE_NAMP_BV_01_C
+ [PTS Interaction] Yes
+ gattc_connect_over_le
+ gattc_read_char_by_instance_id 3
+ gattc_disconnect
+
+TC_IDLE_NAMP_BV_02_C
+ [PTS Interaction] No
+ gatts_open
+ ble_start_generic_connectable_advertisement
+
+TC_CONN_NCON_BV_01_C
+ ble_start_generic_connectable_advertisement
+
+TC_CONN_UCON_BV_02_C
+ ble_start_generic_connectable_advertisement
+
+TC_CONN_ACEP_BV_01_C
+ Note: PTS is very flacky, rerun multiple times to pass.
+ Note: Start the connection fast after PTS interaction
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction]
+ gattc_connect_over_le true
+ gattc_disconnect
+
+TC_CONN_GCEP_BV_01_C
+ Note: Start the connection fast after PTS interaction
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction]
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_CONN_GCEP_BV_02_C
+ [PTS Interaction]
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_CONN_DCEP_BV_01_C
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_CONN_DCEP_BV_03_C
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_CONN_CPUP_BV_01_C
+ ble_start_generic_connectable_advertisement
+ gattc_connect_over_le
+
+TC_CONN_CPUP_BV_02_C
+ ble_start_generic_connectable_advertisement
+ gattc_connect_over_le
+
+TC_CONN_CPUP_BV_03_C
+ ble_start_generic_connectable_advertisement
+ gattc_connect_over_le
+
+TC_CONN_CPUP_BV_04_C
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_CONN_CPUP_BV_05_C
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_CONN_TERM_BV_01_CF
+ gattc_connect_over_le
+ gattc_disconnect
+
+Note: Run the test a first time and it will fail. Change the address to
+be the peer address in the PTS logs that start with:
+ SEC_LE?SEC_LE_REMOTE_CSRK_REQUEST_IND=PDU
+ peerAddr: 'xxxxxxxxxxxx'O
+TC_BOND_NBON_BV_01_C
+ Set PTS IXIT value iut_privacy_enabled to False
+ config_set_nonbond
+ gattc_connect_over_le
+ [PTS Interaction] OK
+ Note: Do not accept pairing on phone until after you accept it on PTS
+ Enter pin from phone to PTS
+ [PTS Interactoin] OK to disconnect
+ gattc_connect_over_le
+ [PTS Interaction] OK
+ Enter pin from phone to PTS
+ [PTS Interactoin] OK to disconnect
+ config_reset
+
+Note: Run the test a first time and it will fail. Change the address to
+be the peer address in the PTS logs that start with:
+ SEC_LE?SEC_LE_REMOTE_CSRK_REQUEST_IND=PDU
+ peerAddr: 'xxxxxxxxxxxx'OK
+TC_BOND_NBON_BV_02_C
+ Set PTS IXIT value iut_privacy_enabled to False
+ config_set_nonbond
+ gattc_connect_over_le
+ bta_bond
+ Enter pin from phone to PTS
+ [PTS Interaction] OK to disconnect
+ gattc_connect_over_le
+ bta_bond
+ Enter pin from phone to PTS
+ [PTS Interaction] OK to disconnect
+ config_reset
+
+TC_BOND_NBON_BV_03_C
+ Set PTS IXIT value iut_privacy_enabled to False
+ config_set_nonbond
+ ble_start_generic_connectable_advertisement
+ Note: Do not accept pairing on phone until after you accept it on PTS
+ Enter pin from PTS to phone
+ config_reset
+
+TC_BOND_BON_BV_01_C
+ Note: Do not use static LE address
+ Set PTS IXIT value iut_privacy_enabled to True
+ ble_start_generic_connectable_advertisement
+ bta_start_pairing_helper
+ Enter Address into PTS
+ Start test
+ bta_bond
+ Note: Make sure we keep the link open always
+ gattc_connect_over_le
+ [PTS Interaction] Enter PIN from PTS to phone (hit ok on phone before PTSbt )
+ [PTS Interaction] Hit OK
+ Wait 5-10 seconds
+ [PTS Interaction] Hit Ok to disconnect
+ Wait 5-10 seconds
+ [PTS Interaction] Hit Ok to disconnect
+ bta_unbond
+
+Note: Run the test a first time and it will fail. Change the address to
+be the peer address in the PTS logs that start with:
+ SEC_LE?SEC_LE_REMOTE_CSRK_REQUEST_IND=PDU
+ peerAddr: 'xxxxxxxxxxxx'O
+TC_BOND_BON_BV_02_C
+ Set PTS IXIT value iut_privacy_enabled to False
+ config_set_disable_mitm
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_bond
+ Wait 5-10 seconds when PTS prompt comes up to disconnect
+ [PTS Interaction] Press OK to disconnect
+ gattc_connect_over_le
+ Wait 5-10 seconds when PTS prompt comes up to disconnect
+ [PTS Interaction] Press OK to disconnect
+ config_reset
+
+Note: Run the test a first time and it will fail. Change the address to
+be the peer address in the PTS logs that start with:
+ SEC_LE?SEC_LE_REMOTE_CSRK_REQUEST_IND=PDU
+ peerAddr: 'xxxxxxxxxxxx'O
+BOND_BON_BV_03
+ config_reset
+ Note: Send conenction request before pairing happens
+ gattc_connect_over_le
+ Do not accept pairing on phone until after you accept it on PTS
+ [PTS Interaction] Enter Pin from PTS to phone
+ [PTS Interaction] Press OK to disconnect
+ [PTS Interaction] Press OK to disconnect
+
+TC_BOND_BON_BV_04_C
+ gattc_connect_over_le
+ [PTS Interaction] Enter PIN from Phone to PTS
+ gattc_disconnect
+ gattc_connect_over_le
+ bta_unbond
+
+Note: Run the test a first time and it will fail. Change the address to
+be the peer address in the PTS logs that start with:
+ SEC_LE?SEC_LE_REMOTE_CSRK_REQUEST_IND=PDU
+ peerAddr: 'xxxxxxxxxxxx'O
+TC_SEC_AUT_BV_14_C
+ Set PTS IXIT value iut_privacy_enabled to False
+ config_set_disable_mitm
+ bta_start_pairing_helper
+ ble_start_generic_connectable_advertisement
+ gatts_setup_database LARGE_DB_1
+ Enter address in PTS and run test
+ As PTS is connecting to you run this command at the same time:
+ gattc_connect_over_le
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+ Note: Do not accept pairing on phone until after you accept it on PTS
+ Enter Pin from PTS to Phone
+ gatts_send_response GATT_SUCCESS
+ config_reset
+
+
+Note: Run the test a first time and it will fail. Change the address to
+be the peer address in the PTS logs that start with:
+ SEC_LE?SEC_LE_REMOTE_CSRK_REQUEST_IND=PDU
+ peerAddr: 'xxxxxxxxxxxx'O
+SEC_AUT_BV_17_C
+ Use PEER Address
+ config_set_disable_mitm
+ gatts_setup_database LARGE_DB_1
+ [PTS asks us to discover services]
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ gattc_read_char_by_instance_id 7
+ bta_bond
+ gattc_read_char_by_instance_id 7
+
+SEC_AUT_BV_18_C
+ Use LE address
+ config_set_disable_mitm
+ gatts_setup_database LARGE_DB_1
+ [PTS asks us to discover services]
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ gattc_read_char_by_instance_id 7
+ bta_bond
+ gattc_read_char_by_instance_id 7
+TC_ADV_BV_01_C
+ ble_adv_add_service_uuid_list 1802 1801
+ ble_start_generic_connectable_advertisement true
+
+SEC_AUT_BV_20_C
+ Note: Set IXIT value requires MITM to false
+ config_set_disable_mitm
+ bta_start_pairing_helper false
+ ble_start_generic_connectable_advertisement
+ Note: During pairing establish a gatt connection
+ gattc_connect_over_le
+ Accept Pairing on Phone (check contacts box)
+ [PTS Interaction] Press OK to disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ gattc_read_char_by_instance_id 7
+ Wait 5 seconds for PTS to process and finish up
+
+TC_SEC_AUT_BV_22_C
+ pixit mitm was false
+ config_set_disable_mitm
+ bta_start_pairing_helper
+ ble_adv_start_generic_advertisement
+ bta_unbond
+ [PTS Interaction] Select ok on PTS
+ config_reset
+
+TC_SEC_AUT_BV_24_C
+ Include workaround BLE_DELAY_REQUEST_ENC set to TRUE
+ config disable mitm
+ gatts_setup_database TEST_DB_2
+ gattc_connect_over_le
+ [PTS Interaction] enter pin from phone to pts
+ gattc_disconnect
+ gattc_connect_over_le
+ [PTS Interaction] enter 002a to pts
+ Note: PTS LIES, send GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+
+TC_ADV_BV_02_C
+ ble_adv_data_include_local_name true
+ ble_start_generic_connectable_advertisement
+
+TC_ADV_BV_03_C
+ ble_start_generic_connectable_advertisement
+
+TC_ADV_BV_04_C
+ ble_adv_data_add_manufacturer_data 1 1 2 3
+ ble_start_generic_connectable_advertisement true
+
+TC_ADV_BV_05_C
+ do_ble_adv_data_include_tx_power_level true
+ ble_start_generic_connectable_advertisement true
+
+TC_ADV_BV_13_C
+ CL Required: https://googleplex-android-review.git.corp.google.com/1819227
+ ble_start_generic_connectable_advertisement true
+
+TC_GAT_BV_01_C
+ [PTS Interaction] No
+ ble_start_generic_connectable_advertisement
+
+TC_DM_NCON_BV_01_C
+ [PTS Interaction] OK
+ [PTS Notification to start a non-connectable advertisement]
+ ble_start_generic_nonconnectable_advertisement
+
+TC_DM_CON_BV_01_C
+ Note: Use Bluetooth Public Address
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE
+ [PTS Interaction]
+
+TC_DM_BON_BV_01_C
+ Note: This one may take multiple tries
+ Note: Use Bluetooth Public Address
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ bta_start_pairing_helper
+ [PTS Interaction]
+ [PTS will ask to disconnect, during this time run next cmd ASAP]
+ bta_unbond
+ gattc_connect_over_le
+ bta_bond
+ [PTS will ask to disconnect, during this time run next cmd ASAP]
+ bta_unbond
+ [PTS Interaction]
+ gattc_connect_over_le
+ bta_bond
+ [PTS Interaction]
+ bta_unbond
+
+TC_DM_NAD_BV_01_C
+ bta_start_discovery
+ [Wait 10 seconds]
+ bta_get_discovered_devices
+ Verify PTS device is discovered
+ [PTS Interaction]
+
+TC_DM_NAD_BV_02_C
+ gattc_connect_over_le
+ gattc_read_all_char
+ gattc_disconnect
+
+TC_DM_LEP_BV_01_C
+ Note: Use Bluetooth Public Address
+ bta_set_device_name [TSPX_iut_device_name_in_adv_packet_for_random_address]
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ [PTS Interaction]
+ ble_adv_data_include_local_name true
+ ble_start_generic_connectable_advertisement
+
+TC_DM_LEP_BV_02_C
+ [PTS Interation]
+ [PTS Interation]
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ bta_disable
+ bta_enable
+
+TC_DM_LEP_BV_04_C
+ rfcomm_connect
+ rfcomm_disconnect
+
+TC_DM_LEP_BV_05_C
+ [PTS Interation]
+ rfcomm_connect
+ rfcomm_disconnect
+
+TC_DM_LEP_BV_06_C
+ gattc_connect_over_le
+
+TC_DM_LEP_BV_07_C
+ Note: Use Bluetooth Public Address
+ Note: Run these commands before executing the testcase on PTS Side
+ bta_set_device_name [TSPX_iut_device_name_in_adv_packet_for_random_address]
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ ble_adv_data_include_local_name true
+ ble_start_generic_connectable_advertisement
+
+TC_DM_LEP_BV_08_C
+ Note: Use Bluetooth Public Address
+ Note: Run these commands before executing the testcase on PTS Side
+ bta_set_device_name [TSPX_iut_device_name_in_adv_packet_for_random_address]
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ ble_adv_data_include_local_name true
+ ble_start_generic_connectable_advertisement
+
+TC_DM_LEP_BV_09_C
+ rfcomm_connect
+
+TC_DM_LEP_BV_10_C
+ Note: Use Bluetooth Public Address
+ Note: Run the first 4 commands before executing the testcase on PTS Side
+ bta_set_device_name [TSPX_iut_device_name_in_adv_packet_for_random_address]
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ ble_adv_data_include_local_name true
+ ble_start_generic_connectable_advertisement
+ bta_start_discovery
+ [Wait 10 seconds]
+ bta_get_discovered_devices
+ [Verify PTS device in list of discovered devices]
+ [PTS Interaction]
+ gattc_connect_over_bredr
+
+TC_DM_LEP_BV_11_C
+ Note: Use Bluetooth Public Address
+ Note: Run the first 4 commands before executing the testcase on PTS Side
+ bta_set_device_name [TSPX_iut_device_name_in_adv_packet_for_random_address]
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ ble_adv_data_include_local_name true
+ ble_start_generic_connectable_advertisement
+ gattc_connect_over_le
+ gattc_disconnect
diff --git a/acts/tests/google/bt/pts/instructions/GATT_PTS_INSTRUCTIONS b/acts/tests/google/bt/pts/instructions/GATT_PTS_INSTRUCTIONS
new file mode 100644
index 0000000000..b2a9af4be8
--- /dev/null
+++ b/acts/tests/google/bt/pts/instructions/GATT_PTS_INSTRUCTIONS
@@ -0,0 +1,1331 @@
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+GATT
+=================================================================
+TC_CL_GAC_BV_01_C
+ gattc_connect_over_le
+ gattc_request_mtu 23
+ [Read PTS Handle and Size]
+ gattc_write_char_by_instance_id [handle] [size]
+ gattc_disconnect
+
+TC_CL_GAD_BV_01_C
+ gattc_connect_over_le
+ gattc_refresh
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ [PTS Interation]
+ gattc_disconnect
+
+TC_CL_GAD_BV_02_C
+ gattc_connect_over_le
+ gattc_discover_service_by_uuid 1800
+ [PTS Interaction] Verify Values
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_discover_service_by_uuid 1801
+ [PTS Interaction] Verify Values
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_discover_service_by_uuid 33a7
+ [PTS Interaction] Verify Values
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_discover_service_by_uuid 0000a00c-0000-0000-0123-456789abcdef
+ [PTS Interaction] Verify Values
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_discover_service_by_uuid 00006634-0000-0000-0123-456789abcdef
+ [PTS Interaction] Verify Values
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_discover_service_by_uuid 00000549-0000-0000-0123-456789abcdef
+ [PTS Interaction] Verify Values
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_discover_service_by_uuid 00001137-0000-0000-0123-456789abcdef
+ [PTS Interaction] Verify Values
+ gattc_disconnect
+
+TC_CL_GAD_BV_03_C
+ gattc_connect_over_le
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ [PTS Interation]
+ gattc_disconnect
+
+TC_CL_GAD_BV_04_C
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+
+TC_CL_GAD_BV_05_C
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+
+TC_CL_GAD_BV_06_C
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+ gattc_connect_over_le
+ gattc_list_all_uuids
+ [PTS Interation]
+ gattc_disconnect
+
+TC_CL_GAD_BV_07_C
+ [PTS Interation]
+ [PTS Interation]
+ [PTS Interation]
+ [PTS Interation]
+ [PTS Interation]
+
+TC_CL_GAD_BV_08_C
+ [PTS Interation]
+ [PTS Interation]
+ [PTS Interation]
+ [PTS Interation]
+
+TC_CL_GAR_BV_01_C
+ gattc_connect_over_le
+ [Read PTS Handle]
+ gattc_read_char_by_instance_id [handle]
+ gattc_disconnect
+
+TC_CL_GAR_BI_01_C
+ gattc_connect_over_le
+ gattc_read_invalid_char_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_02_C
+ gattc_connect_over_le
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_03_C
+ gattc_connect_over_le
+ gattc_mod_read_char_by_instance_id [handle]
+ gattc_disconnect
+ [PTS Interaction]
+
+TC_CL_GAR_BI_04_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ gattc_mod_read_char_by_instance_id [handle]
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from console into PTS
+ gattc_disconnect
+ [PTS Interaction]
+ bta_unbond
+
+TC_CL_GAR_BI_05_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from console into PTS
+ gattc_mod_read_char_by_instance_id [handle]
+ gattc_disconnect
+ [PTS Interaction]
+ bta_unbond
+
+TC_CL_GAR_BV_04_C
+ gattc_connect_over_le
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction] Confirm Read Value
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction] Confirm Read Value
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction] Confirm Read Value
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction] Confirm Read Value
+
+TC_CL_GAR_BI_12_C
+ gattc_connect_over_le
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_13_C
+ gattc_connect_over_le
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_14_C
+ gattc_connect_over_le
+ gattc_read_invalid_char_by_instance_id [handle]
+ gattc_disconnect
+ [PTS Interaction]
+
+TC_CL_GAR_BI_15_C
+ gattc_connect_over_le
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_17_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter PIN from prompt to PTS
+ gattc_mod_read_char_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BV_05_C
+ n_a - Need to be able to read multiple char instance ids in the same request
+
+TC_CL_GAR_BV_06_C
+ gattc_connect_over_le
+ gattc_mod_read_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_23_C
+ gattc_connect_over_le
+ gattc_read_invalid_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_24_C
+ gattc_connect_over_le
+ gattc_read_invalid_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_25_C
+ gattc_connect_over_le
+ gattc_read_invalid_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_26_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ gattc_read_invalid_desc_by_instance_id [handle]
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from prompt
+ gattc_disconnect
+ [PTS Interaction]
+ bta_unbond
+
+TC_CL_GAR_BI_27_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from prompt
+ gattc_read_invalid_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+ bta_unbond
+
+TC_CL_GAR_BV_07_C
+ gattc_connect_over_le
+ gattc_mod_read_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_mod_read_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_mod_read_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_mod_read_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+ bta_unbond
+
+TC_CL_GAR_BI_28_C
+ gattc_connect_over_le
+ gattc_mod_read_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_29_C
+ gattc_connect_over_le
+ gattc_mod_read_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_30_C
+ gattc_connect_over_le
+ gattc_read_invalid_desc_by_instance_id [handle]
+ gattc_disconnect
+ [PTS Interaction]
+
+TC_CL_GAR_BI_31_C
+ gattc_connect_over_le
+ gattc_read_invalid_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BI_32_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ gattc_mod_read_desc_by_instance_id [handle]
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from prompt
+ gattc_disconnect
+ [PTS Interaction]
+ bta_unbond
+
+TC_CL_GAR_BI_33_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from prompt
+ gattc_mod_read_desc_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+ bta_unbond
+
+TC_CL_GAR_BV_34_C
+ gattc_connect_over_bredr
+ gattc_read_invalid_char_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAR_BV_35_C
+ gattc_connect_over_le
+ gattc_read_invalid_char_by_instance_id [handle]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BV_01_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] [size]
+ gattc_disconnect
+
+TC_CL_GAW_BV_03_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] [size]
+ gattc_disconnect
+
+TC_CL_GAW_BI_02_C
+ gattc_connect_over_le
+ gattc_write_invalid_char_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_03_C
+ gattc_connect_over_le
+ gattc_mod_write_char_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_04_C
+ gattc_connect_over_le
+ gattc_mod_write_char_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_05_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] 1
+ [PTS Interation]
+ gattc_disconnect
+ [PTS Interation]
+
+TC_CL_GAW_BI_06_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ [PTS Interation] Enter Pin from prompt
+ gattc_write_char_by_instance_id [handle] 1
+ gattc_disconnect
+
+TC_CL_GAW_BV_05_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] 23
+ gattc_disconnect
+
+TC_CL_GAW_BI_07_C
+ gattc_connect_over_le
+ gattc_write_invalid_char_by_instance_id [handle] [size]
+ gattc_disconnect
+ [PTS Interaction]
+
+TC_CL_GAW_BI_08_C
+ gattc_connect_over_le
+ do_gattc_mod_write_char_by_instance_id [handle] 43
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_09_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] 89
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_11_C
+ gattc_connect_over_le
+ gattc_mod_write_char_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_12_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] 43
+ [Enter Pin from DUT into PTS]
+ gattc_disconnect
+ [PTS Interaction]
+
+TC_CL_GAW_BI_13_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ gattc_mod_write_char_by_instance_id [handle] [size]
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [Enter Pin from DUT into PTS]
+ gattc_disconnect
+ [PTS Interaction]
+
+TC_CL_GAW_BV_06_C
+ gattc_connect_over_le
+ [PTS Interaction] Enter pin from phone into PTS
+ gattc_begin_reliable_write
+ gattc_write_char_by_instance_id [handle] [size]
+ gattc_execute_reliable_write
+ gattc_disconnect
+
+TC_CL_GAW_BI_14_C
+ gattc_connect_over_le
+ gattc_begin_reliable_write
+ gattc_write_invalid_char_by_instance_id [handle] [size]
+ gattc_execute_reliable_write
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_15_C
+ gattc_connect_over_le
+ gattc_begin_reliable_write
+ gattc_mod_write_char_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_17_C
+ gattc_connect_over_le
+ gattc_begin_reliable_write
+ gattc_write_char_by_instance_id [handle] 1
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_18_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ gattc_begin_reliable_write
+ gattc_write_char_by_instance_id [handle] 1
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from prompt
+ gattc_disconnect
+ [PTS Interaction]
+ bta_unbond
+
+TC_CL_GAW_BI_19_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from prompt
+ gattc_begin_reliable_write
+ gattc_mod_write_char_by_instance_id [handle] [size]
+ gattc_execute_reliable_write
+ [PTS Interaction]
+ gattc_disconnect
+ bta_unbond
+
+TC_CL_GAW_BV_08_C
+ gattc_connect_over_le
+ gattc_mod_write_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_20_C
+ gattc_connect_over_le
+ gattc_write_invalid_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_21_C
+ gattc_connect_over_le
+ gattc_write_invalid_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_22_C
+ gattc_connect_over_le
+ gattc_write_invalid_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_23_C
+ Note: Collect evidence
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ gattc_write_desc_by_instance_id [handle] 1
+ Wait for PTS prompt regarding insufficient authentication
+ gattc_disconnect
+
+TC_CL_GAW_BI_24_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [PTS Interaction] Enter Pin from prompt
+ gattc_mod_write_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+ bta_unbond
+
+TC_CL_GAW_BV_09_C
+ gattc_connect_over_le
+ gattc_write_invalid_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_25_C
+ gattc_connect_over_le
+ gattc_write_invalid_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_26_C
+ gattc_connect_over_le
+ gattc_write_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_27_C
+ gattc_connect_over_le
+ gattc_write_desc_by_instance_id 00cb 46
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_29_C
+ gattc_connect_over_le
+ gattc_write_desc_by_instance_id 00da 44
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_30_C
+ gattc_connect_over_le
+ gattc_write_desc_by_instance_id [handle] [size]
+ [Enter Pin from DUT into PTS]
+ gattc_disconnect
+ [PTS Interaction]
+
+TC_CL_GAW_BI_31_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [Enter Pin from DUT into PTS]
+ gattc_write_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_32_C
+ gattc_connect_over_le
+ gattc_begin_reliable_write
+ gattc_write_char_by_instance_id [handle] [size]
+ gattc_execute_reliable_write
+ gattc_disconnect
+
+TC_CL_GAW_BI_33_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] [size]
+ gattc_disconnect
+ [PTS Interaction]
+
+TC_CL_GAW_BI_34_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_35_C
+ gattc_connect_over_le
+ gattc_write_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAW_BI_36_C
+ gattc_connect_over_le
+ gattc_write_desc_by_instance_id [handle] [size]
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAN_BV_01_C
+ gattc_connect_over_le
+ gattc_enable_notification_desc_by_instance_id f4
+ [PTS Interaction]
+ gattc_disconnect
+
+TC_CL_GAN_BV_01_C
+ gatts_setup_database TEST_DB_5
+ ble_start_generic_connectable_advertisement
+ gatts_list_all_uuids
+ gatts_notify_characteristic_changed [instance id from previous command of only characteristic.] true
+
+TC_CL_GAS_BV_01_C
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_CL_GAT_BV_01_C
+ gattc_connect_over_le
+ gattc_read_char_by_instance_id [handle]
+
+TC_CL_GAT_BV_02_C
+ gattc_connect_over_le
+ gattc_write_char_by_instance_id [handle] 1
+
+TC_SR_GAC_BV_01_C
+ gatts_setup_database LARGE_DB_1
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS (Repeat until passed)
+
+TC_SR_GAD_BV_01_C
+ gatts_open
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction]
+
+TC_SR_GAD_BV_02_C
+ gatts_open
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction]
+
+TC_SR_GAD_BV_03_C
+ ble_start_generic_connectable_advertisement
+
+TC_SR_GAD_BV_04_C
+ gatts_open
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction]
+ [PTS Interaction]
+
+TC_SR_GAD_BV_05_C
+ gatts_open
+ ble_start_generic_connectable_advertisement
+
+TC_SR_GAD_BV_06_C
+ gatts_setup_database SIMPLE_READ_DESCRIPTOR
+ ble_start_generic_connectable_advertisement
+
+TC_SR_GAD_BV_07_C
+ Note: Use Public Address
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ gatts_open
+ [PTS Interaction]
+
+TC_SR_GAD_BV_08_C
+ Note: Use Public Address
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ gatts_open
+ [PTS Interaction]
+
+TC_SR_GAR_BV_01_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+
+TC_SR_GAR_BI_01_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_READ_NOT_PERMITTED
+
+TC_SR_GAR_BI_02_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INVALID_PDU
+
+TC_SR_GAR_BI_03_C
+ gatts_setup_database TEST_DB_1
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAR_BI_05_C
+ Note: Do not used a fixed LE address for SMP Encryption Calculations.
+ gatts_setup_database TEST_DB_2
+ bta_start_pairing_helper
+ ble_start_generic_connectable_advertisement
+ [Enter Pin from PTS to Phone]
+ [PTS Interaction]
+
+TC_SR_GAR_BI_06_C
+ Note: Static Address OK.
+ Note: PTS gets into weird states often and disconnect randomly at this TC.
+ gatts_setup_database TEST_DB_1
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 2a29
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_READ_NOT_PERMITTED
+
+TC_SR_GAR_BI_07_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_1
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_FAILURE
+ [PTS Interaction] Enter 9999
+ [PTS Interaction] Enter 9999
+
+TC_SR_GAR_BI_08_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_1
+ ble_start_generic_connectable_advertisement
+
+TC_SR_GAR_BI_09_C
+ gatts_setup_database TEST_DB_1
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 2a29
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAR_BI_11_C
+ Note: Use non-static address
+ gatts_setup_database TEST_DB_1
+ bta_start_pairing_helper
+ ble_start_generic_connectable_advertisement
+ Enter Pin from PTS to phone
+ [PTS Interaction] Enter 2a29
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_0C_ERR
+
+TC_SR_GAR_BV_04_C
+ Note: Static Address OK
+ ble_start_generic_connectable_advertisement
+ gatts_setup_database LARGE_DB_1
+ gatts_send_continuous_response GATT_SUCCESS
+ [PTS Interaction] Verify values and press OK
+
+TC_SR_GAR_BI_12_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_READ_NOT_PERMITTED
+
+TC_SR_GAR_BI_13_C
+ Note: Static Address OK
+ Mote: Execute the first gatts_send_response as soon as the connection is made.
+ gatts_setup_database PTS_TEST
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ gatts_send_response GATT_SUCCESS 24
+ gatts_send_response GATT_INVALID_OFFSET
+
+TC_SR_GAR_BI_14_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_FAILURE
+
+TC_SR_GAR_BI_16_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+
+TC_SR_GAR_BI_17_C
+ Note: Use non-static address
+ gatts_setup_database TEST_DB_1
+ bta_start_pairing_helper
+ ble_start_generic_connectable_advertisement
+ Enter Pin from PTS to phone (Don't need this if already paired)
+ gatts_send_response GATT_0C_ERR
+ gatts_send_response GATT_0C_ERR
+
+TC_SR_GAR_BV_05_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_READ_NOT_PERMITTED
+
+TC_SR_GAR_BI_18_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_READ_NOT_PERMITTED
+ gatts_send_response GATT_READ_NOT_PERMITTED
+
+TC_SR_GAR_BI_19_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_FAILURE
+
+TC_SR_GAR_BI_20_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAR_BI_21_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+
+TC_SR_GAR_BI_22_C
+ Note: Use non-static address
+ gatts_setup_database TEST_DB_1
+ bta_start_pairing_helper
+ ble_start_generic_connectable_advertisement
+ Enter Pin from PTS to phone
+ gatts_send_response GATT_0C_ERR
+ gatts_send_response GATT_0C_ERR
+
+TC_SR_GAR_BV_06_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ [PTS Interaction]
+
+TC_SR_GAR_BI_23_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_READ_NOT_PERMITTED
+ [PTS Interaction] Enter 002a
+
+TC_SR_GAR_BI_24_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_FAILURE
+
+TC_SR_GAR_BI_25_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAR_BI_27_C
+ Note: Use non-static address
+ gatts_setup_database TEST_DB_1
+ bta_start_pairing_helper
+ ble_start_generic_connectable_advertisement
+ Enter Pin from PTS to phone
+ gatts_send_response GATT_0C_ERR
+ gatts_send_response GATT_0C_ERR
+
+TC_SR_GAR_BV_07_C
+ Note: Static Address OK
+ ble_start_generic_connectable_advertisement
+ gatts_setup_database LARGE_DB_1
+ gatts_send_continuous_response GATT_SUCCESS
+ [PTS Interaction] Verify values and press OK
+
+TC_SR_GAR_BV_08_C
+ Note: Static Address OK
+ gatts_setup_database LARGE_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS 24
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ [PTS Interaction] Verify values and press OK
+
+TC_SR_GAR_BI_28_C
+ Note: Static Address OK
+ gatts_setup_database LARGE_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002e
+ Note: If the above value doesn't work run
+ gatts_list_all_uuids and find the handle uuid
+ that matches 0000b00c-0000-1000-8000-00805f9b34fb.
+ gatts_send_response GATT_READ_NOT_PERMITTED
+ Wait 10 seconds for PTS to process
+
+TC_SR_GAR_BI_29_C
+ Note: Static Address OK
+ gatts_setup_database LARGE_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ Respond with this cmd until offset > 470
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_OFFSET
+ gatts_send_response GATT_INVALID_OFFSET
+
+TC_SR_GAR_BI_30_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 9999
+
+TC_SR_GAR_BI_31_C
+ Note: Static Address OK
+ gatts_setup_database LARGE_DB_1
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAR_BI_33_C
+ Note: Use Random Address
+ Note: Both responses need to be sent in quick successtion of each other since PTS disconnects the link quickly if there is no response.
+ bta_start_pairing_helper
+ gatts_setup_database TEST_DB_6
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter PIN from PTS to phone
+ gatts_send_response GATT_INSUFFICIENT_ENCRYPTION
+ gatts_send_response GATT_0C_ERR
+ bta_unbond
+
+TC_SR_GAR_BI_34_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_1
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_CONNECTION_CONGESTED
+
+TC_SR_GAR_BI_35_C
+ Note: Use Public Address
+ gatts_setup_database LARGE_DB_1
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ [PTS Interaction]
+ gatts_send_response GATT_CONNECTION_CONGESTED
+
+TC_SR_GAW_BV_01_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_4
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ [PTS Interaction]
+
+TC_SR_GAW_BV_03_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+
+TC_SR_GAW_BI_02_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 9999
+
+TC_SR_GAW_BI_03_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+
+TC_SR_GAW_BI_04_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAW_BI_06_C
+ Note: Static Address OK
+ gatts_setup_database LARGE_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_ENCRYPTION
+
+TC_SR_GAW_BV_05_C
+ Note: Static Address OK
+ gatts_setup_database PTS_TEST
+ gatts_send_response GATT_SUCCESS 24
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+
+TC_SR_GAW_BI_07_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_FAILURE
+
+TC_SR_GAW_BI_08_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_WRITE_NOT_PERMITTED
+
+TC_SR_GAW_BI_09_C
+ Note: Static Address OK
+ gatts_setup_database PTS_TEST
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ gatts_send_response GATT_SUCCESS 24
+ Note: Repeat this cmd until there is a "Prepared Write Value Complete" message
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_OFFSET
+
+TC_SR_GAW_BI_11_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAW_BI_13_C
+ Note: Dynamic address needed
+ Note: All responses need to be sent in quick successtion of each other since PTS disconnects the link quickly if there is no response.
+ gatts_setup_database DB_TEST
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter PIN from PTS to phone
+ gatts_send_response GATT_INSUFFICIENT_ENCRYPTION
+ gatts_send_response GATT_0C_ERR
+ gatts_send_response GATT_0C_ERR
+
+TC_SR_GAW_BV_06_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+
+TC_SR_GAW_BV_10_C
+ Note: Static Address OK
+ Note: Make sure MTU is set to 23 on PTS
+ gatts_setup_database PTS_TEST
+ ble_start_generic_connectable_advertisement
+ Whenever PTS prompts: "Discover All Characteristics of Service Request completed successfully" run this cmd:
+ gatts_send_response GATT_SUCCESS 24
+ Otherwise always respond with:
+ gatts_send_response GATT_SUCCESS
+
+TC_SR_GAW_BI_14_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_FAILURE
+
+TC_SR_GAW_BI_15_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002a
+ gatts_send_response GATT_WRITE_NOT_PERMITTED
+
+TC_SR_GAW_BI_17_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAW_BI_19_C
+ Note: Static Address OK
+ gatts_setup_database LARGE_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_0C_ERR
+ gatts_send_response GATT_0C_ERR
+ gatts_send_response GATT_0C_ERR
+
+TC_SR_GAW_BV_11_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+
+TC_SR_GAW_BV_07_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+
+TC_SR_GAW_BV_08_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+
+TC_SR_GAW_BI_20_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 0021
+ gatts_send_response GATT_FAILURE
+
+TC_SR_GAW_BI_21_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002c
+ gatts_send_response GATT_SUCCESS
+
+TC_SR_GAW_BI_22_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAW_BV_24_C
+ Note: Dynamic address needed
+ Note: All responses need to be sent in quick successtion of each other since PTS disconnects the link quickly if there is no response.
+ gatts_setup_database DB_TEST
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter PIN from PTS to phone
+ gatts_send_response GATT_INSUFFICIENT_ENCRYPTION
+ gatts_send_response GATT_0C_ERR
+ gatts_send_response GATT_0C_ERR
+
+TC_SR_GAW_BV_09_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 50
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS 50
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_SUCCESS
+
+TC_SR_GAW_BI_25_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002c
+ gatts_send_response GATT_FAILURE
+
+TC_SR_GAW_BI_26_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter 002c
+ gatts_send_response GATT_WRITE_NOT_PERMITTED
+
+TC_SR_GAW_BI_27_C
+ Note: Static Address OK
+ gatts_setup_database DB_TEST
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ Repeat next cmd until an Execute Write Request with execute set to true before continueing
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_OFFSET
+ Wait for 20 seconds for PTS to process and disconnect
+
+TC_SR_GAW_BI_29_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHORIZATION
+
+TC_SR_GAW_BI_30_C
+ Note: Static Address OK
+ gatts_setup_database DB_TEST
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+ gatts_send_response GATT_INSUFFICIENT_AUTHENTICATION
+
+TC_SR_GAW_BV_31_C
+ Note: Dynamic address needed
+ Note: All responses need to be sent in quick successtion of each other since PTS disconnects the link quickly if there is no response.
+ gatts_setup_database DB_TEST
+ ble_start_generic_connectable_advertisement
+ [PTS Interaction] Enter PIN from PTS to phone
+ gatts_send_response GATT_INSUFFICIENT_ENCRYPTION
+ gatts_send_response GATT_0C_ERR
+ gatts_send_response GATT_0C_ERR
+
+TC_SR_GAW_BI_32_C
+ Note: Static Address OK
+ gatts_setup_database DB_TEST
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ Run this cmd until you see "Read Request Completed Successfully"
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_ATTRIBUTE_LENGTH
+ Run this cmd until you see "Found Characteristic handle 0x... Successfully"
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_ATTRIBUTE_LENGTH
+
+TC_SR_GAW_BI_33_C
+ Note: Static Address OK
+ gatts_setup_database LARGE_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ Run this cmd until you see "Execute Write"
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_ATTRIBUTE_LENGTH
+ Run this cmd until you see "Execute Write"
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_ATTRIBUTE_LENGTH
+ Wait 10 seconds for PTS to process
+
+TC_SR_GAW_BI_34_C
+ Note: Static Address OK
+ gatts_setup_database DB_TEST
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ gatts_send_response GATT_SUCCESS
+ Run the below cmd when PTS says "Found descriptor with handle=..."
+ gatts_send_response GATT_INVALID_ATTRIBUTE_LENGTH
+
+TC_SR_GAW_BI_35_C
+ Note: Static Address OK
+ Note: Run the responses slowly
+ gatts_setup_database LARGE_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS 24
+ Repeat next cmd until an Execute Write happens
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_ATTRIBUTE_LENGTH
+ Repeat next cmd until an Execute Write happens
+ gatts_send_response GATT_SUCCESS
+ gatts_send_response GATT_INVALID_ATTRIBUTE_LENGTH
+ Wait 10 seconds for PTS to process
+
+TC_SR_GAN_BV_01_C
+ Note: Static Address OK
+ gatts_setup_database TEST_DB_5
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ gatts_notify_characteristic_changed [Handle from PTS] false 10
+ gatts_send_response GATT_SUCCESS
+ gatts_notify_characteristic_changed [Handle from PTS] false 10
+
+TC_SR_GAI_BV_01_C
+ gattc_connect_over_le
+ gattc_write_desc_notification_by_instance_id 00f3 2
+ [PTS Interaction] Verify value and click yes
+ gattc_disconnect
+
+TC_SR_GAS_BV_01_C
+ gatts_setup_database DB_TEST
+ ble_start_generic_connectable_advertisement
+ gatts_setup_database TEST_DB_3
+ Wait 60 seconds for PTS to process
+
+TC_SR_GAT_BV_01_C
+ gatts_setup_database LARGE_DB_3
+ ble_start_generic_connectable_advertisement
+ gatts_send_response GATT_SUCCESS
+ gatts_notify_characteristic_changed 0003 true
+ gatts_send_response GATT_SUCCESS
+ gatts_setup_database TEST_DB_3
+ Wait 30 seconds for PTS to process
diff --git a/acts/tests/google/bt/pts/instructions/L2CAP_PTS_INSTRUCTIONS b/acts/tests/google/bt/pts/instructions/L2CAP_PTS_INSTRUCTIONS
new file mode 100644
index 0000000000..755046d469
--- /dev/null
+++ b/acts/tests/google/bt/pts/instructions/L2CAP_PTS_INSTRUCTIONS
@@ -0,0 +1,169 @@
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+L2CAP
+=================================================================
+TC_L2CAP_COS_CED_BV_01_C
+ bta_start_pairing_helper
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CED_BV_03_C
+ bta_start_pairing_helper
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CED_BV_04_C
+ Note: Assumption that devices are paired from previous testcase
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CED_BV_05_C
+ ble_start_generic_connectable_advertisement
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CED_BV_07_C
+ rfcomm_connect
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CED_BV_08_C
+ rfcomm_connect
+ rfcomm_stop
+
+TC_L2CAP_COS_CED_BV_09_C
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CED_BV_11_C
+ rfcomm_connect
+
+TC_L2CAP_COS_CED_BI_01_C
+ ble_start_generic_connectable_advertisement
+
+TC_L2CAP_COS_CFD_BV_01_C
+ bta_enable
+
+TC_L2CAP_COS_CFD_BV_02_C
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CFD_BV_03_C
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CFD_BV_08_C
+ bta_start_pairing_helper
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CFD_BV_09_C
+ bta_start_pairing_helper
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CFD_BV_11_C
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_CFD_BV_12_C
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_IEX_BV_01_C
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_COS_IEX_BV_02_C
+ bta_enable
+
+TC_L2CAP_COS_ECH_BV_01_C
+ bta_enable
+
+TC_L2CAP_EXF_BV_01_C
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE
+
+TC_L2CAP_EXF_BV_02_C
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE
+
+TC_L2CAP_EXF_BV_03_C
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE
+
+TC_L2CAP_EXF_BV_05_C
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE
+
+TC_L2CAP_CMC_BV_09_C
+ bta_set_scan_mode SCAN_MODE_CONNECTABLE
+
+TC_L2CAP_CMC_BV_10_C
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_CMC_BV_11_C
+ rfcomm_connect
+ rfcomm_stop
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_CMC_BV_12_C
+ Note: The PTS Interaction happens really fast, be ready to click.
+ gattc_connect_over_bredr
+ [PTS Interaction] Yes
+
+TC_L2CAP_CMC_BV_13_C
+ Note: The PTS Interaction happens really fast, be ready to click.
+ Note: Make sure device are not bonded.
+ gattc_connect_over_bredr
+ [PTS Interaction] Yes
+
+TC_L2CAP_CMC_BI_05_C
+ rfcomm_accept
+ [Wait up to 10-15 seconds]
+
+TC_L2CAP_CMC_BI_06_C
+ bta_enable
+
+TC_FIX_BV_01_C
+ rfcomm_connect
+
+TC_LE_CPU_BV_02_C
+ gattc_connect_over_le
+ bta_disable
+ bta_enable
+ gattc_connect_over_le
+
+TC_LE_CPU_BI_01_C
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_LE_REJ_BI_01_C
+ gattc_connect_over_le
+ gattc_disconnect
+
+TC_L2CAP_LE_CFC_BV_05_C
+ gattc_connect_over_le
+ gattc_disconnect
+ bta_disable
+ bta_enable
+ gattc_connect_over_le
diff --git a/acts/tests/google/bt/pts/instructions/MCAP_PTS_INSTRUCTIONS b/acts/tests/google/bt/pts/instructions/MCAP_PTS_INSTRUCTIONS
new file mode 100644
index 0000000000..7c952a0a0b
--- /dev/null
+++ b/acts/tests/google/bt/pts/instructions/MCAP_PTS_INSTRUCTIONS
@@ -0,0 +1,60 @@
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+Requires mcap_tool, Bluetooth to be off on the phone before starting mcap_tool
+
+MCAP
+=================================================================
+
+Current addr: 00:1B:DC:08:0E:41
+Available cmds:
+
+enable_bluetooth No argument
+disable_bluetooth No argument
+pair pair BD_ADDR<xx:xx:xx:xx:xx:xx>
+register ctrl_psm<hex>, data_psm<hex>, security_mask<0-10>
+deregister No argument
+create_mdep type<0-Echo, 1-Normal>
+delete_mdep mdep_handle<int>
+connect_mcl BD_ADDR<xx:xx:xx:xx:xx:xx>, ctrl_psm<hex>, security_mask<0-10>
+disconnect_mcl BD_ADDR<xx:xx:xx:xx:xx:xx>
+create_mdl BD_ADDR<xx:xx:xx:xx:xx:xx> mdep_handle<int> data_psm<hex> mdl_id <int> peer_dep_id<int> cfg<hex>
+close_mdl BD_ADDR<xx:xx:xx:xx:xx:xx> mdl_id<int>
+reconnect_mdl BD_ADDR<xx:xx:xx:xx:xx:xx> mdl_id<int> data_psm<hex>
+
+
+do_mcap_register: ctrl_psm=0x0001, data_psm=0x1003, sec_mask=0x0001
+do_mcap_register: mcap_handle=1
+
+[INFO:mcap_test_app.h(83)] MCL does not exist, creating new MCL
+do_mcap_connect_mcl: SUCCESS
+>acl_state_changed: remote_bd_addr=00:1b:dc:08:0e:41, acl status=ACL Connected
+ControlCallback: mcap_handle=1, mcl_handle=1, event=MCA_CONNECT_IND_EVT (0x20)
+print_mcap_event: peer_bd_addr=00:1b:dc:08:0e:41, peer_mtu=4096
+[INFO:mcap_test_app.cc(231)] Received MCL handle
+
+
+
+
+TC_MCAP_CE_BV_01_C
+ register 1003 1005 1
+ save data psm which is 1005
+ connect_mcl 00:1B:DC:08:0E:41 1003 0
+ create_mdep 1
+ Save handle from create mdep
+ create_mdl 00:1B:DC:08:0E:41 <mdep_handle> 1003 1 1 0
+
+TC_MCAP_CE_BV_02_C
+ register 1003 1005 1
+ create_mdep 1 \ No newline at end of file
diff --git a/acts/tests/google/bt/pts/instructions/RFCOMM_PTS_INSTRUCTIONS b/acts/tests/google/bt/pts/instructions/RFCOMM_PTS_INSTRUCTIONS
new file mode 100644
index 0000000000..a977a266ff
--- /dev/null
+++ b/acts/tests/google/bt/pts/instructions/RFCOMM_PTS_INSTRUCTIONS
@@ -0,0 +1,98 @@
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+RFCOMM
+=================================================================
+TC_RFCOMM_DEVA_RFC_BV_01_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+ rfcomm_connect 00001101-0000-1000-8000-00805F9B34FB
+
+TC_RFCOMM_DEVA_RFC_BV_05_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+ rfcomm_connect 00001101-0000-1000-8000-00805F9B34FB
+
+TC_RFCOMM_DEVB_RFC_BV_02_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVB_RFC_BV_06_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_03_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_04_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ [Wait for PTS prompt]
+ bta_disable
+ bta_enable
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_07_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ [Wait for PTS prompt]
+ bta_disable
+ bta_enable
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_08_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_11_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_13_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_14_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ Wait 30 seconds
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_15_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_17_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_19_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_21_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ [Wait for PTS prompt]
+ bta_disable
+ bta_enable
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_22_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
+ [Wait for PTS prompt]
+ bta_disable
+ bta_enable
+
+TC_RFCOMM_DEVA-DEVB_RFC_BV_25_C
+ bta_start_pairing_helper
+ Note: If not bonded run: bta_set_scan_mode SCAN_MODE_CONNECTABLE_DISCOVERABLE
diff --git a/acts/tests/google/bt/pts/instructions/SDP_PTS_INSTRUCTIONS b/acts/tests/google/bt/pts/instructions/SDP_PTS_INSTRUCTIONS
new file mode 100644
index 0000000000..18dc31a5e7
--- /dev/null
+++ b/acts/tests/google/bt/pts/instructions/SDP_PTS_INSTRUCTIONS
@@ -0,0 +1,147 @@
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+SDP
+=================================================================
+TC_SR_SA_BI_01_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BI_02_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BI_03_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_01_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_03_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_05_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_08_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_09_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_12_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_13_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_17_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_20_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SA_BV_21_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SS_BI_01_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SS_BI_02_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SS_BV_01_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SS_BV_02_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SS_BV_03_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SS_BV_04_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BI_01_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BI_02_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_01_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_02_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_03_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_04_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_06_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_11_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_12_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_13_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_16_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_17_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_20_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
+
+TC_SR_SSA_BV_23_C
+ bta_start_pairing_helper
+ SCAN_MODE_CONNECTABLE
diff --git a/acts/tests/google/bt/pts/instructions/SM_PTS_INSTRUCTIONS b/acts/tests/google/bt/pts/instructions/SM_PTS_INSTRUCTIONS
new file mode 100644
index 0000000000..5af1eef0a6
--- /dev/null
+++ b/acts/tests/google/bt/pts/instructions/SM_PTS_INSTRUCTIONS
@@ -0,0 +1,215 @@
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+SM
+=================================================================
+TC_MAS_PROT_BV_01_C
+ bta_bond
+ [Wait 30 seconds]
+
+TC_MAS_JW_BV_05_C
+ gattc_connect_over_le
+ bta_bond
+ gattc_disconnect
+ gattc_connect_over_le
+ bta_bond
+ gattc_disconnect
+ gattc_connect_over_le
+ bta_bond
+ gattc_disconnect
+ gattc_connect_over_le
+ bta_bond
+ gattc_disconnect
+
+TC_MAS_JW_BI_01_C
+ gattc_connect_over_le
+ bta_bond
+
+TC_MAS_JW_BI_04_C
+ gattc_connect_over_le
+ bta_bond
+
+TC_MAS_PKE_BV_01_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_bond
+ bta_get_pairing_pin
+ [Enter Pin from console to PTS]
+
+TC_MAS_PKE_BV_04_C
+ gattc_connect_over_le
+ bta_bond
+
+TC_MAS_PKE_BI_01_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_bond
+ bta_get_pairing_pin
+ [Enter Pin from console to PTS]
+
+TC_MAS_PKE_BI_02_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_bond
+ bta_get_pairing_pin
+ [Enter Pin from console to PTS]
+
+TC_MAS_OOB_BV_05_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_bond
+ bta_get_pairing_pin
+ [Enter Pin from console to PTS]
+
+TC_MAS_OOB_BV_07_C
+ gattc_connect_over_le
+ bta_bond
+
+TC_MAS_EKS_BV_01_C
+ gattc_connect_over_le
+ bta_bond
+
+TC_MAS_EKS_BI_01_C
+ bta_bond
+
+TC_MAS_KDU_BV_04_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_bond
+ bta_get_pairing_pin
+ [Enter Pin from console to PTS]
+
+TC_MAS_KDU_BV_05_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_bond
+ bta_get_pairing_pin
+ [Enter Pin from console to PTS]
+
+TC_MAS_KDU_BV_06_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_bond
+ bta_get_pairing_pin
+ [Enter Pin from console to PTS]
+
+TC_MAS_SIP_BV_02_C
+ bta_start_pairing_helper
+ gattc_connect_over_le
+ bta_get_pairing_pin
+ bta_get_pairing_pin
+ [Enter Pin from console to PTS]
+
+TC_SLA_PROT_BV_02_C
+ Need to be able to send security request via cmd line
+
+TC_SLA_JW_BV_02_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS
+ ble_start_generic_connectable_advertisement
+ [Accept Pairing Prompt On Phone]
+
+TC_SLA_JW_BI_03_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS
+ ble_start_generic_connectable_advertisement
+ [Accept Pairing Prompt On Phone]
+
+TC_SLA_PKE_BV_02_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS
+ ble_start_generic_connectable_advertisement
+ [Enter PTS Pin Into Phone]
+
+TC_SLA_PKE_BV_05_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS
+ ble_start_generic_connectable_advertisement
+
+TC_SLA_PKE_BI_03_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+ [Enter Invalid Pin to PTS]
+
+TC_SLA_OOB_BV_06_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+ [Enter PTS Pin Into Phone]
+
+TC_SLA_OOB_BV_08_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+
+TC_SLA_EKS_BV_02_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+ [Enter PTS Pin Into Phone]
+
+TC_SLA_EKS_BI_02_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+
+TC_SLA_KDU_BV_01_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+ [Enter PTS Pin Into Phone]
+
+TC_SLA_KDU_BV_02_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+ [Enter PTS Pin Into Phone]
+
+TC_SLA_KDU_BV_03_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+ [Enter PTS Pin Into Phone]
+
+TC_SLA_KDU_BV_07_C
+ Note: Do not use a static random address
+ Note: Start advertiment and enter in random address to PTS before starting test
+ ble_start_generic_connectable_advertisement
+ [Enter PTS Pin Into Phone]
+
+TC_SLA_SIP_BV_01_C
+ n_a
+
+TC_SLA_SIE_BV_01_C
+ n_a
+
+
+TIPS
+=================================================================
+If testcases are failing when you are the initiator for pairing use these steps:
+ Using Example testcase TC_SLA_KDU_BV_02_C.
+1. Don't use a static random address.
+2. Increase bt logging to 5 on all profile.
+3. Add this patch to the stack which adds even more logging:
+ https://android-review.googlesource.com/#/c/330431/
+4. Run the example testcase.
+5. After it fails grab the logcat.
+6. Look for this line:
+ D bt_smp : p2 = ra || ia || padding(LSB ~ MSB):
+ D bt_smp : [000]: 2a 06 06 dc 1b 00 60 b4 a7 16 f8 44 00 00 00 00
+ Notice that the private address of your device is the initiator values but reversed: 60 b4 a7 16 f8 44
+ Take the reverse value and replace the IXIT value TSPX_bd_addr_iut with the reversed value. In this example: 44 f8 16 a7 b4 60
+7. Rerun testcase.
+8. More testcases will pass until the next mac address rotation.