Bei den ifs hast du den Code so eingerückt, als ob nach einer if-Bedingung zwei Befehle ausgeführt werden sollen. Es wird aber nur der erste Befehl(Motordir) in Abhängigkeit vom if ausgeführt, der zweite(Motorspeed) auf jeden Fall, ohne dass dafür die if erfüllt sein muss.
Fass die zwei Befehle in einem Block zusammen. In etwa so:
Code:
if(...) {
    Befehl1;
    Befehl2;
}