diff --git a/targets/RT/USER/lte-ru.c b/targets/RT/USER/lte-ru.c
index 002190ec5343241c91d76d4a97e2c924b95eb411..5a16a2ab7ad9d775cee9ff3e91e106c51866d1c8 100644
--- a/targets/RT/USER/lte-ru.c
+++ b/targets/RT/USER/lte-ru.c
@@ -826,7 +826,8 @@ void tx_rf(RU_t *ru) {
     int siglen=fp->samples_per_tti,flags=1;
 
     if (SF_type == SF_S) {
-      siglen = fp->dl_symbols_in_S_subframe*(fp->ofdm_symbol_size+fp->nb_prefix_samples0);
+      siglen = (fp->ofdm_symbol_size + fp->nb_prefix_samples0)
+               + (fp->dl_symbols_in_S_subframe - 1) * (fp->ofdm_symbol_size + fp->nb_prefix_samples);
       flags=3; // end of burst
     }