Pendent SOS Button for Women Along With Defence Bracelet
by jankikishorpisal in Circuits > Arduino
501 Views, 2 Favorites, 0 Comments
Pendent SOS Button for Women Along With Defence Bracelet
♦️Problem Statement:
Imagine your child walking home from school.
Suddenly, she finds herself in a dangerous situation and starts running in fear. She keeps running without knowing where she is going, until she reaches an unfamiliar place.
Now, she is alone. There is no one around to help her. She doesn’t know her location, and she has no way to contact her family or ask for help.
In such critical moments, every second matters.
This is where a smart safety system can make a life-saving difference.
Supplies
♦️Equipments:
1. Pendent SOS button for women
Battery, A9G Board GPS Tracker, Sim Card, C3 Board Microcontroller, Voltage Regulator IC, SOS
Button, On of Off Switc
2. Defence bracelet
Slab Bracelet, Cutter
Procedure
♦️Procedure:
A. Pendent SOS button for women
1. To make this project we are going to use A9G Board which comes with inbuilt GPS, GSM and built in
Battery Charging circuit
2. To give commands to this A9G Board we are using external microcontroller C3 Board.
3. To Power the above units we are using the Battery and Voltage Regulator IC
4. Also we are using SOS button and also we are using on off button
5. We are going to connect the above material as per Diagram shown above
6. We are attaching the code below where we are defining the emergency contact and the locations
module
B. Defence Bracelet
1. Any Bracelet in Market can be made Defence Bracelet
2. We Hide small cutter in that Bracelet which opens via switch. It have protection of plastic so it can
won’t harm the user
3. In the time of emergency anyone can use it till help arrives after pressing SOS button of Pendant.
Working
♦️Working:
1. Pendent SOS button for women
For example, if a girl is walking alone on the road and feels someone is following her or if she feels
unsafe in any condition she can press the SOS button on this pendant for five seconds. Then her
current location will be sent to the person whose number we will select in code also they will receive
our call too so they can hear whats going on there and react accordingly. She can call them for
immediate help using this pendant.
2. Defence Bracelet
As per the above condition for Pendant she called her parents or police for help but in meantime, to
tackle that middle time till the help arrives she can use this Defence Bracelet for her protection. This
Bracelet will have cutter hidden inside it, which she can use for defence until the help arrives.
Using This Code, the System Works Effectively
♦️Using this code, the system works effectively
#include "WiFi.h"
#define SOS D3
#define SLEEP_PIN D2 // Make this pin HIGH to make A9G board to go to sleep mode
boolean stringComplete = false;
String inputString = "";
String fromGSM = "";
int c = 0;
String SOS_NUM = "+91xxxxxxxxxx";
int SOS_Time = 5; // Press the button 5 sec
bool CALL_END = 1;
char* response = " ";
String res = "";
void setup()
{
// Making Radio OFF for power saving
WiFi.mode(WIFI_OFF); // WiFi OFF
btStop(); // Bluetooth OFF
pinMode(SOS, INPUT_PULLUP);
pinMode(SLEEP_PIN, OUTPUT);
Serial.begin(115200); // For Serial Monitor
Serial1.begin(115200, SERIAL_8N1, D0, D1); // For XIAO C3 Board
// Waiting for A9G to setup everything for 20 sec
delay(20000);
digitalWrite(SLEEP_PIN, LOW); // Sleep Mode OFF
Serial1.println("AT"); // Just Checking
delay(1000);
Serial1.println("AT+GPS = 1"); // Turning ON GPS
delay(1000);
Serial1.println("AT+GPSLP = 2"); // GPS low power
delay(1000);
Serial1.println("AT+SLEEP = 1"); // Configuring Sleep Mode to 1
delay(1000);
digitalWrite(SLEEP_PIN, HIGH); // Sleep Mode ON
}
void loop()
{
//listen from GSM Module
if (Serial1.available())
{
char inChar = Serial1.read();
if (inChar == '\n') {
//check the state
if (fromGSM == "OK\r") {
Serial.println("---------IT WORKS-------");
}
else if (fromGSM == "RING\r") {
digitalWrite(SLEEP_PIN, LOW); // Sleep Mode OFF
Serial.println("---------ITS RINGING-------");
Serial1.println("ATA");
}
else if (fromGSM == "ERROR\r") {
Serial.println("---------IT DOESNT WORK-------");
}
else if (fromGSM == "NO CARRIER\r") {
Serial.println("---------CALL ENDS-------");
CALL_END = 1;
digitalWrite(SLEEP_PIN, HIGH);// Sleep Mode ON
}
//write the actual response
Serial.println(fromGSM);
//clear the buffer
fromGSM = "";
} else {
fromGSM += inChar;
}
delay(20);
}
/ read from port 0, send to port 1:
if (Serial.available()) {
int inByte = Serial.read();
Serial1.write(inByte);
}
// When SOS button is pressed
if (digitalRead(SOS) == LOW && CALL_END == 1)
{
Serial.print("Calling In.."); // Waiting for 5 sec
for (c = 0; c < SOS_Time; c++)
{
Serial.println((SOS_Time - c));
delay(1000);
if (digitalRead(SOS) == HIGH)
break;
}
if (c == 5)
{
//------------------------------------- Getting Location and making Google Maps link of it
digitalWrite(SLEEP_PIN, LOW);
delay(1000);
Serial1.println("AT+LOCATION = 2");
Serial.println("AT+LOCATION = 2");
while (!Serial1.available());
while (Serial1.available())
{
char add = Serial1.read();
res = res + add;
delay(1);
}
res = res.substring(17, 38);
response = &res[0];
Serial.print("Recevied Data - "); Serial.println(response); // printin the String in lower character
form
Serial.println("\n");
if (strstr(response, "GPS NOT"))
{
Serial.println("No Location data");
}
else
{
int i = 0;
while (response[i] != ',')
i++;
String location = (String)response;
String lat = location.substring(2, i);
String longi = location.substring(i + 1);
Serial.println(lat);
Serial.println(longi);
String Gmaps_link = ( "http://maps.google.com/maps?q=" + lat + "+" + longi);
//http://maps.google.com/maps?q=38.9419+-78.3020
//------------------------------------- Sending SMS with Google Maps Link with our Location
Serial1.println("AT+CMGF=1");
delay(1000);
Serial1.println("AT+CMGS=\"" + SOS_NUM + "\"\r");
delay(1000);
Serial1.println ("I'm here " + Gmaps_link);
delay(1000);
Serial1.println((char)26);
delay(1000);
}
response = "";
res = "";
//------------------------------------- Calling on that same number after sending SMS
Serial.println("Calling Now");
Serial1.println("ATD" + SOS_NUM);
CALL_END = 0;
}
}
//only write a full message to the GSM module
if (stringComplete) {
Serial1.print(inputString);
inputString = "";
stringComplete = false;
}
}
When Every Second Matters
♦️When Every Second Matters
Dream a Better World – Make It Heal
Imagine… a girl or a woman suddenly finds herself in a dangerous situation.
There is no one around to help, and every second becomes critically important.
In such moments, this project becomes a ray of hope.
Through a pendant SOS button and a defence bracelet, it provides immediate access to help during emergencies.
This project is not just about technology,
but a meaningful effort to build a sense of safety, confidence, and trust.
Because safety is not a choice… it is a right.