diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn
index 36b1f9d..25ee3a2 100644
--- a/bts/BTS_Tests.ttcn
+++ b/bts/BTS_Tests.ttcn
@@ -56,6 +56,7 @@
 	integer mp_tolerance_rxlev := 3;
 	charstring mp_ctrl_ip := "127.0.0.1";
 	integer mp_ctrl_port := 4238;
+	integer mp_rxlev_exp := 57;
 }
 
 type record of RslChannelNr ChannelNrs;
@@ -396,7 +397,7 @@
 }
 
 private function f_l1_tune(L1CTL_PT L1CTL) {
-	f_L1CTL_FBSB(L1CTL, { false, mp_trx0_arfcn }, CCCH_MODE_COMBINED);
+	f_L1CTL_FBSB(L1CTL, { false, mp_trx0_arfcn }, CCCH_MODE_COMBINED, mp_rxlev_exp);
 }
 
 private function f_trxc_connect() runs on ConnHdlr {
diff --git a/library/L1CTL_PortType.ttcn b/library/L1CTL_PortType.ttcn
index 51a3936..ba9c2b5 100644
--- a/library/L1CTL_PortType.ttcn
+++ b/library/L1CTL_PortType.ttcn
@@ -32,10 +32,10 @@
 		return len;
 	}
 
-	function f_L1CTL_FBSB(L1CTL_PT pt, Arfcn arfcn, L1ctlCcchMode ccch_mode := CCCH_MODE_COMBINED) {
+	function f_L1CTL_FBSB(L1CTL_PT pt, Arfcn arfcn, L1ctlCcchMode ccch_mode := CCCH_MODE_COMBINED, integer rxlev_exp := 57) {
 		timer T := 15.0;
 		for (var integer i := 0; i < 10; i := i+1) {
-			pt.send(ts_L1CTL_FBSB_REQ(arfcn, valueof(t_L1CTL_FBSB_F_ALL), 0, ccch_mode, 57));
+			pt.send(ts_L1CTL_FBSB_REQ(arfcn, valueof(t_L1CTL_FBSB_F_ALL), 0, ccch_mode, rxlev_exp));
 			T.start
 			alt {
 			[] pt.receive(tr_L1CTL_FBSB_CONF(0)) { return; };
