SMS Based Voting System – AVR GSM Project using ATmega32 microcontroller

gsm based voting system project

Hi friends !
Here I am showing a microcontroller based project called the “GSM Based Voting System“. Using this system you can ask your users to vote for any of the four options. Four available options are identified by a letters ‘A’, ‘B’, ‘C’ and ‘D’. User can vote for any option by sending a text message to the mobile number.
For example if you want to create a poll like this.
Which is your favorite phone brand?
A: Nokia
B: Apple
C: Samsung
D: L.G.
So your user can vote for any of the four brands by sending a message like this
where x is the choice he/she wish to vote for. For example if they want to vote for Nokia, then they should send a message like this :
The number of vote received for each option is shown in real time on the LCD Module. The votes are stored in the internal EEPROM of the AVR so they are not lost on power failures. That means even if you switch off the device and switch it on after few days (or few years!) it will remember the votes !

gsm based voting system project

Schematic for the Project

The project is based around AVR ATmega32 microcontroller which is connected to a 16×2 LCD Module and a SIM300 GSM Module. We have used xBoard 2.0 development board to accelerate our development process. It is a ready made ATmega32 board with built in 16×2 LCD Module and many other common peripherals. So if you are working with xBoard 2.0 then you only need to connect the GSM Module. It involves connecting only three wires!
We have made the prototype using xBoard development board because it has ATmega32 core circuit, 5v power supply circuit and the LCD module.

atmega32 gsm module thumb

After completing the connection, power up xBoard 2.0 using a 12v 500 ma DC adaptor. And program the board with the HEX file for the project(download available at the end of article). Then insert a SIM card in SIM300 module and power it up using a 12v 2A DC Adaptor. Restart the xBoard 2.0 using its reset button.
Here are some links for your help.

Source Code for the Project

#include <avr/io.h>
#include <util/delay.h>
#include <avr/eeprom.h>
#include "lib/lcd/lcd.h"
#include "lib/sim300/sim300.h"

void Halt();  void Reply(const char *num,uint8_t stat);

The source code is written in C language and compiled using the avr-gcc compiler with the help of latest Atmel Studio 6 IDE. The source code is dependent on the following libraries.

Read more: SMS Based Voting System – AVR GSM Project using ATmega32 microcontroller 

Leave a Comment

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