SIM800L GSM for GPRS (IOT)using Arduino

Hi,
I have a small project where i want to control few relays and data to control those relay has to be fetched from server so that other application can update that file directly to controll those relay on/off timing.

Problem in this project is there are many links for SIM800l msg reading and writing, but very few for internet access using SIM800L, also Its my first IOT project so server spance and all are quiet new for me.

Till now i was able to interface GSM module to arduino and send receive sms, I also got one Tutorial for gprs interface,here are at comands seq that he used to read a file from server,

Terminal log file
Date: 7/9/2016 - 12:16:48 PM
-----------------------------------------------

AT
OK

AT+CFUN=1
OK

AT+CPIN?
+CPIN: READY
OK

AT+CSTT="airtelgprs.com","",""
OK

AT+CSTT?
+CSTT: "airtelgprs.com","",""
OK

AT+CIICR
OK

AT+CIFSR
100.73.110.9

AT+CIPSTART="TCP","exploreembedded.com",80
OK
CONNECT OK

AT+CIPSEND=63
> 
GET exploreembedded.com/wiki/images/1/15/Hello.txt HTTP/1.0
SEND OK
HTTP/1.0 200 OK
Date: Sat, 09 Jul 2016 06:49:32 GMT
Server: Apache/2.4.12
Last-Modified: Mon, 04 Jul 2016 08:06:49 GMT
ETag: "4721a10-1c-536cad1811830"
Accept-Ranges: bytes
Content-Length: 28
Vary: User-Agent
Content-Type: text/plain
Connection: Keep-Alive
Proxy-Connection:Keep-Alive

Welcome to Explore Embedded!

CLOSED

but when i give the same AT command i get error closed at this line

GET exploreembedded.com/wiki/images/1/15/Hello.txt HTTP/1.0

I am also trying to understand AT comandsfrom this link.

Can any one could guide me where I am doing wrong!?

Thanks in advance for help.

Problem in this project is there are many links for SIM800l msg reading and writing, but very few for internet access using SIM800L

That is nonsense. There are plenty of examples of using AT commands to make GET requests.

also Its my first IOT project so server spance and all are quiet new for me.

Capitalization, punctuation, and spelling seem to be problems, too.

Is that first output from code that you didn't show running on your device? If so, where is the code and what is the problem? If not, why the hell would you post it? Post YOUR code and your output.

Is that first output from code that you didn't show running on your device? If so, where is the code and what is the problem?

My code was a simple one with just putting AT command serially. Here is my code.

#include <SoftwareSerial.h>

String Arsp, Grsp;
SoftwareSerial gsm(10, 11); // RX, TX

void setup() {
  // put your setup code here, to run once:

  Serial.begin(9600);
  Serial.println("Testing GSM SIM800L");
  gsm.begin(4800);

}

void loop() {
  // put your main code here, to run repeatedly:

  if(gsm.available())
  {
    //Grsp = gsm.readString();
    while(gsm.available()){
    Serial.write(gsm.read());
    }
  }

  if(Serial.available())
  {
    Arsp = Serial.readString();
    gsm.println(Arsp);
  }

}

And the output on my at command is as follow,

Testing GSM SIM800L
AT

OK
AT+CFUN=1

OK
AT+CPIN?

+CPIN: READY

OK
AT+CSTT="imis","",""

OK
AT+CSTT?

+CSTT: "imis","",""

OK
AT+CIICR

OK
AT+CIFSR

10.127.144.145
AT+CIPSTART="TCP","exploreembedded.com",80

OK
AT+CIPSEND=63

ERROR
AT+CIPSEND=63

ERROR

CONNECT OK
AT+CIPSEND=63

GET exploreembedded.com/wiki/images/1/15/Hello.txt HTTP/1.0

SEND OK
HTTP/1.1 400 Bad Request
Date: Tue, 27 Feb 2018 05:23:13 GMT
Server: Apache/2.4.7 (Ubuntu)
Content-Length: 300
Connection: close
Content-Type: text/html; charset=iso-8859-1

400 Bad Request

Bad Request

Your browser sent a request that this server could not understand.


Apache/2.4.7 (Ubuntu) Server at 127.0.1.1 Port 80

CLOSED

Do you know what each of the AT commands is supposed to do? If not, why are you issuing those commands? If you do, you should elaborate.