For fast transaction call 0916.457.0748

Basic Interfacing with SIM800L – for Beginners


Mini GSM / GPRS breakout board is based on SIM800L module, supports quad-band GSM/GPRS network, available for GPRS and SMS message data remote transmission.The board features compact size and low current consumption. With power saving technique, the current consumption is as low as 1mA in sleep mode.It communicates with microcontroller via UART port, supports command including 3GPP TS 27.007, 27.005 and SIMCOM enhanced AT Commands.

Hardware Required

Step 1. Hardware Setup

From the specification of SIM800L we would able to find out that its:

  • Operating Voltage: 3.3 - 5 Volts
  • Recommended voltage: 3.4 - 4.4 Volts
  • Recommended Current: 1 – 2 Amp

Therefore, if we use voltages below 3.4, either the SIM800L will not work or it will work but not all its features are responding (e.g unable to read SIM card). But if use voltage equal to its MAXIMUM operating voltage, the module might heat up and then got destroyed, or if we use ABOVE operating voltage, well, it will absolutely destroy the module. Most important, we should not supply a current above 2 Amp (e.g 5 Amp) to the module, it will destroy the module even if your voltage is in 3.4 - 4.4 volts range.

But here in our tutorial, you will observe that the module get 5V supply from arduino. That’s sound risky, but as my measurement, computation and observation, 5V pin in Arduino generate current from 500mA -1 Amp which gives a maximum power of 5 Watts. 5 watts qualifies from recommended power which would not cause the module to heat up or destroyed. That’s why 5V pin in Arduino qualifies as a supply voltage. 

Circuit Connection

Note: Make sure you already inserted your SIM card before powering the module. If not, you will not see any changes in the module LED indicator.

  • SIM800 VCC ↔ Arduino 5v
  • SIM800 GND ↔ Arduino GND
  • SIM800 SIM_TXD ↔ Arduino pin 3
  • SIM800 SIM_RXD ↔ Arduino pin 2

Note: if SIM800L LED indicator blink once every 2 or 3 seconds, your SIM already boot up and registered to a network. If not, try checking your SIM if it is  properly in place.

Step 2: Code

  1. Download and Add Adafriut Fona library to your Arduino library.
  2. Then open and upload the Fonatest sample code from Adafruit Fona.
  3. Open Serial monitor then change baudrate to 115200 and choose NL & CR.
  4. Then you'll see Menu of test setup, choose anything you want to test (e.g send and receive message).

When I check the network status


Leave a comment

Please note, comments must be approved before they are published

Payment Methods

Facebook Rewards Program