Familiarize with rhydolabz Tracking Shield (SIM800 / SIM900 / SIM900A)

An all-in-one arduino compatible shield from rhydoLABZ, that lets you add location-tracking, voice, text, data connectivity and data storage to your project in an adorable little package. The shield features new generation GlobalTop GPS chipset and SIM800/900/900A. With GPS technology, the shield supports satellite navigation along with cellular connectivity and that makes most of what you need for your robotics projects.

GSM/GPRS connectivity is controlled via AT commands, while the GPS functionality follows NMEA protocol. The shield also offers data storage on microSD card. The design of this shield allows you to drive the GSM module directly with the computer as well as with your Arduino Board. The package includes duck type SMA antenna for cellular network connectivity and an active external antenna for GPS functionality. GPS U2P module offers a high sensitivity, incredibly low power consumption while searching with -165dBm high sensitivity and 10Hz maximum update rate. Featuring an industry-standard interface and GPS function, the combination of both technologies on a single shield allows items, vehicles and people to be tracked seamlessly at any location and anytime with signal coverage.


  • AT command interface
  • Quad-band (SIM900 and SIM800) and Dual-band (SIM900A) variants
  • Make and receive voice calls
  • Send and receive SMS messages
  • Send and receive GPRS data (TCP/IP, HTTP, etc.)
  • Inbuilt Powerful TCP/IP protocol stack for Internet data transfer over GPRS
  • Bluetooth (for SIM800 only) : compliant with 3.0 + EDR
  • Debug Connector for GSM firmware updation
  • Standard Flap type SMA Socket
  • ESD Protection over TVS Zener array
  • Configurable Baud rate (factory default value: 9600)
  • Standard Audio Jack Connectors for external speaker and mic
  • Level shifting circuitry to make it Arduino-safe
  • SMA connectors to connect external antennas for GSM & GPS
  • Indicator LEDs for Power, Netlight, Status and 3D Fix
  • GlobalTop U2P GPS with MediaTek MT3339 Chipset
  • MMC card slot for data storage
  • GSM module communicates via hardware serial pins
  • GPS module communicates via software serial pins
    • S-TX – digital pin 5
    • S-RX – digital pin 4
  • Separate Reset switches for both Arduino and the GSM module
  • Slide switch to swap the GSM module between Arduino and PC
  • Supply Voltage : 7-12 V DC
  • On-board 5V & 3.3V regulators

SIM900A, SIM900 & SIM800SIM800 modules are upgraded version of its previous successful GSM/GPRS/GPRS module series SIM900. There are multiple sub versions of each series, each of which cater to a different set of users and applications. SIM900 comes in the form of full version Quad band SIM900 & dual band version SIM900A. SIM800 itself is the full version Quad band SIM800. There are other SIM800 & SIM900 versions but very less information available about them, so they have not been discussed.

What extra does SIM800 modules give me compared to SIM900 series modules? SIM800 GSM modules have a inbuilt Bluetooth stack compliant, and the interface is accessible using AT commands.

SIM900 and SIM900A modules operate from 3.2V to 4.8V supply range while SIM800 modem operates from 3.4V to 4.4V supply range (Reduced operating range!). Same AT commands used for simple call/sms functionality in SIM900, SIM900A can be used with the SIM800, but SIM800 series have added AT command set for supporting extra features like bluetooth.

SIM800 module is needed only if you need those additional features that are not present in SIM900 series modules, like the Bluetooth connectivity which was missing in SIM900 series. SIM800 and SIM900 can be operated worldwide because they can operate in all four GSM bands used across the world.


LED Description

  • PWR - Power indication, turns on when the shield is powered
  • NET  – Network status
    • Off – Modem not running
    • 64ms on/ 800ms off – Modem not registered to the network
    • 64ms on/ 3000ms off – Modem registered to the network
    • 64ms on/ 300ms off – GPRS communication is established
  • STS   - Indicates operating status of the module. LED is on when the module is powered.
  • 3D     – Blinks when GPS is not fixed, turns off when GPS is fixed

Jumper Description

  • J1(RF-IN) - Short J1 to use active antenna for GPS
  • J2 – Short to connect GPS RST to digital pin 6 of Arduino
  • J3 – Selects IOREF as 3.3 / 5 V
  • J4 – GSM Antenna connector
  • J5 – Short to connect PKEY to digital pin 8 of Arduino
  • J6 - Short to connect GSM RST to digital pin 7 of Arduino
  • J7 - Short to connect GPS RX to S-TX (digital pin 5) of Arduino

Connector Description

  • K1 - Power Supply
  • K2 - GPS Antenna connector
  • K3 - Speaker Jack
  • K4 - MIC Jack
  • K5 - SIM Socket
  • K6 - Provision for U. FL antenna connector
  • K7 - GSM debug
  • K8 - SD card socket
  • K9 - Arduino ICSP


  • SW1 - DPDT slide switch to swap the shield between Arduino and PC. The shield communicates with Arduino / PC as selected by the switch
  • SW2 - Arduino Reset
  • SW3 - GSM Reset

PKEY using Arduino

PWRKEY pin of GSM modem is to turn modem On/Off externally using open collector transistor or switch. You can turn on/off the modem alternately by driving the PWRKEY to a low level voltage for a short time (2-3 sec) and then release. This pin is pulled up to 2.9V in the GSM Modem.

In the shield, it is connected to digital pin 8 of Arduino via jumper J5. Shorting the jumper and removing R16 from board enables you to power on /off the modem by Arduino.

GSM RST using Arduino

RST pin of GSM modem is active low. In the shield, it is connected to digital pin 7 of Arduino via jumper J6. Short J6 and make the pin 7 HIGH to reset the modem.

GPS RST using Arduino

Reset pin of GPS is active low. In the shield, it is connected to digital pin 6 of Arduino via jumper J2. Short J2 and make the pin 6 HIGH to reset the GPS.

Audio Jacks

The Shield contains two audio stereo jacks on board. The first is the audio input jack (labeled “MIC”). This allows you to input audio from any device such as an MP3 player, or cellular phone using a basic audio cable. The second audio jack is the audio output, labeled “SPEAKER”. This jack allows you to route the audio out to a speaker. 

Micro SD CardThe shield also has a micro SD card socket to add external storage to your project. It communicates with Arduino using SPI protocol. You can directly use Arduino SD library that is available with Arduino IDE. Note that the library uses pin4 as Slave select whereas the shield uses pin9 for slave select, so you have to change your program accordingly.

Getting StartedLets check out on getting started with this shield on Arduino. What would be the first thing you want to do with it? Send out GPS cordinates as text (SMS)?

  • Insert an activated SIM Card to the SIM Socket (K5), provided on the bottom side of the shield.
  • Also insert a microSD card in the SD card slot
  • Adjust the slide switch as per convenience
    • USB – GSM modem communicates with the PC directly without an ATmega328 on your Uno,
    • Arduino – GSM modem communicates with the ATmega328 on your Uno)
  • Copy the given code and paste it in a new sketch on your Arduino IDE. Compile and burn it to your Arduino
  • Before stacking the shield to your Arduino, let the SIM get registered to the network
  • When GPS modem gets fixed (3D LED turns off), you will receive the GPS cordinates of your location as text message and also the same will be written to SD card as text file

*NOTE: Kindly note that the quad band variants of the shield comes with SIM900 and SIM800, whereas SIM900A is the dualband version. The Bluetooth connectivity and USB debug features are available on the SIM800 variant only. Certain features such as display interface, PWM output etc requires customization of the firmware.


Shop with us

Leave a Reply

Your email address will not be published. Required fields are marked *


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=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">