diff --git a/bts/BTS_Tests_SMSCB.ttcn b/bts/BTS_Tests_SMSCB.ttcn
index 6cb257c..6835f02 100644
--- a/bts/BTS_Tests_SMSCB.ttcn
+++ b/bts/BTS_Tests_SMSCB.ttcn
@@ -242,6 +242,24 @@
 	  omit }
 }
 
+private const CbchTestMsgs msgs_3m_4b_norm := {
+	{ RSL_CB_CMD_NORMAL, 3, '001000320f1141660c344dd3cba09a0c000000000000'O &
+				'000102030405060708090a0b0c0d0e0f101213141516'O &
+				'101112131415161718191a1b1c1d1e1f202223242526'O &
+				'201122232425262728292a2b2c2d2e2f303233343536'O,
+	  omit },
+	{ RSL_CB_CMD_NORMAL, 3, '002000320f1141660c344dd3cba09a0c000000000000'O &
+				'002102030405060708090a0b0c0d0e0f101213141516'O &
+				'102112131415161718191a1b1c1d1e1f202223242526'O &
+				'202122232425262728292a2b2c2d2e2f303233343536'O,
+	  omit },
+	{ RSL_CB_CMD_NORMAL, 3, '003000320f1141660c344dd3cba09a0c000000000000'O &
+				'003102030405060708090a0b0c0d0e0f101213141516'O &
+				'103112131415161718191a1b1c1d1e1f202223242526'O &
+				'203122232425262728292a2b2c2d2e2f303233343536'O,
+	  omit }
+}
+
 /* transmit single-block SMSCB COMMAND */
 testcase TC_sms_cb_cmd_sdcch4_1block() runs on test_CT {
 	var CbchTestPars pars := {
@@ -306,6 +324,22 @@
 	f_TC_smscb(pars);
 }
 
+/* transmit multiple commands of each 4 blocks */
+testcase TC_sms_cb_cmd_sdcch4_multi() runs on test_CT {
+	var CbchTestPars pars := {
+		use_sdcch4 := true,
+		msgs := msgs_3m_4b_norm
+	};
+	f_TC_smscb(pars);
+}
+testcase TC_sms_cb_cmd_sdcch8_multi() runs on test_CT {
+	var CbchTestPars pars := {
+		use_sdcch4 := false,
+		msgs := msgs_3m_4b_norm
+	};
+	f_TC_smscb(pars);
+}
+
 /* transmit SMSCB COMMAND with SCHEDULE payload */
 testcase TC_sms_cb_cmd_sdcch4_schedule() runs on test_CT {
 	var CbchTestPars pars := {
@@ -333,12 +367,14 @@
 	execute( TC_sms_cb_cmd_sdcch4_2block() );
 	execute( TC_sms_cb_cmd_sdcch4_3block() );
 	execute( TC_sms_cb_cmd_sdcch4_4block() );
+	execute( TC_sms_cb_cmd_sdcch4_multi() );
 	execute( TC_sms_cb_cmd_sdcch4_schedule() );
 	if (false) { /* FIXME: SDCCH/8 support broken, needs trxcon + L1CTL work */
 	execute( TC_sms_cb_cmd_sdcch8_1block() );
 	execute( TC_sms_cb_cmd_sdcch8_2block() );
 	execute( TC_sms_cb_cmd_sdcch8_3block() );
 	execute( TC_sms_cb_cmd_sdcch8_4block() );
+	execute( TC_sms_cb_cmd_sdcch8_multi() );
 	execute( TC_sms_cb_cmd_sdcch8_schedule() );
 	}
 }
