diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 25df52d..4a34310 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -1923,6 +1923,10 @@
 testcase TC_assignment_codec_amr_f() runs on test_CT {
 	var TestHdlrParams pars := valueof(t_def_TestHdlrPars);
 	var MSC_ConnHdlr vc_conn;
+
+	/* Note: This setups the codec configuration. The parameter payload in
+	 * mr_conf must be consistant with the parameter codecElements in pars
+	 * and also must match the amr-config in osmo-bsc.cfg! */
 	var RSL_IE_Body mr_conf := {
 		other := {
 			len := 2,
@@ -1930,11 +1934,14 @@
 		}
 	};
 
+	pars.ass_codec_list := valueof(ts_BSSMAP_IE_CodecList({ts_CodecAMR_F}));
+	pars.ass_codec_list.codecElements[0].s0_7 := '00000110'B;
+	pars.ass_codec_list.codecElements[0].s8_15 := '01010111'B;
+	pars.expect_mr_conf_ie := mr_conf;
+
 	f_init(1, true);
 	f_sleep(1.0);
 
-	pars.ass_codec_list := valueof(ts_BSSMAP_IE_CodecList({ts_CodecAMR_F}));
-	pars.expect_mr_conf_ie := mr_conf;
 	vc_conn := f_start_handler(refers(f_TC_assignment_codec), pars);
 	vc_conn.done;
 }
@@ -1942,6 +1949,8 @@
 testcase TC_assignment_codec_amr_h() runs on test_CT {
 	var TestHdlrParams pars := valueof(t_def_TestHdlrPars);
 	var MSC_ConnHdlr vc_conn;
+
+	/* See note above */
 	var RSL_IE_Body mr_conf := {
 		other := {
 			len := 2,
@@ -1949,11 +1958,14 @@
 		}
 	};
 
+	pars.ass_codec_list := valueof(ts_BSSMAP_IE_CodecList({ts_CodecAMR_H}));
+	pars.ass_codec_list.codecElements[0].s0_7 := '00000110'B;
+	pars.ass_codec_list.codecElements[0].s8_15 := '00000111'B;
+	pars.expect_mr_conf_ie := mr_conf;
+
 	f_init(1, true);
 	f_sleep(1.0);
 
-	pars.ass_codec_list := valueof(ts_BSSMAP_IE_CodecList({ts_CodecAMR_H}));
-	pars.expect_mr_conf_ie := mr_conf;
 	vc_conn := f_start_handler(refers(f_TC_assignment_codec), pars);
 	vc_conn.done;
 }
