diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn
index a2394a0..c73981d 100644
--- a/bts/BTS_Tests.ttcn
+++ b/bts/BTS_Tests.ttcn
@@ -1238,8 +1238,15 @@
 
 	/* Step 1: Activate ASYNC HO channel without MS power IE */
 
+	var integer ho_ref := oct2int(f_rnd_octstring(1));
+	var RSL_IE ho_ref_ie := valueof(t_RSL_IE(RSL_IE_HANDO_REF,
+					RSL_IE_Body:{ handover_ref := ho_ref }));
+	var RSL_IE_List addl_ies := {
+		ho_ref_ie
+		};
+
 	/* Activate channel on BTS side */
-	f_rsl_chan_act(g_pars.chan_mode, act_type := t_RSL_IE_ActType_HO_ASYNC);
+	f_rsl_chan_act(g_pars.chan_mode, more_ies := addl_ies, act_type := t_RSL_IE_ActType_HO_ASYNC);
 	/* don't perform immediate assignment here, as we're testing non-IA case */
 	/* enable dedicated mode */
 	f_l1ctl_est_dchan(L1CTL, g_pars);
@@ -1254,7 +1261,8 @@
 	/* Step 2: Activate ASYNC HO channel with MS power IE */
 
 	/* Activate channel on BTS side */
-	var RSL_IE_List addl_ies := {
+	addl_ies := {
+		ho_ref_ie,
 		valueof(t_RSL_IE(RSL_IE_MS_POWER, RSL_IE_Body:{ms_power := ts_RSL_IE_MS_Power(0)}))
 		};
 	f_rsl_chan_act(g_pars.chan_mode, more_ies := addl_ies, act_type := t_RSL_IE_ActType_HO_ASYNC);
@@ -1294,8 +1302,15 @@
 
 	/* Step 1: Activate SYNC HO channel without MS power IE */
 
+	var integer ho_ref := oct2int(f_rnd_octstring(1));
+	var RSL_IE ho_ref_ie := valueof(t_RSL_IE(RSL_IE_HANDO_REF,
+					RSL_IE_Body:{ handover_ref := ho_ref }));
+	addl_ies := {
+		ho_ref_ie
+		};
+
 	/* Activate channel on BTS side */
-	f_rsl_chan_act(g_pars.chan_mode, act_type := t_RSL_IE_ActType_HO_SYNC);
+	f_rsl_chan_act(g_pars.chan_mode, more_ies := addl_ies, act_type := t_RSL_IE_ActType_HO_SYNC);
 	/* don't perform immediate assignment here, as we're testing non-IA case */
 	/* enable dedicated mode */
 	f_l1ctl_est_dchan(L1CTL, g_pars);
@@ -1311,6 +1326,7 @@
 
 	/* Activate channel on BTS side */
 	addl_ies := {
+		ho_ref_ie,
 		valueof(t_RSL_IE(RSL_IE_MS_POWER, RSL_IE_Body:{ms_power := ts_RSL_IE_MS_Power(0)}))
 		};
 	f_rsl_chan_act(g_pars.chan_mode, more_ies := addl_ies, act_type := t_RSL_IE_ActType_HO_SYNC);
@@ -1329,6 +1345,7 @@
 
 	/* Activate channel on BTS side */
 	addl_ies := {
+		ho_ref_ie,
 		valueof(t_RSL_IE(RSL_IE_TIMING_ADVANCE, RSL_IE_Body:{timing_adv := 0}))
 		};
 	f_rsl_chan_act(g_pars.chan_mode, more_ies := addl_ies, act_type := t_RSL_IE_ActType_HO_SYNC);
@@ -1347,6 +1364,7 @@
 
 	/* Activate channel on BTS side */
 	addl_ies := {
+		ho_ref_ie,
 		valueof(t_RSL_IE(RSL_IE_TIMING_ADVANCE, RSL_IE_Body:{timing_adv := 0})),
 		valueof(t_RSL_IE(RSL_IE_MS_POWER, RSL_IE_Body:{ms_power := ts_RSL_IE_MS_Power(0)}))
 		};
