BlueTooth Car Cam remote-problems

I am making a bluetooth car cam remote with a servo a pro mini and a HD duel car cam and I can control it just fine with my Droidx2, tilt, left and right, presets, but with my coding i can not get it to come out of a do/while of a switch/case for switch (qualifier) case "a" switch (dataByte) case "4"
any one have any ideals?

thanks
DrMCP

#include <Servo.h>

#define ledA 13

#define ledB 11
Servo servo0; 
Servo servo1;
#define S0 0
#define S1 1
#define DServo0           1600     // default position for servo0 on "power up" - 1500uS is center position on most servos
#define DServo1           1600     // default position for servo1 on "power up" - 1500uS is center position on most servos
int qualifier;
Servo Servo0;                                                 // define servos
Servo Servo1;                                                 // define servos
int dataByte;
int pos = 0;


void setup()

{
  Servo0.attach(S0);                                          // attach servo to I/O pin
  Servo1.attach(S1);                                          // attach servo to I/O pin
  Servo0.writeMicroseconds(DServo0);                          // set servo to default position
  Servo1.writeMicroseconds(DServo1);                          // set servo to default position
  Serial.begin(115200);

  pinMode(ledA,OUTPUT);

  pinMode(ledB,OUTPUT); 

  pinMode(1,OUTPUT);
  servo0.attach(14); //analog pin 0


  servo1.attach(15); //analog pin 1



}


void loop()

{

  if(Serial.available()>1)

  {

    qualifier=Serial.read();

    dataByte=Serial.read();  

  } 

  switch (qualifier)

  {

  case 'A':

    //Serial.print("aux big button was pushed number ");

    // delay(1700);

    //  Serial.print(dataByte);

    switch (dataByte)
    {
    case 1:    
      servo1.write(1000);
      break;

    case 2:
      servo1.write(1600);
      break;
    case 3:
      servo1.write(2200);
      break;    
    case 4:
      do
      { 
        for(pos = 0; pos < 180; pos += 1)  // goes from 0 degrees to 180 degrees 
        {                                  // in steps of 1 degree 
          servo1.write(pos);              // tell servo to go to position in variable 'pos' 
          delay(25);                       // waits 15ms for the servo to reach the position 
        } 
        for(pos = 180; pos>=1; pos-=1)     // goes from 180 degrees to 0 degrees 
        {                                
          servo1.write(pos);              // tell servo to go to position in variable 'pos' 
          delay(25);                       // waits 15ms for the servo to reach the position 
        } 
      }




      while (dataByte = 4);
    }
    break;

  case 'C':

    // Serial.print("received command number ");

    // delay(1700);

    //  Serial.print(dataByte);   

    {
    case 5:    
      servo1.write(1000);
      break;

    case 6:
      servo1.write(1500);
      break;
    case 7:
      servo1.write(2000);
      break;    

    }

    break; 

  case 'D':

    Serial.print("Direction button was pushed number ");

    //   delay(1700);

    Serial.print(dataByte);

    break;

  case 'G':

    Serial.print("Send data box 1 contains  ");

    //   delay(1700);

    Serial.print(dataByte);    

    break;

  case 'H':

    Serial.print("send data box 2 contains ");

    //  delay(1700);

    Serial.print(dataByte);    

    break;

  case 'L':

    analogWrite(ledA,dataByte);
    servo0.write(dataByte);

    break;

  case 'R':

    analogWrite(ledB,dataByte);
    servo1.write(dataByte);

    break;

  case 'X':

    analogWrite(ledA,dataByte);    
    servo0.write(dataByte);

    break;

  case 'Y':

    analogWrite(ledB,dataByte);
    servo1.write(dataByte);    

    break;  

  }

  qualifier=0;

  dataByte=0;

}
/*void sweep()
 { 
 for(pos = 0; pos < 180; pos += 1)  // goes from 0 degrees to 180 degrees 
 {                                  // in steps of 1 degree 
 servo1.write(pos);              // tell servo to go to position in variable 'pos' 
 delay(15);                       // waits 15ms for the servo to reach the position 
 } 
 for(pos = 180; pos>=1; pos-=1)     // goes from 180 degrees to 0 degrees 
 {                                
 servo1.write(pos);              // tell servo to go to position in variable 'pos' 
 delay(15);                       // waits 15ms for the servo to reach the position 
 } 
 
 
 }*/

dataByte == 4

  Serial.begin(115200);
  pinMode(1,OUTPUT);

These two lines don't belong in the same sketch. Pin 1 is a hardware serial pin. Don't mess with it if you are using Serial.

Servo servo0; 
Servo servo1;

Servo Servo0;                                                 // define servos
Servo Servo1;                                                 // define servos

Variable names that differ only in case are a really bad idea.

  servo0.attach(14); //analog pin 0
  servo1.attach(15); //analog pin 1

Portable code would use the aliases A0 and A1.

Even once you make James' suggested change, you will not break out of the do/while statement, since dataByte never changes value in the do/while loop.