diff --git a/ttool/src/test/java/ui/TestGTURTLEModeling.java b/ttool/src/test/java/ui/TestGTURTLEModeling.java
index 41f948db2ad2ead05e7d32cd0e3eef16ec3e9560..30fb1b82227efb820de893d8378371ee742a52ee 100644
--- a/ttool/src/test/java/ui/TestGTURTLEModeling.java
+++ b/ttool/src/test/java/ui/TestGTURTLEModeling.java
@@ -46,6 +46,8 @@ public class TestGTURTLEModeling extends AbstractUITest {
 
         final String codeDirExpected = RESOURCES_DIR + mappingDiagName + File.separator + "expected" + File.separator;
 
+
+
         for( String compilerOption: codeGenOptions )    {
         	mainGUI.gtm.generateCCode( codeDir, compilerOption );
             /*try {
@@ -53,7 +55,11 @@ public class TestGTURTLEModeling extends AbstractUITest {
             } catch (Exception ignored) {
             }*/
             try {
-                final IComparisonReport difference = textComparator.compare( new File( codeDirExpected ), new File( codeDir ) );
+                File expected = new File( codeDirExpected );
+                File newFile = new File( codeDir );
+                final IComparisonReport difference = textComparator.compare( expected, newFile );
+
+                System.out.println("Difference between " + expected.getName() + " and " + newFile.getName());
 
                 if ( difference.containsDiff() ) {
                     difference.print();
diff --git a/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX.c b/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX.c
index 9984a98c5aca21bbb1ead13d9034d929a882070d..9ae69f8685e23d9edc9d0b408b4076990f80c2f8 100644
--- a/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX.c
+++ b/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX.c
@@ -43,12 +43,12 @@ int Zigbee_TX_exec(void)    {
 int op_F_CWP_I()	{
 
 	int status = 0;
-	sig[forkch0_out_1].f = false;
+	sig[cwl_ch_out].f = false;
 	/*firm instruction*/
-	fep_set_l(&X_CWP_I_ctx, ((FEP_BUFFER_TYPE*)sig[forkch0_out_1].pBuff)->num_samples);
-	fep_set_qx(&X_CWP_I_ctx, ((FEP_BUFFER_TYPE*)sig[forkch0_out_1].pBuff)->bank);
-	fep_set_bx(&X_CWP_I_ctx, ((FEP_BUFFER_TYPE*)sig[forkch0_out_1].pBuff)->base_address);
-	fep_set_tx(&X_CWP_I_ctx, ((FEP_BUFFER_TYPE*)sig[forkch0_out_1].pBuff)->data_type);
+	fep_set_l(&X_CWP_I_ctx, ((FEP_BUFFER_TYPE*)sig[cwl_ch_out].pBuff)->num_samples);
+	fep_set_qx(&X_CWP_I_ctx, ((FEP_BUFFER_TYPE*)sig[cwl_ch_out].pBuff)->bank);
+	fep_set_bx(&X_CWP_I_ctx, ((FEP_BUFFER_TYPE*)sig[cwl_ch_out].pBuff)->base_address);
+	fep_set_tx(&X_CWP_I_ctx, ((FEP_BUFFER_TYPE*)sig[cwl_ch_out].pBuff)->data_type);
 	/*start execution*/
 	status = fep_do(&X_CWP_I_ctx);
 	sig[cwpI_ch_out].f = true;
@@ -58,12 +58,12 @@ int op_F_CWP_I()	{
 int op_F_CWP_Q()	{
 
 	int status = 0;
-	sig[forkch0_out_0].f = false;
+	sig[cwl_ch_out].f = false;
 	/*firm instruction*/
-	fep_set_l(&X_CWP_Q_ctx, ((FEP_BUFFER_TYPE*)sig[forkch0_out_0].pBuff)->num_samples);
-	fep_set_qx(&X_CWP_Q_ctx, ((FEP_BUFFER_TYPE*)sig[forkch0_out_0].pBuff)->bank);
-	fep_set_bx(&X_CWP_Q_ctx, ((FEP_BUFFER_TYPE*)sig[forkch0_out_0].pBuff)->base_address);
-	fep_set_tx(&X_CWP_Q_ctx, ((FEP_BUFFER_TYPE*)sig[forkch0_out_0].pBuff)->data_type);
+	fep_set_l(&X_CWP_Q_ctx, ((FEP_BUFFER_TYPE*)sig[cwl_ch_out].pBuff)->num_samples);
+	fep_set_qx(&X_CWP_Q_ctx, ((FEP_BUFFER_TYPE*)sig[cwl_ch_out].pBuff)->bank);
+	fep_set_bx(&X_CWP_Q_ctx, ((FEP_BUFFER_TYPE*)sig[cwl_ch_out].pBuff)->base_address);
+	fep_set_tx(&X_CWP_Q_ctx, ((FEP_BUFFER_TYPE*)sig[cwl_ch_out].pBuff)->data_type);
 	/*start execution*/
 	status = fep_do(&X_CWP_Q_ctx);
 	sig[cwpQ_ch_out].f = true;
@@ -88,7 +88,8 @@ int op_F_CWL()	{
 int op_F_Sink()	{
 
 	int status = 0;
-	sig[joinch_0_out_CP].f = false;
+	sig[cwpQ_ch_out_CP].f = false;
+	sig[cwpI_ch_out_CP].f = false;
 	adaif_wait(&X_Sink_ctx);
 	status = adaif_wait(&X_Sink_ctx);
 	sig[sink_ch_in].f = true;
@@ -143,10 +144,12 @@ int op_CP_Chip2Octet_CWL()	{
 
 int op_CP_sink()	{
 	int status = 0;
-	sig[ joinch_0_out ].f = false;
+	sig[ cwpQ_ch_out ].f = false;
+	sig[ cwpI_ch_out ].f = false;
 	embb_mem2ip((EMBB_CONTEXT *)&CP_sink_ctx_0, (uintptr_t) fep_mss, 0/* USER TO DO */, 0/* USER TO DO */ );
 	embb_mem2ip((EMBB_CONTEXT *)&CP_sink_ctx_1, (uintptr_t) fep_mss, 0/* USER TO DO */, 0/* USER TO DO */ );
-	sig[ joinch_0_out_CP ].f = true;
+	sig[ cwpQ_ch_out_CP ].f = true;
+	sig[ cwpI_ch_out_CP ].f = true;
 	return status;
 }
 
@@ -177,11 +180,11 @@ void register_dataTransfers( void )	{
 
 /**** OPERATIONS FIRE RULES ****/
 bool fr_F_CWP_I( void )	{
-	return (( sig[ forkch0_out_1 ].f ) && ( !sig[ cwpI_ch_out ].f ));
+	return (( sig[ cwl_ch_out ].f ) && ( !sig[ cwpI_ch_out ].f ));
 }
 
 bool fr_F_CWP_Q( void )	{
-	return (( sig[ forkch0_out_0 ].f ) && ( !sig[ cwpQ_ch_out ].f ));
+	return (( sig[ cwl_ch_out ].f ) && ( !sig[ cwpQ_ch_out ].f ));
 }
 
 bool fr_F_CWL( void )	{
@@ -189,7 +192,7 @@ bool fr_F_CWL( void )	{
 }
 
 bool fr_F_Sink( void )	{
-	return (( sig[ joinch_0_out_CP ].f ));
+	return ( ( sig[ cwpQ_ch_out_CP ].f ) && ( sig[ cwpI_ch_out_CP ].f ));
 }
 
 bool fr_F_Chip2Octet( void )	{
@@ -215,7 +218,7 @@ bool fr_CP_Chip2Octet_CWL( void )	{
 }
 
 bool fr_CP_sink( void )	{
-	return ( ( sig[ joinch_0_out ].f ) &&( !sig[ joinch_0_out_CP ].f ) );
+	return ( ( sig[ cwpQ_ch_out ].f ) &&( sig[ cwpI_ch_out ].f ) &&( !sig[ cwpQ_ch_out_CP ].f ) &&( !sig[ cwpI_ch_out_CP ].f ) );
 }
 
 bool fr_CP_Source_to_Bits2Symbol( void )	{
diff --git a/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX.h b/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX.h
index 4563891741f0f2aaf5ce2f82a883f8c49516330c..535e3b6ef9097d4274788d88394fff4ba4b661c6 100644
--- a/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX.h
+++ b/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX.h
@@ -123,15 +123,13 @@ enum sigs_enu {
 	Source_ch_out,
 	chip2octet_ch_out,
 	cwl_ch_out,
-	joinch_0_out,
-	symbol2ChipSeq_ch_out,
-	forkch0_out_0,
-	forkch0_out_1,
 	cwpQ_ch_out,
 	cwpI_ch_out,
+	symbol2ChipSeq_ch_out,
 	symbol2ChipSeq_ch_out_CP,
 	chip2octet_ch_out_CP,
-	joinch_0_out_CP,
+	cwpQ_ch_out_CP,
+	cwpI_ch_out_CP,
 	Source_ch_out_CP,
 	sink_ch_in,
 NUM_SIGS };
diff --git a/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX_init.c b/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX_init.c
index f18df6d2303296cd70c2d7ea4d92c0607af83986..4d2920ffe66a5bdb15ce8ff6b293cd74174fa777 100644
--- a/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX_init.c
+++ b/ttool/src/test/resources/ui/generateccode/Mapping_1/expected/Zigbee_TX_init.c
@@ -121,32 +121,26 @@ void init_signals()	{
 	sig[cwl_ch_out].f = false;
 	sig[cwl_ch_out].pBuff = (FEP_BUFFER_TYPE*) &buff_cwl_ch_out;
 
-	sig[joinch_0_out].f = false;
-	sig[joinch_0_out].pBuff = /* USER TO DO */;
-
-	sig[symbol2ChipSeq_ch_out].f = false;
-	sig[symbol2ChipSeq_ch_out].pBuff = (MAPPER_BUFFER_TYPE*) &buff_symbol2ChipSeq_ch_out;
-
-	sig[forkch0_out_0].f = false;
-	sig[forkch0_out_0].pBuff = /* USER TO DO */;
-
-	sig[forkch0_out_1].f = false;
-	sig[forkch0_out_1].pBuff = /* USER TO DO */;
-
 	sig[cwpQ_ch_out].f = false;
 	sig[cwpQ_ch_out].pBuff = (FEP_BUFFER_TYPE*) &buff_cwpQ_ch_out;
 
 	sig[cwpI_ch_out].f = false;
 	sig[cwpI_ch_out].pBuff = (FEP_BUFFER_TYPE*) &buff_cwpI_ch_out;
 
+	sig[symbol2ChipSeq_ch_out].f = false;
+	sig[symbol2ChipSeq_ch_out].pBuff = (MAPPER_BUFFER_TYPE*) &buff_symbol2ChipSeq_ch_out;
+
 	sig[symbol2ChipSeq_ch_out_CP].f = false;
 	sig[symbol2ChipSeq_ch_out_CP].pBuff = (MAPPER_BUFFER_TYPE*) &buff_symbol2ChipSeq_ch_out;
 
 	sig[chip2octet_ch_out_CP].f = false;
 	sig[chip2octet_ch_out_CP].pBuff = (INTERLEAVER_BUFFER_TYPE*) &buff_chip2octet_ch_out;
 
-	sig[joinch_0_out_CP].f = false;
-	sig[joinch_0_out_CP].pBuff = /* USER TO DO */;
+	sig[cwpQ_ch_out_CP].f = false;
+	sig[cwpQ_ch_out_CP].pBuff = (FEP_BUFFER_TYPE*) &buff_cwpQ_ch_out;
+
+	sig[cwpI_ch_out_CP].f = false;
+	sig[cwpI_ch_out_CP].pBuff = (FEP_BUFFER_TYPE*) &buff_cwpI_ch_out;
 
 	sig[Source_ch_out_CP].f = false;
 	sig[Source_ch_out_CP].pBuff = (MM_BUFFER_TYPE*) &buff_Source_ch_out;