[Solved] MATLAB Error: Wrong use of commLTETurboDecoder/step

Incorrect use of commlteturbodecoder/step solution

When learning Chapter 4 of “comprehensive and detailed explanation of LTE: MATLAB modeling, simulation and implementation”, run chap4_ex04_performanceBER.m. Matlab reports the following errors:

Wrong use of commLTETurboDecoder/step
Method 'stepImpl' is not defined for class 'commLTETurboDecoder', or the method has been removed from MATLAB's search path.

Error TurboDecoder_crc (line 10)
[y, flag, iters] = step(TurboCrc, u, intrlvrIndices);

Error chap4_ex05_rate (line 28)
    [y, ~, iters] = TurboDecoder_crc(-r2, Indices); % Turbo Deocder

Error chap4_ex05_performanceBER (line 13)
    ber_third(n)=chap4_ex05_rate(EbNo, maxNumErrs, maxNumBits, CodingRate);

unction commLTETurboDecoder used in “Understanding LTE with Matlab” is missing

Reason: Because the version of matlab is too high, the official matlab has abandoned the commLTETurboDecoder function after the 2016 version, so it will report an error when running this program.

Solution: Install communications system toolbox 6.1 in matlab2015b, and find the function under this path


After downloading and installing MATLAB_R2015b software, find the commLTETurboDecoder.m file under the corresponding path, place it under the current folder, and it will run normally.

In addition, this function also has a defect, the following error will be reported in the run: change snr to snr6 in the zVisualize_ex05.m file, as shown in the figure.

Wrong use of snr (line 87)
Insufficient number of input parameters.

Error zVisualize_ex05 (line 3)

Error chap4_ex05_performanceBER (line 28)
zVisualize_ex05(snr, ber_third,  ber_half);

Solution: Change the snr in the zVisualize_ex05.m file to snr6, as shown in the figure.

Modify the above two places to operate normally and draw the image, as shown in the figure:

Read More: