SIM800L module with Elegoo nano CH340

I'm trying to connect my SIM800L module to an arduino nano copy named Elegoo nano CH340.
I have been trying to use a series of codes to test the functionality of the module mainly for sending a message, sending an email and making a HTTP request but so far i didn't' get any luck.
The SIM800L module works perfectly, i tried it with the Arduino uno with the same codes and it works just fine.
The Elegoo nano board is giving me error with almost all of the codes, the connection is very simple and it should work (5V->VCC, GND->GND, RX->D2, TX->D3). I have tried with all the baud rates and it is not working

Below are samples of the codes i'm using:

Sending SMS:

    AT
    AT+CMGF
    AT+CMGS="677749798"
    Hello!!
    \x1A

Sending email:

    AT+SAPBR=3,1,"CONTYPE","GPRS"                                        
    AT+SAPBR=3,1,"APN",""                                       
    AT+SAPBR=3,1,"USER",""
    AT+SAPBR=3,1,"PWD",""
    AT+SAPBR=1,1
    AT+SAPBR=2,1
    AT+EMAILCID=1
    AT+EMAILTO=30
    AT+EMAILSSL=1
    AT+SMTPSRV="smtp.gmail.com",465
    AT+SMTPAUTH=1,"",""
    AT+SMTPFROM="",""
    AT+SMTPRCPT=0,0,"",""
    AT+SMTPSUB="test"
    AT+SMTPBODY=4
    hello
    AT+SMTPSEND

Making HTTP request:

    AT+SAPBR=3,1,"CONTYPE","GPRS"
    AT+SAPBR=3,1,"APN",""
    AT+SAPBR=3,1,"USER",""
    AT+SAPBR=3,1,"PWD",""
    AT+SAPBR=1,1
    AT+SAPBR=2,1
    AT+HTTPINIT
    AT+HTTPPARA="CID",1
    AT+HTTPPARA="URL",""
    AT+HTTPACTION=0
    AT+HTTPREAD
    AT+HTTPTERM
    AT+SAPBR=0,1

Please can you refer me to any mistake that i'm doing, if this elegoo nano can not handle the work with the SIM800L module or the codes should be different or anything else. Thank you in advance

show your arduino code

how is the module powered?

The SIM800L module is connected and powered directly from the Elegoo nano (5V->VCC, GND->GND, RX->D2, TX->D3), so i'm not using an external power, and the Elegoo nano is connected to my PC.

This is the complete arduino code:

#include <SoftwareSerial.h>

byte RX = 7;
byte TX = 8;
SoftwareSerial *SIM800L = new SoftwareSerial(RX, TX);

void print_result()
{
  Serial.print("A7 board info: ");
  while( SIM800L->available() != 0)
    Serial.write( SIM800L->read());
  Serial.println();
}

void setup() {
  Serial.begin(9600);
  SIM800L->begin(9600);
  delay(2000); 

  Serial.println("Send AT command");
  SIM800L->println("AT");
  delay(2000);
  print_result();
  delay(2000);
  
  Serial.println("Set text mode");
  SIM800L->println("AT+CMGF=1");
  delay(2000);
  print_result();
  delay(2000);
  
  Serial.println("Send the Text message");
  SIM800L->println("AT+CMGS=\"677749798\"");
  delay(2000);
  print_result();
  delay(2000);

  Serial.println("Write the text content");
  SIM800L->println("Hola!!");
  delay(2000);
  print_result();
  delay(2000);

  Serial.println("Press Enter, Control+Z");
  SIM800L->println("\x1A");
  delay(2000);
  print_result();
  delay(2000);
}

void loop() {
  //print_result();
  //delay(2000);
}

it is likely that the nano does not transmit enough power to your SIM800L. those devices need their own power supply with an ability to go up to 2A --> check the needs of your module

But the module is connected to 5V of the nano, that should be enough, right ?

It works fine when i connect it to an Arduino uno or Raspberry pi zero. In my project i want to use a small microcontroller so any Arduino or another microcontroller you would suggest.

And can this power issue be fixed by using a power regulator or anything else using the same modules ??

salaryunis:
But the module is connected to 5V of the nano, that should be enough, right ?

It works fine when i connect it to an Arduino uno or Raspberry pi zero. In my project i want to use a small microcontroller so any Arduino or another microcontroller you would suggest.

And can this power issue be fixed by using a power regulator or anything else using the same modules ??

5V is the voltage... you also need current... Your arduino has limited capability in providing current. When you connect to your arduino, do you connect to 5V or Vin ?

I tried connecting it to the Vin but it didn't turn ON the module, so I'm connecting it to the 5V as it is the higher voltage supply port.

salaryunis:
I tried connecting it to the Vin but it didn't turn ON the module, so I'm connecting it to the 5V as it is the higher voltage supply port.

On a (true) Nano there is a difference for 5V when your board is powered by USB versus Vin

There is a shottky protection diode (in series) with the power coming from USB which means Vcc will be at 4,4 or 4.5V and when you power through Vin (between 8 and 12V) then the regulator will give you really 5V

This is a clone, so I'm not sure what they have done... But I would definitely try powering the SIM800L with a separate powerful 5V 2A power supply joining the ground with the Nano Ground and see what it does.

What 800L module? can you give a link or a photo?

depending on the module, may be it should NOt be connected to 5 V.

demkat1:
What 800L module? can you give a link or a photo?

SIM800L module:
https://www.amazon.es/DollaTek-SIM800L-Tarjeta-Quad-Band-Arduino/dp/B07DK4JMP5/ref=sr_1_2?ie=UTF8&qid=1536073070&sr=8-2&keywords=SIM800L+mini

Elegoo nano:

J-M-L:
On a (true) Nano there is a difference for 5V when your board is powered by USB versus Vin

There is a shottky protection diode (in series) with the power coming from USB which means Vcc will be at 4,4 or 4.5V and when you power through Vin (between 8 and 12V) then the regulator will give you really 5V

This is a clone, so I'm not sure what they have done... But I would definitely try powering the SIM800L with a separate powerful 5V 2A power supply joining the ground with the Nano Ground and see what it does.

Thank you for the information, i will give it a try.

Is there a way to provide the needed current for the module, like by sing a regulator module ?

and is there any other cheap Arduino nano that could be good enough to handle the SIM800L module?

The issue is likely not the nano but power

I would suggest you clear out this hypothesis by Checking if things work OK with a better power supply

thank you for the suggestions, I have power the SIM800L module with a separate USB cable from my PC, and they worked fine with no problems at all.

But for my project its better to have only one power resource so what is the best battery type and voltage and current range to connect to the elegoo nano so it can power both GPS and GSM modules with no issues ??

Thank you!

salaryunis:
But for my project its better to have only one power resource so what is the best battery type and voltage and current range to connect to the elegoo nano so it can power both GPS and GSM modules with no issues ??

Not sure what else your elegoo nano needs to power. basically you need to have enough for the whole thingy, likely an ability to deliver 2A would do. Voltage needs to be adapted to what your board expects or can handle.

J-M-L:
Not sure what else your elegoo nano needs to power. basically you need to have enough for the whole thingy, likely an ability to deliver 2A would do. Voltage needs to be adapted to what your board expects or can handle.

I'm using a 3.7v Lipo battery and i'm connecting it with a 5v step-up voltage converter, but i don't how much Amperes it is providing. But with this battery and this converter and the same gps and gprs modules everything works fine with a Raspberry zero w and the Arduino uno. Maybe they have an internal regulator ?

If i buy a 5V battery, would it be different than this scenario ? and it could work with the elegoo nano ?

i have been looking online for a 2A battery but they always just mention the voltage, if you know of a battery with 5v and 2A, i would appreciate it.