diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn
index c843032..1e96dcb 100644
--- a/bts/BTS_Tests.ttcn
+++ b/bts/BTS_Tests.ttcn
@@ -4676,19 +4676,18 @@
 }
 
 /* Test the PCU->BTS Version and BTS->PCU SI13 handshake */
-testcase TC_pcu_ver_si13() runs on test_CT {
-	const octetstring si13 := '00010203040506070909'O;
+function f_TC_pcu_ver_siXX(octetstring si, RSL_IE_SysinfoType rsl_si_type) runs on test_CT {
 	var PCUIF_send_data sd;
 	timer T:= 3.0;
 	f_init_pcu_test();
 
 	/* Set SI13 via RSL */
-	f_rsl_bcch_fill_raw(RSL_SYSTEM_INFO_13, si13);
+	f_rsl_bcch_fill_raw(rsl_si_type, si);
 
 	T.start;
 	alt {
 	[] PCU.receive(t_SD_PCUIF(g_pcu_conn_id, tr_PCUIF_DATA_IND(0, 0, 0, ?, PCU_IF_SAPI_BCCH))) -> value sd {
-		if (substr(sd.data.u.data_ind.data, 0, lengthof(si13)) == si13) {
+		if (substr(sd.data.u.data_ind.data, 0, lengthof(si)) == si) {
 			setverdict(pass);
 		} else {
 			repeat;
@@ -4696,11 +4695,29 @@
 		}
 	[] PCU.receive { repeat; }
 	[] T.timeout {
-		Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, "Timeout waiting for SI13");
+		Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, "Timeout waiting for SI");
 		}
 	}
 }
 
+/* Test the PCU->BTS Version and BTS->PCU SI1 handshake */
+testcase TC_pcu_ver_si1() runs on test_CT {
+	const octetstring si1 := '550111132A252B27CC29AA11BB33CC'O;
+	f_TC_pcu_ver_siXX(si1, RSL_SYSTEM_INFO_1);
+}
+
+/* Test the PCU->BTS Version and BTS->PCU SI3 handshake */
+testcase TC_pcu_ver_si3() runs on test_CT {
+	const octetstring si3 := '49012223242526272929AABBCC'O;
+	f_TC_pcu_ver_siXX(si3, RSL_SYSTEM_INFO_3);
+}
+
+/* Test the PCU->BTS Version and BTS->PCU SI13 handshake */
+testcase TC_pcu_ver_si13() runs on test_CT {
+	const octetstring si13 := '01010203040506070909'O;
+	f_TC_pcu_ver_siXX(si13, RSL_SYSTEM_INFO_13);
+}
+
 private const octetstring c_PCU_DATA := '000102030405060708090a0b0c0d0e0f10111213141516'O;
 
 /* helper function to send a PCU DATA.req */
@@ -7305,6 +7322,8 @@
 		execute( TC_pcu_act_req_wrong_trx() );
 		execute( TC_pcu_deact_req() );
 		execute( TC_pcu_deact_req_wrong_ts() );
+		execute( TC_pcu_ver_si1() );
+		execute( TC_pcu_ver_si3() );
 		execute( TC_pcu_ver_si13() );
 		if (mp_l1_supports_gprs) {
 			execute( TC_pcu_data_req_pdtch() );
