Problems with pyserial

Hi there,
To control my stepper via pyserial, I use the following code:

#include "AccelStepper.h"

//pins
#define X_STEP_PIN         54
#define X_DIR_PIN          55
#define X_ENABLE_PIN       38


char serialData;

AccelStepper stepperX(1, X_STEP_PIN, X_DIR_PIN); // 1 = Driver


//variables
int speed_x = 8000;


void setup() {
  //setup stepperX
  stepperX.setMaxSpeed(8000);
  stepperX.setSpeed(speed_x);

  stepperX.setEnablePin(X_ENABLE_PIN);
  stepperX.setPinsInverted(false, false, true); //invert logic of enable pin
  stepperX.enableOutputs();


  Serial.begin(9600);
}

void loop() {

  if( Serial.available() > 0)
    serialData = Serial.read();
  Serial.print(serialData);

  if (serialData == '0') {
    stepperX.move(-2000);
    stepperX.runSpeedToPosition();
    stepperX.setSpeed(speed_x);
  }

  if (serialData == '1') {
    stepperX.move(2000);
    stepperX.runSpeedToPosition();
    stepperX.setSpeed(speed_x);
  }

  if (serialData == '3') {
  }


}

Now I have the following 2 problems:

  1. No matter what value I enter for speed_x, the stepper has the same speed.
  2. When serialData == '1' there isn't any motion at all.

Thank you very much in advance!

This Simple Python - Arduino demo may help. Also have a look at Serial Input Basics - simple reliable non-blocking ways to receive data.

...R