Problema con tamaño de variable enviada por GET al arduino.

Hola, soy muy novato en arduino, y seguramente esto que pregunto tendra una solucion muy sencilla.

Resulta que tengo un Webserver en un arduino Nano, al enviarle datos por Get funciona sin problemas salvo cuando supero una cantidad determinada de caracteres, pongo ejemplo:

Si la peticion es esta funciona:

xx.xx.xx.xx/?ID=12345678aeiou

if(cadena.substring(posicion)==("ID=12345678aeiou"))
          {
            digitalWrite(led,HIGH);
            delay(1000);
            digitalWrite(led,LOW);
           }

Pero si la peticion es mas grande falla:

xx.xx.xx.xx/?ID=12345678aeioufhgjkmnlpqrstuwxyz

if(cadena.substring(posicion)==("ID=12345678aeioufhgjkmnlpqrstuwxyz"))
          {
            digitalWrite(led,HIGH);
            delay(1000);
            digitalWrite(led,LOW);
           }

Imagino que es un problema del tamaño predeterminado del string que almacena la peticion GET, pero no tengo conocimientos suficientes de programacion arduino para saber como solucionarlo.

Muchas gracias por la ayuda que me podais prestar.

Solucionado, era un problema de SDRAM, habia declarado muchos String en el codigo y me habia quedado sin memoria. He reducido el numero de String por los indispensable y sustituido todos los posibles por const char*.

en el IDE tienes una opcion que muestra la memoria utilizada.
Yo trabajo con el ATMEL STUDIO 6.2 que me da mas control de lo que necesito, incluido el manejo de memoria.