A method for transmitting a data to a reception end device in a Multi-Input Multi-Output, MIMO, system using a plurality of sub-carriers by a transmission end device, the method comprising: determining a precoding matrix as a first part of a phase-shift-based precoding matrix; determining a diagonal matrix for a phase shift as a second part of the phase-shift-based precoding matrix; determining a DFT matrix as a third part of the phase-shift-based precoding matrix; and precoding by multiplying the phase-shift-based precoding matrix by a transmission symbol per resource, wherein the phase-shift-based precoding matrix is determined by multiplying the precoding matrix, the diagonal matrix, and the DFT matrix, wherein the precoding matrix is selected from a subset of a codebook, wherein the subset of the codebook comprises one or more precoding matrixes, and wherein the phase-shift-based precoding matrix is represented by a following equation: P N t × R 1 0 ⋯ 0 0 e jθ 1 k ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ e jθ R − 1 k DFT R × R where () is the precoding matrix with a dimension of N t ×R, N t is a number of transmission antenna, ( DFT R × R) is the DFT matrix with a dimension of R×R, 'k' is 1 a resource index, 'θ i ' (i=1, 2,..., R-1) is a phase angle value, and 'R' is a spatial multiplexing rate; and wherein the precoding matrix is selected to be cyclically repeated within the subset of the codebook based on the resource index 'k' and the number of precoding matrixes in the subset; characterized by: wherein the codebook subset, used in a retransmission between the transmission end device and the reception end device, has precoding matrixes that are different to the precoding matrixes of the codebook subset used in an initial transmission. determining a precoding matrix as a first part of a phase-shift-based precoding matrix; determining a diagonal matrix for a phase shift as a second part of the phase-shift-based precoding matrix; determining a DFT matrix as a third part of the phase-shift-based precoding matrix; and precoding by multiplying the phase-shift-based precoding matrix by a transmission symbol per resource, wherein the phase-shift-based precoding matrix is determined by multiplying the precoding matrix, the diagonal matrix, and the DFT matrix, wherein the precoding matrix is selected from a subset of a codebook, wherein the subset of the codebook comprises one or more precoding matrixes, and wherein the phase-shift-based precoding matrix is represented by a following equation: P N t × R 1 0 ⋯ 0 0 e jθ 1 k ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ e jθ R − 1 k DFT R × R where () is the precoding matrix with a dimension of N t ×R, N t is a number of transmission antenna, ( DFT R × R) is the DFT matrix with a dimension of R×R, 'k' is 1 a resource index, 'θ i ' (i=1, 2,..., R-1) is a phase angle value, and 'R' is a spatial multiplexing rate; and wherein the precoding matrix is selected to be cyclically repeated within the subset of the codebook based on the resource index 'k' and the number of precoding matrixes in the subset; characterized by: wherein the codebook subset, used in a retransmission between the transmission end device and the reception end device, has precoding matrixes that are different to the precoding matrixes of the codebook subset used in an initial transmission.