Некоторые MCU, например MSP430 вообще не дают отследить момент действительного окончания передачи. Естественный способ решения - таймер, и запись в спецификацию протокола - слэйв должен начать ответную передачу не раньше X ms после получения последнего байта посылки, и не позже Y ms (иначе мастер регистрирует тайм-аут неответа). Конечно, в большинстве протоколов пункт про X ms отсутствует. Обычная неаккуратность разработчика. Но чудес то на бывает. А были ли проблемы ... Да я из-за этого в Копенгаген летал, на русалочку смотрел и в Тиволи пиво пил :-)