@nilesh just add some delay between two massege
I modified your code check it
const int Main1 = 8;
const int Main2 = 9;
const int Store1 = 7;
const int Store2 = 10;
bool i = false;
bool j = false;
bool k = false;
bool l = false;
void setup()
{
Serial.begin(9600);
pinMode(Main1, INPUT);
pinMode(Main2, INPUT);
pinMode(Store1, INPUT);
pinMode(Store2, INPUT);
digitalWrite(Main1, LOW);
digitalWrite(Main2, LOW);
digitalWrite(Store1, LOW);
digitalWrite(Store2, LOW);
delay(1000);
}
void loop()
{
sensor1();
sensor2();
}
void sensor1()
{
if (digitalRead(Main1) == HIGH && digitalRead(Main2) == LOW && i == false)
{
Serial.println("OK");
delay(1000);
Serial.print("AT+CMGF=1\r\n");
delay(500);
Serial.print("AT+CMGS=\"");
Serial.print("+91-----------");// first number
Serial.print("\"\r\n");
delay(2000);
Serial.print("Main gate closed");
Serial.write(0x1A);
delay(5000);
Serial.print("AT+CMGS=\"");
Serial.print("+91-----------");// Second number
Serial.print("\"\r\n");
delay(2000);
Serial.print("Main gate closed");
Serial.write(0x1A);
delay(1000);
i = true;
j = false;
}
if (digitalRead(Main2) == HIGH && digitalRead(Main1) == LOW && j == false)
{
Serial.println("OK");
delay(1000);
Serial.print("AT+CMGF=1\r\n");
delay(500);
Serial.print("AT+CMGS=\"");
Serial.print("+91---------------");//first number
Serial.print("\"\r\n");
delay(2000);
Serial.print("Main gate Open");
Serial.write(0x1A);
delay(5000);
Serial.print("AT+CMGS=\"");
Serial.print("+91--------------"); second number
Serial.print("\"\r\n");
delay(2000);
Serial.print("Main gate Open");
Serial.write(0x1A);
delay(1000);
j = true;
i = false;
}
}
void sensor2()
{
if (digitalRead(Store1) == HIGH && digitalRead(Store2) == LOW && k == false)
{
Serial.println("OK");
delay(1000);
Serial.print("AT+CMGF=1\r\n");
delay(500);
Serial.print("AT+CMGS=\"");
Serial.print("+91-----------");// first number
Serial.print("\"\r\n");
delay(2000);
Serial.print("Store room is closed");
Serial.write(0x1A);
delay(10000);
Serial.print("AT+CMGS=\"");
Serial.print("+91-----------");// second number
Serial.print("\"\r\n");
delay(2000);
Serial.print("Store room is Closed");
Serial.write(0x1A);
delay(1000);
k = true;
l = false;
}
if (digitalRead(Store2) == HIGH && digitalRead(Store1) == LOW && l == false)
{
Serial.println("OK");
delay(1000);
Serial.print("AT+CMGF=1\r\n");
delay(500);
Serial.print("AT+CMGS=\"");
Serial.print("+91-----------");// first number
Serial.print("\"\r\n");
delay(2000);
Serial.print("Store room is Open");
Serial.write(0x1A);
delay(5000);
Serial.print("AT+CMGS=\"");
Serial.print("+91-----------");// Second number
Serial.print("\"\r\n");
delay(2000);
Serial.print("Store room is Open");
Serial.write(0x1A);
delay(1000);
l = true;
k = false;
}
}
thanks