SMS Box project using PIC16F877A Microcontroller

This device acts as interface between your microcontroller project and a GSM phone. It handles all modem data communication between the GSM phone and your micro-project. The best thing is that it decodes PDU into TEXT on the fly!

You can easily SMS-enable your any project without need for learning AT commands and parsing complicated data when talking to AT modem inside the phone.


UPDATE: Source code is now available for download!

If you ever wanted to connect a GSM phone to your microcontroller project you would need to know it’s AT command set, use serial communication, parse all kinds of data to extract what you really need, handle communication errors and all sorts of other stuff. Most of AT commands are standard for every phone but not every phone supports SMS texting in ASCII mode («TEXT-MODE»), instead they use PDU-MODE.
If every phone was like eg. Nokia 6210 life would be pretty nice. Just build a cable to enable its F-BUS ( and that’s it, you can start using SMS messages in text-mode. Other cheaper phones such as Siemens C/M35, S25 and many Ericsson phones do not support text-mode for SMS messaging. Instead, they can only be used in pdu-mode ( The good thing about them is that they are very cheap and do not require any external cables for initialization. They have their RS232 (TX, RX and GND) port and that’s it – you are ready to talk to the modem inside it.

So what do I need SMS Box! for and why did I build it? The answer is pretty simple, I guess… In the past few years I was playing around with building SMS Controller projects for home/car – automation. First there was a «GSM Kontroler v1» with 6 relay-outputs using Siemens S25. It worked great but only for my local GSM – network. It used PDU mode and didn’t decode it, it read it as it was. Okay, the second version (4 digital inputs, 4 relay outputs) used Mitsubishi Trium Mars (this little baby is surprisingly great and does support text-mode for SMS, I just love its firmware). Anyway I found out that it was nowhere available to buy anymore, so that’s the end of version 2, tough luck.
The third version used DLR-3P Nokia phones and it’s still a great little device. It’s working at many locations doing some great stuff such as controlling water level in a pool at one location, resetting many wireless access points, controlling ham-radio repeaters and it’s used as car-alarm (sms and call notify to car owner). I suggest building this device if you ever need it.

The nasty thing about all of these projects above is that I had to re-write the firmware for my microcontroller as 99\% phones return different answer for the same command issued to it. All of this just for sake of additional few commands added to the device and use of another phone that supports text-mode SMS. I do not need to mention that Nokia 6210 is also pretty hard to find and/or is still quite expensive as well as the GSM modems that could replace all this talk about PDU and TEXT modes.


For more detail: SMS Box project using PIC16F877A Microcontroller

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us: