Quickstart SIM800 (SIM800L) with Arduino

It's only fair to share...Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedInDigg thisShare on RedditPin on PinterestPrint this pageEmail this to someone

SIM800 is one of the most commonly used GSM module among hobbyists and Arduino community. Even though AT command reference is available with a quick Google search, it is not very easy for a beginner to properly understand and use Arduino with SIM800. Therefore, this post summarizes how a beginner could interact with SIM800 using Arduino and in few future posts we’ll be going ahead with several other real life use cases discussing how SIM800 can be used with Arduino effectively.

Wiring

Caution! : SIM800 module itself uses input voltage of 3.7V – 4.2V. Therefore, if you directly connect the Vcc pin to Arduino 5V pin, it might damage the module as well. I tried 3.3V Arduino pin with no luck. Therefore if you have the SIM800 module itself, you will have to get the input voltage in range, maybe with a LM317 (and few calculations with a LM317 calculator).

Fortunately I am using below module with voltage regulators built in :

SIM800L Module

For above module Arduino to SIM800 connectivity was pretty straight forward .

  • SIM800 5v/4v Arduino 5v
  • SIM800 GND (either one) Arduino GND
  • SIM800 SIM_TXD Arduino D8 (read through for the reason)
  • SIM800 SIM_RXD Arduino D7 (read through for the reason)

Connect module with Arduino as mentioned above or with any changes depending on the module being used. Insert a valid SIM card and connect the Arduino with Arduino IDE.

Simple Serial Communication

Below is the simplest program usable to interact with SIM800 :

#include <SoftwareSerial.h>

//SIM800 TX is connected to Arduino D8
#define SIM800_TX_PIN 8

//SIM800 RX is connected to Arduino D7
#define SIM800_RX_PIN 7

//Create software serial object to communicate with SIM800
SoftwareSerial serialSIM800(SIM800_TX_PIN,SIM800_RX_PIN);

void setup() {
  //Begin serial comunication with Arduino and Arduino IDE (Serial Monitor)
  Serial.begin(9600);
  while(!Serial);
  
  //Being serial communication witj Arduino and SIM800
  serialSIM800.begin(9600);
  delay(1000);
  
  Serial.println("Setup Complete!");
}

void loop() {
  //Read SIM800 output (if available) and print it in Arduino IDE Serial Monitor
  if(serialSIM800.available()){
    Serial.write(serialSIM800.read());
  }
  //Read Arduino IDE Serial Monitor inputs (if available) and send them to SIM800
  if(Serial.available()){     
    serialSIM800.write(Serial.read()); 
  }
}

Upload above code to the Arduino (Code itself is self explanatory. Hence, will not repeat same). Once upload is complete start the Arduino Serial Monitor from Tools menu. Set Baud rate to 9600 and in drop down left to boud rate selection set “Both NL and CR”.

Once done, you can freely send AT commands to SIM800 and see the output in real time. Few examples :

AT – is to check if interface is working fine.
AT+CFUN – is used to set phone functionality
AT+CFUN? – returns currently set value for AT+CFUN
AT+CFUN=? – returns all possible values that can be set for AT+CFUN (similar to help)
AT+CFUN=1 – is to sent AT+CFUN to 1 (full functionality)
AT+CREG? – to get network registration information. stat=1 means you are registered with home network

AT+COPS? – returns currently registered operator details
AT+COPS=? – returns all the operators available

AT Commands

Sending SMS with SoftwareSerial

In below code delay of 1 second is used after each command to give necessary time for SIM800 to respond to each command. With this approach it is not possible to clearly identify any ERROR conditions because program will not ready the responses sent. Proper method of doing this is by checking each response against an expected value. This is already handled in most of the Arduino libraries including “Seeeduino” library we’ll be using below. Hence, for this stage, 1 second delay is used for the sake of simplicity.

Note : Replace 07194XXXXX with mobile number SMS should be sent to.

#include <SoftwareSerial.h>

//SIM800 TX is connected to Arduino D8
#define SIM800_TX_PIN 8

//SIM800 RX is connected to Arduino D7
#define SIM800_RX_PIN 7

//Create software serial object to communicate with SIM800
SoftwareSerial serialSIM800(SIM800_TX_PIN,SIM800_RX_PIN);

void setup() {
  //Begin serial comunication with Arduino and Arduino IDE (Serial Monitor)
  Serial.begin(9600);
  while(!Serial);
  
  //Being serial communication witj Arduino and SIM800
  serialSIM800.begin(9600);
  delay(1000);
  
  Serial.println("Setup Complete!");
  Serial.println("Sending SMS...");
  
  //Set SMS format to ASCII
  serialSIM800.write("AT+CMGF=1\r\n");
  delay(1000);

  //Send new SMS command and message number
  serialSIM800.write("AT+CMGS=\"07194XXXXX\"\r\n");
  delay(1000);
  
  //Send SMS content
  serialSIM800.write("TEST");
  delay(1000);
  
  //Send Ctrl+Z / ESC to denote SMS message is complete
  serialSIM800.write((char)26);
  delay(1000);
    
  Serial.println("SMS Sent!");
}

void loop() {
}

SIM800 Libraries

With a quick Google search you will be able to find several SIM800 Arduino libraries. After going through source codes of several libraries my selection was “Seeeduino_GPRS” library which provides basic SIM800 features as well as additional set of GPRS related features.

Sending SMS with Seeeduino Arduino library

Note : Seeeduino library assumes that TX connected to D8 and RX is connected to D7 on Arduino. This is the reason we used relevant pins at first place. If you need to connect SIM800 with any other Arduino pin, you will have to modify the library source (gprs.h) and add a new constructor. Library uses MIT license.

Once library is installed in Arduino IDE File menu, Examples section you will find “Seeeduino_GPRS” library and withing examples you will find “GPRS_SendSMS” example which reads as follows :

/*
Sketch: GPRS Connect TCP

Function: This sketch is used to test seeeduino GPRS's send SMS func.to make it work, 
you should insert SIM card to Seeeduino GPRS and replace the phoneNumber,enjoy it!
************************************************************************************
note: the following pins has been used and should not be used for other purposes.
  pin 8   // tx pin
  pin 7   // rx pin
  pin 9   // power key pin
  pin 12  // power status pin
************************************************************************************
created on 2013/12/5, version: 0.1
by lawliet.zou(lawliet.zou@gmail.com)
*/
#include <gprs.h>;
#include <SoftwareSerial.h>;

GPRS gprs;

void setup() {
  Serial.begin(9600);
  while(!Serial);
  Serial.println("GPRS - Send SMS Test ...");
  gprs.preInit();
  delay(1000);
  while(0 != gprs.init()) {
      delay(1000);
      Serial.print("init error\r\n");
  }  
  Serial.println("Init success, start to send SMS message...");
  gprs.sendSMS("07194XXXXX","hello,world"); //define phone number and text
}

void loop() {
  //nothing to do
}

If you go through Seeeduino library you will notice that it is possible to send commands directly for any advanced use cases. For examples there are library methods such as :

  • sendCmdAndWaitForResp(const char* cmd, const char *expectedResp, unsigned timeout)
  • sendCmd(const char* cmd)
  • waitForResp(const char *resp, unsigned int timeout)

Hence, you could simply correctly rewrite the SMS sending application as below (reinvent the wheel) :

    if(0 != gprs.sendCmdAndWaitForResp("AT+CMGF=1\r\n", "OK", DEFAULT_TIMEOUT)) { // Set message mode to ASCII
        ERROR("ERROR:CMGF");
        return;
    }
    delay(500);
    if(0 != gprs.sendCmdAndWaitForResp("AT+CMGS=\"07194XXXXX\"\r\n","&gt;",DEFAULT_TIMEOUT)) {
        ERROR("ERROR:CMGS");
        return;
    }
    delay(1000);
    gprs.serialSIM800.write(data);
    delay(500);
    gprs.serialSIM800.write((char)26);
    return;

I hope we have covered enough details for a quick start. It will be helpful if you could further go tough Seeeduino library to understand how they have used different commands.

Read more about SIM800 at :

It's only fair to share...Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedInDigg thisShare on RedditPin on PinterestPrint this pageEmail this to someone

63 comments on “Quickstart SIM800 (SIM800L) with Arduino

  1. Alex February 1, 2016 4:56 PM

    Do you have any information on how to do http post requests with the SIM800L? What form of additional power supply do you use? I would like to run this off a battery that’s also powering the arduino but am yet to make it work.

  2. Felipe March 6, 2016 1:24 AM

    Good afternoon, I’m having trouble sending sms
    My Sim800l apparently present is functioning normally.

    I tested the following AT commands

    AT
    – I received the response “OK”

    AT + CPIN? ** This check is SIM unlocked.
    – I received the answer “+ CPIN: READY” That means it is unlocked.

    AT + CREG? ** This is to verify that SIM is registered
      I received the reply “+ CREG: 0.2” What do you mean you’re not registered, however I’m not sure if that’s right, because usually I use the chip in the mobile device.

    AT + CSQ ** This check signal quality
    I received the answer “+ CSQ: 0.0”

    I’m trying to send the SMS to the unit, the serial arduino shows that the SMS was I sent, but it does not get any SMS on my device
    What is possibly occurring

    thank you !!

    • Ayoma April 19, 2016 2:36 PM

      Hi Felipe,

      This looks more like a operator problem to me (because you got “+CREG: 0.2”). This basically means mobile terminal is currently searching for a operator to register with. Just to be sure, can you try out the same SIM card with a regular phone and see if operator registration happens without any problem. In addition, you can try “AT+COPS=?” to list all available operators and see if your operator is getting listed. Maybe the signal reception of SIM800 is lower than it is with the mobile phone itself.

      Regards,
      Ayoma

  3. Bogdan March 29, 2016 6:58 PM

    Hi
    I need help with SIM800L module.
    For test I use Arduino MEGA 2560 and SIM800L module.
    SIM800L answer to AT commands, attach to gprs network, get local ip address and connect to server via tcpip client mode.
    That all is work fine. But I have problem with AT+CIPSEND.
    For example, to send 10 bytes of data I send AT+CIPSEND=10 and then write to serial 10bytes.
    After it module send me “DATA ACCEPT:10” (AT+CIPQSEND=1) and then my server received 10bytes of data.
    If module send me “DATA ACCEPT:10” all work fine but sometimes after AT+CIPSEND=10 with data I haven’t get any respond from module.
    It seems that module doesn’t accept all my data and AT+CIPSEND steel wait for data.
    I try manual send some byte to serial and then module respond “DATA ACCEPT:10”.
    I couldn’t understand why SIM800L sometimes doesn’t accept my data from serial and how to fix my problem.
    I try to send data with AT+CIPQSEND=0 (than I must receive SEND OK) and AT+CIPQSEND=1 but steel have the same problem.
    I test with serial speed 19200 and 9600.
    How can I debug my problem?
    I already work with this problem about 2-3 weeks and couldn’t find what is wrong.
    Thanks, Bogdan

  4. Pritha Tyagi April 1, 2016 10:04 PM

    Hello!

    Thank you so much for posting such wonderful programs. Can you please help me?
    How can I modify the above “Simple Serial Communication” program & “Sending SMS with SoftwareSerial” so that I may connect Tx & Rx of GSM Module with Tx & Rx of Arduino Uno? Is there a way?

    Thanks, Pritha

    • Ayoma April 19, 2016 3:04 PM

      Hi Pritha,

      PIN mapping is actually in the post itself. Sorry, I did not include a diagram there. This is same for Uno as well. Please let me know if I did not understand your question well.

      SIM800 5v/4v ↔ Arduino 5v
      SIM800 GND (either one) ↔ Arduino GND
      SIM800 SIM_TXD ↔ Arduino D8 (read through for the reason)
      SIM800 SIM_RXD ↔ Arduino D7 (read through for the reason)

      Regards,
      Ayoma

  5. Tauseef April 3, 2016 12:43 PM

    Hi,
    My GSM sim800L module which is connected to Arduino Mega is not responding to any of the AT commands.
    I tried with code which you have posted here, still there is no responses. Can you please help me out?

    • Ayoma April 19, 2016 4:25 PM

      Hi Tauseef,

      Are you sure that you followed the “Wiring” section correctly. Supply voltage might differ based on the module you are using. This should be something to do with wiring problem or supply voltage mismatch.

      Regards,
      Ayoma

  6. Margaritta April 3, 2016 8:47 PM

    Hello,
    My SIM800 doesn’t respond att all to any AT command, I’ve tried the code but it doesn’t work

    ¨Please Help me

    Margi

    • Ayoma April 19, 2016 4:26 PM

      Hi Margaritta,

      Are you sure that you followed the “Wiring” section correctly. Supply voltage might differ based on the module you are using. This should be something to do with wiring problem or supply voltage mismatch.

      Regards,
      Ayoma

      • Bilal August 26, 2016 12:18 AM

        Wiring is OK and messages are sent but not showing any AT command Response on Monitor altough the function of AT is workiing.
        Also help me to find the how to receive messages

    • chris October 4, 2016 4:45 PM

      HI, i got the same problem as yours. but i’m using SIM800C, another version of SIM800 series. Have you already solved your problem?

  7. Clondedyke April 7, 2016 12:25 AM

    With the exact same modul as described here and using Adafruit’s Fona library and example sketches I was able to run the Adafruit demo sketches without any problem (on a Arduino micro pro and Arduino Duo). Especially the FONAtest sketch is very helpfull to understand the modul – very much recommended for newbies!

    • Ayoma April 19, 2016 4:27 PM

      Sure look neat. Thanks for sharing.

  8. celem April 7, 2016 9:38 PM

    Thank you for this excellent post. Thanks to your post testing my new SIM800L EVB was quick and painless.

  9. Stu April 16, 2016 4:49 PM

    Hi! I have a SIM800L with break out, but without any level shifters. The module works perfectly, attached to 3.7V and the (official) 3.3V FTDI USB serial cable.

    I cannot make my ESP8266 (running the Arduino Core, and your first example) communicate with the SIM800L. I’m using pins 14 and 16 for TX and RX. I get some noise when I turn off the SIM800L, but apart from that they refuse to talk to eachother.

    I tried reversing TX and RX, no luck.

    Could it be that the 3.3V of the ESP is not strong enough for the 3.7V SIM800L? But then again, I think the SIM800 works on 2.8V internally. Or should I use the DTR pin on the SIM800L?

    So confused!

    • Ayoma April 19, 2016 2:59 PM

      Hi Stu,

      ESP8266 and SIM800 sure looks like an interesting idea to try out. I will give this a go.

      AFAIU SIM800L works fine in rage of 3.4 to 4.4 supply voltage http://www.seeedstudio.com/wiki/images/4/46/SIM800L_Hardware_Design_V1.00.pdf

      I have experienced that, if supply voltage is little lower than the required rage, SIM800L will function all fine but will fail to perform heavy functions like sending SMS, operator registration, etc. However, I am not very sure what are minimum signal voltage levels of RX and TX pints. Maybe your guess is right. I will try this setup and get back.

      Regards,
      Ayoma

      • Stu April 20, 2016 11:07 PM

        Hi Ayoma,

        Awesome. I’m providing a nice clean 3.7V to the SIM800L module, which it seems to be happy with (3.3V is indeed to low to operate on). The required TX/RX signal voltage is a bit of a mystery to me. I’d suspect 3.3V should work, as my FTDI cable uses this signal voltage. Perhaps the ESP is not providing strong enough (maybe not even 3.3V) signals.

        I’d be very interested to hear your results.

    • Scott June 29, 2016 7:51 AM

      I assume you have common ground between the two? It looks like the min VOH of the ESP8266 is 0.8 * VDDIO which it sounds like you have at 3.3V which means the VOH of the ESP8266 is about 2.64V and it looks like the SIM800L accepts 2.5 to 2.8V as it’s VIH on the serial ports. If you’re near the low end on the output of the ESP and on the high end of the SIM800L you could have a problem with your voltage levels. Do you have a scope or logic analyzer? If not, you may be able to measure the idle state of both devices to find out what they’re VOH is sitting at with a DMM. It you do that, the serial needs to be idle or it will affect the measurement.

  10. Fred April 20, 2016 12:23 PM

    I also have SIM800L which is connected to Arduino Duemilanove. The module registers to the network and I am able to call the number but it absolutely does not answer to “AT” commands in Arduino Serial Monitor. I also tried in PuTTy where enerything just freeze. The power to the module comes from scientific power supply unit which is definitely more than enought (4 volts). What else should i check? The module came without soldered headers, so maybe i heated TX / RX too much…

    • Fred April 22, 2016 12:33 PM

      anyone?

      • Scott June 29, 2016 7:25 AM

        do you get any information in the serial monitor?

  11. Pascal Roobrouck May 6, 2016 9:46 PM

    Thanks for this tutorial.
    I needed 1 small modification : my SIM card needs a PIN code entered, only then it connects to the mobile network.
    Found the SIM800L reference manual and the command is AT+CPIN=xxxx (replace xxxx with your PIN code).
    Then I succesfully sent my first SMS. Thanks again.

    • Simon November 10, 2016 6:42 PM

      Hello Pascal.
      Where do you put the code line of PIN?
      Is it looks like this:
      serialSIM800.write(“AT+CPIN=****\r\n”);
      ?
      Simon

  12. Kevin May 8, 2016 6:10 AM

    I cant send the sms, when i open the serial monitor just says Setup Complete, Sending SMS, SMS Sent, but i dont receive anything, help please, what am i doing wrong

    • Simon November 10, 2016 6:45 PM

      Hello !
      I have the same.
      Already solved this problem ?

  13. michael knudsen June 15, 2016 6:04 PM

    I have trouble getting sim800l to work on the Arduino Mega works fine on arduino uno
    have tried other serial ports
    hope you can help
    regards, Michael

  14. Ervin June 28, 2016 12:33 PM

    Hello,
    is there a way to know if SIM800L EVB module is working or is simply on (also without SIM for example)?
    i’ve tried to upload your code but nothing.. no response from the module.

    Thanks,
    Ervin

  15. Dimitris Piralis July 2, 2016 1:35 AM

    Some times it doesnt make call ,do you know how to force to do call? Maybe w8 for signal be ready and call. If i try to make for ex. 10 calls, 3 calls doesn’t work even Led flash every 3 min (that means it has signal).

  16. jef July 9, 2016 9:12 PM

    Dear Ayoma it’s a very good post to start
    many questions many replies
    no many thanks
    many thanks instead of who forget to do so

  17. harshitha vajha July 10, 2016 10:28 PM

    thanks for the post! I AM USING SIM800 .but it doesn’t respond to any of the AT commands. I’ve powered the gsm module with a 12v adapter and i made these connections:
    gsm RXD7 arduino
    gsm TX D8 arduino
    gsm GNDGND arduino
    Pls help me fix this. Any help would be appreciable.

  18. Jeffin Thomas July 13, 2016 5:25 PM

    hi i can sent msg to other phone using 800l .i just want to recieve msg , plz can you help me

  19. Buk July 18, 2016 2:47 PM

    I have a PIN CODE on my Sim card. To use the seeduino library i just put gprs.sendCmd(“AT+CPIN=\”1111\”\r\n*”) as the first line in the setup(). (Here 1111 is the PIN code).

  20. Cristobal July 21, 2016 10:07 PM

    Sim800 + Arduino Uno, use pin D8 and D7 as a serialsoftware communication.

    Sim800 + Arduino Mega, use pin D10 and D11 as a SoftwareSerial or pin Rx/Tx 1 to 3 as a HardwareSerial communication.

  21. Gigeox August 1, 2016 2:49 AM

    Hello, I bought the card GSM 800L Sim and I uploaded the sketch as shown, it works, I connected an antenna, a power supply 9v 1 ampere and usb connection. Recommend to program Arduino after unplugging the 5-volt connection between the two boards because when Arduino executes the program loop and does not accept programming.
    P.S. sorry for my english google.

  22. Gigeox August 1, 2016 3:04 AM

    Thanks you Ayoma for the tutorial and sketch, I used the same Sim800 card that you use in the tutorial.
    Bye

  23. Noel Kuck August 24, 2016 2:26 AM

    I am trying the sketch with an Arduino UNO and a Sim800H shield. I get no response from the AT command. Not sure where the trouble might be. Thoughts? Thanks!

  24. vinicius August 26, 2016 9:45 AM

    Congratulations,

    Please I want to send SMS for contacts inside de sim card. Phonebook inside de sim card – Is it possible?

    thanks

  25. wistful August 30, 2016 3:57 PM

    Thank you so much for posting such wonderful programs. Can you please help me?
    I can not upload to the sim800. the error is
    I think there is a problem with wiring but I don’t know what I can do. I use the arduino pro micro which have 3 GND.
    would you please let me know your idea and if it is possible please give me your email which I send you my circuit for checking wiring for me.
    I appreciate for your guidance in advance
    my.wistful@gmail.com

  26. Nuwan September 12, 2016 10:23 AM

    Hi,
    1-is this module work in sri lanka?
    2-which is better to use for http(sim900 or sim800)

  27. Hasby Fahrudin September 22, 2016 7:38 PM

    when i send AT command , it just respond with “ÿÿÿÿÿ” . any one know how to fix it?

    • Antonio September 27, 2016 1:04 PM

      Have you tried to choose the “Both NL & CR” option in the Serial Monitor select next to the the Autoscroll checkbox?

  28. Antonio September 27, 2016 12:59 PM

    Hi,
    I’m having a problem with the module. I’ve connected to the Arduino 5V but when sending the AT commands, it works sometimes and sometimes it gives me the error “UNDER VOLTAGE WARNING”. My Arduino is supplying 4.5V instead of 5V (both, by USB or 13V power jack supply). I’ve tried to connect the module to 5v 1A directly, but then the module doesn’t respond to any AT command.

    • InTheSameBoat October 14, 2016 6:21 PM

      Try AT+CBC., with your first setup. It should return three numbers, the last one being the voltage level, in millivolts. My SIM800L is using an external power supply (5V, 2A), and I’m getting values ranging from 4289 up to 4307.

  29. chris October 3, 2016 9:17 PM

    I have SIM800C GPRS/GSM Shield. Are the commands and the configurations the same for sending SMS? What’s the difference between SIM800L and SIM800C?

    • chris October 4, 2016 2:49 PM

      Anyone please? i did all the connections of arduino to the gsm module and the configurations in the arduino serial monitor. i am using SIM800C GSM/GPRS module but the codes in SENDING SMS still don’t work well. After “Setup Complete!”, I entered the AT COMMANDS and NOTHING HAPPENS. I’m not sure if these commands are applicable to all SIM800 series inlcuding SIM800C. Really need help from an expert. Newby here. Thank you in advance.

      • InTheSameBoat October 14, 2016 6:07 PM

        In order to be able to send AT commands, your void loop block needs to look like this:


        void loop() {
        //Read SIM800 output (if available) and print it in Arduino IDE Serial Monitor
        if(serialSIM800.available()){
        Serial.write(serialSIM800.read());
        }
        //Read Arduino IDE Serial Monitor inputs (if available) and send them to SIM800
        if(Serial.available()){
        serialSIM800.write(Serial.read());
        }
        }

  30. janamhosein October 10, 2016 11:31 AM

    hi
    How can I set up the Sim800l and compatible with Arduino DUE code,The codes are not incompatible with the board please to my guide .
    thanks

  31. InTheSameBoat October 14, 2016 6:09 PM

    I’ve been testing the code provided on this site, and it seems that I can not send an SMS which has more than 160 characters. Is that a limitation of one of the libraries, or the module in general? Or is it a buffer issue?

  32. Carlos Andrade October 26, 2016 4:06 AM

    Good evening,
    I’m trying to create a code where any text or number is entered in the Serial Monitor, and from there a message is sent to my phone.
    I know it’s pretty simple, but I could not create.
    Help me please.

  33. Simon November 10, 2016 5:55 PM

    Hello.
    I have arduino mega and module sim800l evb.
    I wrote the same program as described above.
    I have uploaded it to the arduino.
    Serial monitor flashed me a message.
    “SETUP COMPLETE
    SENDING SMS
    SMS SENT!”
    But did not get a text message on my phone.
    What is wrong?
    Help me please.

  34. Peter November 17, 2016 1:31 AM

    I’ve tried to run this Arduino code (to communicate via UART with SIM800L module) on my Arduino Nano v3, but I can’t get RX-TX loop working. For testing purpouse I’ve connected RX and TX pins together to make simple echo – but can’t get anything on System serial monitor in this configuration. Can anyone help?

    • Peter November 17, 2016 3:48 AM

      Ok, I think I know the reason. SIM800L Serial is GPIO based, so CPU need it’s time to send/receive (toggle GPIO pins). It can’t do both at the same time (only hw based UART can do that due to TX/RX buffers – i.e. Serial monitor). In regular echo TX is RX, so It has to be send & received at the same time. That’s why it isn’t working.

      It seems that this simple UART extension can only work in half-duplex mode.

      • Peter November 21, 2016 6:08 PM

        I’ve connected SIM800L module via Adruino Nano v3 and used simple Adruino code to drive SIM module from PC com monitor, and it works but only partially. Some characters are missing while sending them to SIM800 module. i.e. AT returns OK. AT+CFUN=? returns ERROR (in echo mode it also returns AT+FUN?), so if I send AT+CCFUNN=? it returns good response for CFUN.

        Can anyone advice anything?

  35. jef November 20, 2016 2:23 PM

    hello,, how to delete messages using seeduino library?
    please help me

    • Peter November 22, 2016 3:33 AM

      Try to call :

      MySeenduino.sendCmd(“AT+CMGD=X\r\n”, “OK”, DEFAULT_TIMEOUT);

      where X is msg number from AT+CMGL=”ALL” command

  36. sakhantar@gmail.com November 28, 2016 7:43 PM

    hello , i dont have sim800 nor gsm sheild and i like to use phonsell for the same option is it possibol? thnx

  37. Josef Gull December 1, 2016 11:09 PM

    josefgull@hotmail.com hi im using an Arduino nana so i changed tx to pin 0 rx to pin 1 and used a diode to drop the voltage to 4 v i uploaded the 1st sketch but ist not “answering” correct to my at-commands an sometimes it answers even with question sins and wierd looking “items” so can you help my ?

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">