execCmd( tdwn);
// PORTB &= ~( 1 << PINB0); //установить 0 на линии SS
Serial.println ("колесо вниз");
Чей это код?

)))))
А execCmd?

А если посмотреть в тело функции, то понятно что он CS вешает на вторую микруху, которую ты не используешь (PB1).
Так если ты её не используешь, так зачем код?
Пробуй делать как выше написал короче. Если всё будет ок, то и от ножек избавимся и код поуменьшится.
А если совсем всё норм, то и на промикре станет пахать (ну если до низу сообщения дойдём без ошибок).