diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn
index 80a1bd1..4dce7dd 100644
--- a/pcu/PCU_Tests.ttcn
+++ b/pcu/PCU_Tests.ttcn
@@ -663,6 +663,46 @@
 	f_sleep(10.0);
 }
 
+/* FIXME: merge this into BSSGP_Client_CT ? */
+type component bssgp_CT extends BSSGP_Client_CT {
+	var NS_CT ns_component;
+	var BSSGP_CT bssgp_component;
+	var boolean g_initialized := false;
+}
+
+/* FIXME: merge this into BSSGP_Client_CT ? */
+function f_init_bssgp() runs on bssgp_CT {
+	var MmContext mmctx := {
+		imsi := '262420000000001'H,
+		tlli := 'FFFFFFFF'O,
+		n_u := 0
+	};
+
+
+	if (g_initialized == true) {
+		return;
+	}
+	g_initialized := true;
+
+	/* create a new NS component */
+	ns_component := NS_CT.create;
+	bssgp_component := BSSGP_CT.create;
+	/* connect our BSSGP port to the BSSGP Emulation */
+	connect(self:BSSGP[0], bssgp_component:BSSGP_SP);
+	connect(self:BSSGP_SIG[0], bssgp_component:BSSGP_SP_SIG);
+	connect(self:BSSGP_PROC[0], bssgp_component:BSSGP_PROC);
+	/* connect lower-end of BSSGP with BSSGP_CODEC_PORT (maps to NS_PT*/
+	connect(bssgp_component:BSCP, ns_component:NS_SP);
+	/* connect lower-end of NS emulation to NS_CODEC_PORT (on top of IPl4) */
+	map(ns_component:NSCP, system:NS_CODEC_PORT);
+	ns_component.start(NSStart(mp_nsconfig));
+	bssgp_component.start(BssgpStart(mp_gb_cfg));
+
+	f_bssgp_client_register(mmctx.imsi, mmctx.tlli, mp_gb_cfg.cell_id);
+	f_bssgp_establish();
+}
+
+
 
 control {
 	execute(TC_selftest_ns());
