O Arduino nano simplesmente trava ou não consegue acessar o servidor quanto o Sketch usa mais do que 60% da memória.
Estou usando a biblioteca "SIM800L.h" e TinyGPS++.h no meu projeto, o objetivo é obter a localização pelo GPS e enviar para o servidor.
Tudo funciona sem problema quando o o sketch é menor do que 60%, porém, ao aumentar o sketch para 62% ou mais, o modem começa a ter dificuldade para conectar ao servidor e quase sempre o Arduino fica travado.
A comunicação com o servidor é praticamente o código do exemplo:
HTTPS_GET_SoftSerial da biblioteca acima informada.
Segue resultado da compilação quando funciona:
O sketch usa 18566 bytes (60%) de espaço de armazenamento para programas. O máximo são 30720 bytes.
Variáveis globais usam 1102 bytes (53%) de memória dinâmica, deixando 946 bytes para variáveis locais. O máximo são 2048 bytes.
Segue resultado da compilação quando NÃO funciona:
O sketch usa 20776 bytes (67%) de espaço de armazenamento para programas. O máximo são 30720 bytes.
Variáveis globais usam 1317 bytes (64%) de memória dinâmica, deixando 731 bytes para variáveis locais. O máximo são 2048 bytes.