Techniques for improving the efficiency of transmitting data between devices are described. In an example, a first device transmits first data to a second device during a first time interval, whereby the second device is configured to communicate with the first device in a half-duplex mode. During a second time interval, the first device receives second data from the second device. The first device then determines that the second device transmitted the second data during a third time interval that is between the first time and the second time, and during which a reception of the first data by the second device is expected. The first device then retransmits the first data based at least in part on determining that the second device transmitted the second data during the third time interval.