I have a gsm modem (sim900) connected to a Arduino Uno.
But I cannot send SMS with any normal code or standard Serial Port (pin0, pin1).
I have to use the SoftareSerial Code only with reversed pins 1, 0 to make the modem work.
Can someone point out what is wrong (hardware/software)?
My working code -
#include <SoftwareSerial.h>
SoftwareSerial SIM900(1, 0); // THIS IS THE REVERSAL I HAVE TO DO TO MAKE THINGS WORK
// BUT IT DOESN'T WORK IF I REVERSE THE HARDWARE WIRES
void setup()
{
SIM900.begin(9600);
delay(2000); // give time to log on to network.
}
void sendSMS()
{
SIM900.println("ATH"); // AT command to send SMS message
delay(1000);
SIM900.println("AT +CMGF=1"); // AT command to send SMS message
delay(1000);
SIM900.println("AT +CMGS="+919200000000""); // recipient's mobile number
delay(9000);
SIM900.println("This is a text message from an Arduino Uno."); // message to send
delay(5000);
SIM900.println((char)26); // End AT command with a ^Z, ASCII code 26
delay(100);
SIM900.println();
delay(5000); // give module time to send SMS
}
void loop()
{
sendSMS();
do
{
delay(1000);
} while (1);
}