Arduino Programming101: Text via GSM SIM900A Module

in technology •  last year  (edited)

Arduino Programming 101: Text via GSM SIM900A Module


Hello, my co-steemians! It's been a while since the last time that I posted something here on my page. I was really busy doing stuff in my work and also with the projects and thesis devices that I am making which leads me to have small time for steemit. This time I got bored and so I did something worthwhile to give justice for my time instead of just doing nothing on my bed. I do believe that this is the right time for me to start sharing to all of you, things related to embedded system especially with Arduino and on how to have fun while learning.

As for some of you, especially here in the Philippines, whenever someone gets zero load balance on their mobile phones, what would they usually do is to borrow mobile phones from their friends and in a worse situation, even their friends are out of load balance. As a resolution, one would search the net for a free-text webpage. With this project I'm sharing to all of you, you can have a grasp on how these web pages do such things in case you guys are wondering.

Things you need:

1. Microcontroller


For this project to be more dynamic and fun, an embedded system microcontroller was used which is design to be programmable to cater and do a wide range of tasks based on the objectives set. The microcontroller that I used is Arduino UNO. I used such microcontroller because of its ease of programming. Its language is an alteration of the basic language "C". Also, with the use of the internet, such microcontroller has a lot of support in the community with various programs and tips available online. Click here for you guys to be able to link with the community in case you're interested in the microcontroller that I'm using.

Also, since this microcontroller is programmable, a counterpart GUI (Graphical User Interface) shall be needed to have the program loaded into the microcontroller. An Arduino IDE can be downloaded at this link.

2. GSM Module

So for a sim card to be easily interfaced with a microcontroller and a computer, a GSM (Global System for Mobile Communications, originally Groupe Spécial Mobile) module shall be used. Basically, a GSM module is clearly the same as the mobile phones that are widely available just that, the GSM module lacks the LCD screen, touchpad, keypad and a charger.


For the simple project, a GSM SIM900A Module was used. Such module is widely used especially in the field of embedded system for its capabilities as well as its ease in interfacing and programming. For a detailed discussion and specifications of such module, kindly click this here

3. Sim Card

Last but not the least, what's needed for the project is the sim card. You can't send and receive a text message in this project without this one. It is best advised to have your sim card availed in text messaging promo to maximize its capabilities and to minimize cost.


Since the SIM900A GSM Module is compact and tiny, interfacing it with the Arduino UNO is never that hard and can be search on the web.
Source: miliohm

Although majority of the GSM Modules available in the market requires a large amount of current for transmitting and receiving of text messages and other functions, this SIM900A GSM Module was a small current consuming one. In fact, connecting it with the 5V source of the Arduino UNO is enough already to have a stable connection. Also to have a connection between these two, the receiver and transmitter of each must be cross-over for them to be able to have a 2-way communication.


The system works in a loop waiting for an input from the user and a message from anyone. For the user, it was designed to have an input with the number,message syntax. The syntax was set to be in a comma delimited setting or in CSV(comma separated value) form so that the system can adopt to other serial port sniffing programs and interface. As soon as such data is met, it will automatically set the SIM900A GSM module to transmit mode and send the corresponding text message. As soon as the job is done, it would switch to receive mode and waits until a message is received and displays it with the number of the sender.


A sample image of the interface of the Arduino IDE in which you could manipulate the codes based on the Arduino programming language and have it verified and loaded into the microcontroller.


Upon having the codes and circuit done, testing followed. As for the screenshots for documentation, i opted to hide a portion of my mobile phone numbers for secrecy and security reasons.

SIM900A GSM Module to Mobile Phone


Mobile Phone to SIM900A GSM Module



  1. This project is for tutorial and fun purposes only. It is best advised to have a separate user interface for a better and friendly usage for everyone.
  2. The codes as well as the library used for the project can be downloaded here
  3. I would appreciate constructive comments and suggestions for me to improve my skills more. If you guys want help from me, I'm happy to help and accommodate you. Just comment down! :)

Adios co-steemians!

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Make me a satellite phone for me for 1 SBD, please! Ahahahaha! Good job again, you genius. Keep posting gold.


Thanks Koi! Im planning to post blogs related to programming daily.

good read! maayoha uyy!


Thank you!

Nalipong kos codes and circuits hahahaha ayusa ani uy!

I miss being an ECE.