SIM800L not responding to AT commands
Ok folks I am now successfully interacting with the module ! Here is the few steps which helped me:


changed Grsp = gsm.readString(); to char c = gsm.read();. I guess high level functions like readString() can be too much sometimes. The string is a complex object to handle. It seems that reading char by char is safer is this case. 
removing the delay(500);
changed my "turn on" routine to let more time to the modem for powering on. Basically I plug the battery so modem turns on. I plug the arduino to the laptop so arduino turns on. Then open the serial monitor (not flashing the arduino). And then click on the reset button on the board.


Here is a screenshot of the serial monitor. And bellow the new code I used.



#include &lt;SoftwareSerial.h&gt;

SoftwareSerial mySerial(11, 10); // RX, TX 

void setup()  
{
  // Open serial communication
  Serial.begin(9600);

  // set the data rate for the SoftwareSerial port
  mySerial.begin(9600);

  delay(1000);
  Serial.println("Testing SIM800L module");
  Serial.println();
  Serial.print("Sizeof(mySerial) = "); Serial.println(sizeof(mySerial));
  Serial.println();

}

void loop() // run over and over
{

  if( mySerial.available() )
  {
    char c = mySerial.read();
    Serial.print(c);
  }

  if(Serial.available())
  {
    String Arsp = Serial.readString();

    Serial.println("Serial available");
    Serial.println(Arsp);
    mySerial.println(Arsp);
    Serial.println("Serial available end");
  }

}


I found this using an old project I did using a GPS module. I hope this will helps others.