Problemas con AT+CIPSEND

Hola tengo un problema para enviar una cadena de datos grandes a mi sim808 con cadenas bajas si me funciona. Pero cuando aumento valores se corta el envio.

Parte del codigo que estoy usando

SIM808.println("AT+CIPSTART=\"TCP\",\"api.thingspeak.com\",\"80\"");
delay(4000);
String datos="GET /update?api_key=1234DER8KARTHG7I&field1="+ lat + "&field2=" + lon + "&field3=" + vel.toInt()+ "&field4="+puerta+"&field5="+sube+"&field6="+baja;
Serial.println(datos);

Hasta aqui me muestra correctamente

SIM808.println("AT+CIPSEND="+datos.lenght());
delay(5000);
SIM808.println(datos);
delay(5000);
SIM808.println((char)26);
delay(5000);
SIM808.println();
SIM808.println("AT+CIPSHUT");