Multiple-Input Multiple-Output (MIMO) systems can achieve high data-rate and high capacity transmission. In MIMO systems, the scheme that weight substreams based on minimum mean square error (MMSE) criterion at the transmitter using feedback channel state information (CSI) achieves good performance (denoted hereafter as MMSE precoder). However, if the optimum number of substreams is not selected based on CSI and methods for reducing the performance degradation due to feedback delay is not used, MMSE precoder cannot achieve the full performance possible. In this paper, we propose an MMSE precoder with mode selection for MIMO systems, which selects both the number of substreams and the modulation scheme for each substream to minimize the average BER at a fixed rate. We evaluate the BER of the proposed MMSE precoder with two methods for reducing performance degradation due to feedback delay, channel prediction and receive weight robust to feedback delay. We also evaluate the BER of the proposed MMSE precoder with the method that combines channel prediction with receive weight robust to feedback delay. Simulation results show that the BER of the proposed MMSE precoder is improved compared to that of the conventional MMSE precoder using the fixed number of substreams. We also show that the method that combines channel prediction with receive weight robust to feedback delay can achieve good BER even when the large feedback delay exists.