Avion RC por Wifi usando el MCU8266 V3

Saludos a todos amigos del foro, agradezco de antemano su atención.

Estoy haciendo un avión RC controlado desde el Movil por medio del Wifi.
el siguiente código recibe datos desde una aplicaron creada con appiventor
usando el sensor de orientación del movil y un stick virtual en la interfaz envio con un timer un string de datos cada 100 ms mediante peticiones GET HTTP://, luego recibo esos datos con la placa MCU8266 V3y los procesos extrayendo la información, quitando el texto sobrante y dejando solo lo que necesito para el servo y el motor.
Al principio todo parece ir bien, pero pasando unos 15 o 20 segundos, dejo de recibir datos, luego unos segundo después vuelvo a recibir… mi pregunta es ¿Que podrá estar sucediendo?

dejo el código a continuación:

#include <Servo.h>
#include <ESP8266WiFi.h>  
//#include <String.h>


const char ssid[] = "AEROPLANO 153 ";    //Definimos la SSDI de nuestro servidor WiFi -nombre de red- 
const char password[] = "12345678";       //Definimos la contraseña de nuestro servidor 
WiFiServer server(80);                    //Definimos el puerto de comunicaciones


int direccionval;
int potenciaval;
String potencia, direccion, data;
char direccion_int[3], potencia_int[3];
int helice = 0;
Servo servoMotor;

void setup(){
    
Serial.begin(9600);
server.begin();
WiFi.mode(WIFI_AP);
WiFi.softAP(ssid, password);  
Serial.print("Direccion IP Access Point - por defecto: ");      //Imprime la dirección IP
   
pinMode(helice, OUTPUT);  
servoMotor.attach(12); 
Serial.setTimeout(10); 
//server.setTimeout(10); 
}

void loop(){/////


 // Comprueba si el cliente ha conectado
  WiFiClient client = server.available();
  client.setTimeout(10);  
  //if (!client) {
  ///  return;
  //}


  //while(!client.available()){
   //delay(1);
   //}


  data = client.readStringUntil('\n');

  client.flush();

 data.remove(0, 5);
 data.remove(data.length()-9,9);

//GET /0,91 HTTP/1.1

 
  
  
  for(int i = 0; i< data.length(); i++){///
    if(data.substring(i, i+1)==","){////
      potencia = data.substring(0,i);
      direccion = data.substring(i+1); 
    break;
    }////
  } ///             



  
    potencia.toCharArray(potencia_int,4);
    potenciaval = atoi(potencia_int);
    
    direccion.toCharArray(direccion_int,4);
    direccionval = atoi(direccion_int);
       
    analogWrite(helice, potenciaval);
    servoMotor.write(direccionval);   
 delay(10);
Serial.print(potencia);
Serial.print(",");
Serial.print(direccion);
 Serial.print ("\n");