Problema con comunicación sim800l Arduino nano

Buenas tardes soy nuevo aqui y le agradeseria su ayuda.

Quiero activar varios led con mensajes de texto a través de arduino nano y sim800l ya tengo el código y me funciono perfecto sin problema pero cuando desconecto el arduino de la pc y lo dejo solo con la alimentación externa deja de funcionar, lo curioso es que si quito el cable usb el sigue trabajando perfecto solo si se enciende de cero sin estar conectado a la pc no funciona espero haberme explicado, le agradeseria su ayuda.

Este es el código que copie de otra pagina.

#include <SoftwareSerial.h> //Incluimos la libreria SoftwareSerial
SoftwareSerial SIM800L(8, 9); //Declaramos los pines RX(8) y TX(9) que vamos a usar

String Comando; //Declaramos una variable de tipo String para almacenar el texto del SMS recibido
int LED = 3; //Definimos el pin donde esta conectdo el LED (Digital 3)

void setup(){
Serial.begin(9600); //Iniciamos la comunicacion serie
SIM800L.begin(9600); //Iniciamos una instancia de la librería SoftwareSerial
SIM800L.println(“AT+CMGF=1”); //Configuramos el módulo para trabajar con los SMS en modo texto
delay(1000); //Pausa de 1 segundo
SIM800L.println(“AT+CNMI=1,2,0,0,0”); //Configuramos el módulo para que nos muestre los SMS recibidos por comunicacion serie
pinMode(LED, OUTPUT); //Definimos el pin donde esta conectado el LED como salida
}

void loop(){
if (SIM800L.available()){ //Si hay datos disponibles
Comando = SIM800L.readString(); //Los almacenamos en la variable Comando
Serial.println("NUEVO SMS ENTRANTE: " + Comando); //Los sacamos por comunicacion serie
}

if(Comando.indexOf(“On”)>=0){ //Si la variable Comando contiene la palabra ON
Serial.println(“Encendiendo LED”); //Avisamos por comunicacion serie
digitalWrite(LED, HIGH); //Activamos el LED
Comando = “”; //Vaciamos la variable
}

if(Comando.indexOf(“Off”)>=0){ //Si la variable Comando contiene la palabra OFF
Serial.println(“Apagando LED”); //Avisamos por comunicacion serie
digitalWrite(LED, LOW); //Desactivamos el LED
Comando = “”; //Vaciamos la variable
}
}

Hola, Jesus-alex.
En primer lugar, te rogaría que leas las Normas del foro para saber de qué forma puedes exponer tus mensajes de una forma más legible y eficiente, utilizando los tags o etiquetas correctos para “envolver” códigos, vínculos e imágenes. Luego ve a More (abajo a la derecha), click, luego Modify y estas en modo EDICION.
Selecciona todo el código de tu programa y click en </> arriba del emoticon. Verás que cuando lo guardes tu mensaje se verá de forma más limpia y utilizable.
Tags.jpg
Y en cuanto a tu problema; por ir delimitando, podría ser que al no estar conectado al ordenador se quede esperando dicha conexión en el Serial.begin. Prueba sencillamente a comentar todas las líneas que comienzan por “Serial.” a ver si así funciona.