Сергей Сподрин, скорее всего все приходит, просто есть некоторый временной промежуток между ответом на команду пуска/останова. Т.е. между SetByte и GetByte надо или сделать фиксированную задержку (плохой вариант), или заменить условие выхода из цикла while.