Inspiration
We wanted to build something that could help a person get support during a potentially unsafe situation, especially when they may not be able to reach their phone or clearly ask for help. We decided to make a watch prototype because it is a discreet, wearable throughout the day, and can stay close to the user without requiring them to actively open the app.
What it does
Sending Stone combines a 3D-printed wearable watch with a companion mobile app. The watch captures the audio and other sensor data, which can be transcribed and evaluated by a trained model for potentially concerning language patterns.
The companion app is presented as an AI-assistant-chat interface. Behind that interface, the wearer can set up a safety plan with regular check-ins, add and manage trusted contacts, select alert preferences, test an alert flow, and review recent activity.
The system treats model output as a potential risk indicator rather than a diagnosis of abuse or an automatic instruction to contact authorities.
How we built it
We initially considered using a camera to recognize physical escalation, but decided it would be too visible and introduce unnecessary privacy and safety risks. We shifted to a 3D-printed watch prototype that captures audio and other sensor inputs instead.
We connected the wearable to a pipeline that transcribes captured audio and passes the text to a trained model for analysis of potential harm-related language. We then built a companion app in SvelteKit and Tauri, with SQLite for local persistence.
The app uses an AI-assistant-style chat interface so it does not immediately appear to be a safety or reporting tool. It serves as the interface between the wearable's analysis and the user's preconfigured support plan, while keeping prototype data stored locally on the device.
Challenges we ran into
We faced both hardware and data constraints. The hardware we received did not include the microphones we expected, so we had to source replacement parts locally and revise the prototype's scope. We also could not find an appropriate public dataset for training on domestic-violence or coercive-control language.
To demonstrate our pipeline, we trained the model on a public hate-speech tweet dataset. This allowed us to test audio transcription and language classification, but it is not trained to identify domestic violence and abuse.
Connecting the hardware, transcription pipeline, model, and companion app into one working system was one of the most difficult parts of the project. We ran into repeated integration issues throughout development, but ultimately got the core workflow working.
Accomplishments that we're proud of
We are proud that we built a working prototype for a problem we care about. We combined a 3D-printed watch, audio transcription, an ML analysis pipeline, and a complain app into one safety-planning workflow.
We are also proud that the project keeps the user in control: the system can flag possible concerns, but the wearer chooses their contacts, plan, and alert preferences.
What we learned
We leaned that building the model is only one part of a safety-focused project. Context matters: language alone cannot determine whether someone is experiencing abuse, and a model can only flag possible concerns, not make decisions for the user.
We also learned how difficult it is to find appropriate data for sensitive topics and connect hardware, transcription, ML, and an app in real time. We had to adjust our scope, test each piece separately, and adapt quickly as problems came up.
What's next for Sending Stone
- Evaluate trigger reliability and false positives using consent-based, representative data.
- Explore custom on-device trigger models and configurable detection behavior.
- Improve safe, private event handling and make data retention and sharing choices clear to users.
- Validate the companion app workflows and device connection across target platforms.
Log in or sign up for Devpost to join the conversation.