Na ez azért szerintem erős. Való igaz, hogy a specifikációban nincs timeout, de az eszközök időzítései, ha minden rendben van, egy egy adott sebességnek megfelelően lezajlanak a tranzakciók. Vagyis használhatsz timeout -ot, úgy hogy ha az lejár, akkor hiba van, ismételni kell vagy beavatkozni (esetleg mindaddig várni míg a busz magához tér).
Nálam is így jelentkezett néhány elírt sor, beállt az mcu. Persze attól hogy kiléptem az adott várakozó ciklusból még nem javult meg a kommunikáció, de láttam meddig jut el, hol reked meg és javítottam.