B.O. Be Gone: A Wearable Device for Real-Time Body Odor Detection
Advisor: Ms. Rangoli
Internship Location: yellowdot.ai, Remote
Onsite Mentor: Madhav Chinta
In our fast-paced world, wearable devices have evolved from simple activity trackers to health monitors that can measure heart rate, hydration, and even blood oxygen levels. However, personal hygiene remains an area with untapped potential in wearables. One specific gap is in detecting body odor—an essential yet neglected aspect of social interactions. "B.O. Be gone" aims to develop an affordable, compact, and consumer-friendly wearable device that monitors body odor in real time. This project will leverage gas sensor technology to detect specific volatile organic compounds (VOCs) associated with body odor. By notifying the wearer, "B.O. Be gone" would offer a practical and discreet solution for managing personal hygiene, creating a new category of health-conscious wearable.
Project Blog
Week 0
Hello, my name is Sahiti and in this post, I will share the background, purpose, and initial steps of my project: Creating B.O. Be Gone: A Wearable Device for Real-Time Body Odor Detection.
Body odor is a sensitive issue that carries a social stigma, often complicating personal and professional interactions. It can negatively impact self-esteem and confidence, yet addressing it directly is considered rude or uncomfortable. While people universally want to maintain good hygiene, body odor can be difficult to monitor personally. Personal hygiene products focus on masking odor but fail to detect it early. In this project, I will create a proactive solution to this gap by providing real-time odor detection, enabling users to manage their hygiene discreetly and effectively.
Body odor detection in wearable technology remains largely uncharted, although research in other applications of gas sensing is extensive. Detecting body odor typically involves identifying specific volatile organic compounds (VOCs) in human sweat, which are produced by bacteria breaking down sweat’s organic components. Research has shown that compounds like ammonia, lactic acid, and other VOCs contribute to body odor, yet the complexity of identifying these compounds in real-time, wearable settings has proven challenging. For instance, Zhang et al. (2018) demonstrated that gas sensors could detect these compounds in sweat within lab environments. Their findings underscore the feasibility of such detection but highlight that these sensors are typically too large, sensitive, and costly for integration into compact, consumer-oriented wearables.
Electronic noses (e-noses) are one of the most promising technologies in the pursuit of wearable odor detection. E-nose systems mimic the olfactory system using an array of gas sensors to detect and identify various chemical compounds. This technology has found applications in fields as diverse as medical diagnostics, environmental monitoring, and food safety. In medicine, e-noses are being researched as diagnostic tools that can detect diseases by analyzing a patient's breath, where specific VOC patterns serve as biomarkers for conditions such as diabetes or certain cancers. This concept is highly relevant for wearable odor detection, as it demonstrates the capability of e-noses to identify distinct compounds in complex organic mixtures, such as sweat. However, e-nose technology, while promising, faces obstacles in miniaturization, affordability, and specificity for body odor applications, making it a challenge for widespread consumer adoption.
In a recent example, Righettoni et al. (2012) investigated the detection of ammonia and lactic acid in sweat using gas sensors. Their research showed that gas sensors could be highly accurate in detecting these odor-related compounds, reinforcing the potential for body odor monitoring. Nevertheless, this research remains confined to industrial and lab settings, with current devices unsuitable for the size, cost, and usability requirements of consumer wearables.
While there is a market gap for an affordable, compact odor-detecting wearable, advances in flexible and printable electronics are promising. Innovations in printable, flexible gas sensors suggest that future technology could allow for lower-cost, more accessible odor-detecting wearables. A 2020 report from ResearchGate highlights emerging trends in printed electronics that could reduce the cost and size of gas sensors, enabling their potential integration into small, portable devices like smartwatches or other wearables. If successful, these advancements could allow companies to produce compact, affordable VOC sensors specifically designed for body odor detection. However, these developments remain largely experimental, requiring further refinement before they can be practically applied in consumer devices.
In this project, I will create a wearable device that monitors body odor in real time using a compact and affordable design. The device will leverage gas sensors to detect volatile organic compounds (VOCs) associated with body odor and provide discreet alerts to users. To test its effectiveness, I will conduct controlled experiments by exposing the device to various VOC sources, simulating real-world odor intensities. I will measure its accuracy and reliability by calibrating the sensor for sensitivity and minimizing false alerts. Additionally, I plan to gather user feedback through surveys, assessing the usability, practicality, and potential impact of the device on confidence and hygiene management. By incorporating insights from wearable technology research and user data, I hope to refine the prototype into a reliable product that bridges a significant gap in personal hygiene management.
For this project, my internal advisor is Ms. Rangoli, and my external advisor is Mr. Madhav Chinta. Mr. Madhav Chinta is a VP at Yellow.ai, who offers valuable expertise in software engineering and product development.
Thank you for reading and stay tuned!
Week 1
This week, I officially began my senior project, B.O. Be Gone, a wearable device designed to detect body odor in real time. While wearable technology has advanced significantly in areas like heart rate monitoring and hydration tracking, odor detection remains largely unexplored. My goal is to develop a compact, affordable device that alerts users when volatile organic compounds (VOCs) associated with body odor reach a certain threshold, allowing for discreet and proactive hygiene management.
I started my project with a deep dive into literature and existing research on body odor detection and gas sensing technology. Body odor is primarily caused by bacterial breakdown of sweat, releasing VOCs such as ammonia and lactic acid. While gas sensors have been widely used in industrial and medical applications, integrating them into a small, wearable device presents unique challenges. Many existing electronic nose (e-nose) systems can accurately detect VOCs but are too large, expensive, or sensitive to environmental factors like temperature and humidity, making them impractical for consumer wearables.
Since I had already selected the Fermion MEMS Odor Detection Gas Sensor, my focus was on understanding its capabilities and potential limitations. I reviewed technical documentation and research papers discussing similar MEMS-based gas sensors, which confirmed their feasibility for detecting odor-related VOCs. One key insight from my research is that calibration will be crucial to ensure the sensor’s accuracy and avoid false alerts. Additionally, airflow design within the wearable casing will be important to allow consistent odor detection without interference from external environmental factors.
Looking ahead, my next steps will involve setting up the sensor with an Arduino Nano and conducting initial tests to measure its response to different odor intensities. This research-heavy first week has given me a solid foundation for moving forward with hardware development, and I’m excited to begin assembling the first prototype soon.
Stay tuned!
Week 2
Hello everyone!
Welcome back to my blog! This week, I moved from research to design by creating the 3D model for B.O. Be Gone, the wearable device that will detect body odor in real time. While last week focused on understanding the science behind odor detection and sensor technology, this week was all about bringing the hardware to life.
The design process started with mapping out the necessary components: an Arduino Nano, the Fermion MEMS Odor Detection Sensor, a battery, and space for wiring. Since this is a wrist-worn device, I needed to ensure it was compact yet functional, with enough room for airflow to reach the sensor without making the casing bulky. One of the biggest challenges was incorporating ventilation holes—these are crucial for accurate odor detection, but they also need to be positioned strategically to prevent external interference.
After multiple iterations, I finalized a 3D model with a watch-like form factor, featuring a vented casing for airflow, slots for wristband attachment, and precise cutouts for components. The next step is to 3D print the case and test how well it fits the hardware. If necessary, I’ll refine the design to improve airflow, accessibility, and durability.
This is a basic idea of how the 3D model is looking, it isn't very pretty but gives a general idea
Now that the physical design is ready, I’m one step closer to building a functional prototype. Next week, I plan to begin assembling the electronics and testing initial sensor responses. Stay tuned!
Week 3
Hello everyone, welcome back to this week's blog!
This week I finalized the circuit diagram for connecting the Fermion MEMS Odor Detection Sensor to the Arduino Nano and soldered the sensor components together. Once the hardware was set up, I built the circuit on a breadboard and tested it. After wiring everything—including the sensor, red LED, and power supply—I wrote the Arduino code on Arduino IDE to read sensor values from analog pin A0, set a threshold and control the red LED using that.
I implemented a simple threshold-based logic: when the sensor’s reading exceeded a preset value, the LED would light up to signal high odor levels. Calibration was crucial, so I ran several experiments in different conditions. In a clean environment, the sensor typically read around 300–350, while readings climbed to above 400 when exposed to sweaty, odor-laden samples. After some trial and error, I am starting to settle on a threshold, but I want to do a few more tests before deciding.
Here is a picture of the basic circuit:
Overall, the week was all about integrating the sensor with the Arduino, fine-tuning the circuit, and confirming that the code works as expected. As I start to compact the circuit more, the 3D model may change because of the dimensions, so some changes may be made... Stay tuned!
Week 4
Hello everyone, welcome back to my blog! This week, was all about refining the hardware and calibrating the sensor for my B.O. Be Gone project.
Using a simple Arduino sketch, I started logging sensor readings and noticed that the values began high—around 750—and then gradually decreased over the first few minutes.
Realizing that the sensor needs a warm-up period, I let the system run for about 30 minutes. This allowed the sensor to stabilize and provided a clear baseline for calibration. Through these tests, I determined that a threshold around 300 showed clean air, and a threshold higher than 350 tends to indicate high body odor levels, specifically for sweat-based odors, which is exactly what I need for this project. I will be doing a bit more work on confirming that though.
Overall, it was a fun week of hands-on experimentation. Seeing the circuit come together and the sensor’s readings stabilize was incredibly satisfying. I’m now more confident in the hardware setup and the calibration data, and I’m excited to move on to the next phase of the project. Stay tuned!
Week 5
Hello everyone, welcome back to my blog! This week, I focused on testing the sensor with a variety of odors to see how it reacts under different conditions. I started by exposing the Fermion MEMS Odor Detection Sensor to common fruit smells—lemons, bananas, and a few others—to get a baseline of how these odors affect the sensor’s output. The results were interesting, as the sensor showed distinct readings for each fruit, but they were clearly different from what I expect for body odor.
In parallel, I began collecting samples of sweaty items to simulate real-world body odor conditions. However, obtaining items with sweat has proven challenging...and disgusting. However, I am working hard to collect them and will have an update about that next week.
Overall, this week was an essential part of the experimentation process, helping me understand the sensor’s response to a range of smells. I’m excited to refine the calibration process further and move closer to achieving a reliable, wearable odor detection system. Stay tuned for more updates!!
Week 6
Hello everyone, welcome back to this weeks blog!
This week, I focused on testing my odor detection device using a simulated sweat solution that I prepared at home. I followed a DIY recipe—mixing distilled water, a small amount of table salt, and a few drops of vinegar—to create a synthetic sweat solution. The idea was to mimic the key components of human sweat so I could see how my sensor responds when exposed to real sweat-like odors.
During testing, I discovered that my Fermion MEMS Odor Sensor behaves qualitatively—it reliably indicates whether there’s a significant change in odor levels (high vs. low), but it doesn’t inherently tell me if the odor is “good” (like a pleasant fragrance) or “bad” (like body odor). In other words, the sensor just reacts to any potent odor in its vicinity. Even if someone were wearing perfume, if the concentration was high, the sensor would register it just as it would with sweat.
This realization prompted me to refine my approach. To better differentiate between sweat-based body odor and other types of odors, I’ve ordered additional gas sensors—specifically an ammonia sensor and a VOC sensor. Body odor is often characterized by elevated ammonia levels, so incorporating an ammonia sensor should help distinguish it from benign odors. Additionally, I’m integrating a BME sensor to measure humidity. The rationale here is simple: sweat not only produces characteristic VOCs but also adds moisture to the air. Thus, a combination of high odor readings with increased humidity is a strong indicator that the odor is from sweat rather than from a perfume.
Next week, I will be integrating the new sensors and see how the combined data will improve the specificity of my device. Stay tuned
Week 7
Hello everyone, welcome back to my blog! This week, I introduced two new sensors to the circuit—one for detecting ammonia and another for detecting VOCs (volatile organic compounds)—in addition to my existing Fermion MEMS odor sensor. The goal: to get a more nuanced and accurate picture of what’s actually in the air and better distinguish between types of odors, especially ones that could indicate sweat.
Once I wired the new sensors into the Arduino Nano and validated that they were logging clean data, I began collecting readings for different scent sources: Garlic, Vinegar, Perfume, Nail Polish Remover, etc. These samples were chosen to represent a spectrum from “body-odor-like” to “pleasant/fragrant.” I then cleaned the data—removing the warm-up period for each sensor—and visualized it using scatter plots and histograms.
To better understand how the scents clustered based on sensor readings, I applied KMeans clustering and visualized the data using PCA (Principal Component Analysis). The clusters were visibly distinct, suggesting that the combination of odor, VOC, and ammonia readings provides strong separation between scent profiles.
From there, I trained a Random Forest classifier on the data and also exported a Decision Tree model to simplify the logic. This tree now guides the behavior of the red LED on my device: if the sensor data looks more like Garlic or Vinegar (the odors are composed more sweat-like), the LED turns on. If it resembles Perfume or Nail Polish Remover, it stays off. I translated these rules into Arduino if-else logic that runs in real time.
By expanding the sensor array and integrating machine learning, my device is evolving from a basic odor detector into a smart, context-aware tool. Next week, I plan to incorporate real or synthetic sweat data into the system to push the model further toward its final purpose: detecting human body odor with accuracy and reliability.
Thanks and stay tuned!
Week 8
Hello everyone, welcome back to my blog! This week was all about getting hands-on—literally. After weeks of testing on breadboards and visualizing data on a screen, I finally began the transition from prototype to real-world-ready device.
The first big hurdle was migrating everything off the plastic breadboard. I had initially soldered header pins to the sensors and modules so they could plug into the plastic board easily—but when it came time to transfer the circuit to a metal perfboard, those headers became a problem. I had to cut off all the header pins, carefully desolder the leftover stubs, and then resolder each component directly onto the metal board. It took a lot of patience (and a little panic), but after a few failed attempts and soldering iron-induced frustration, I finally got the entire system—Arduino Nano, odor/VOC/ammonia sensors, LED, and SD card module—cleanly mounted and working.
With the hardware now on a stable perfboard, I also finalized the dimensions for the 3D-printed enclosure, which means I can begin prototyping the wearable case.
Meanwhile, I have been processing the data collected from the different scents and visualizing them to see the differences in composition. Soon, I will be collecting more data: human data! I am planning to start testing the device on different age groups, so stay tuned!
Week 9
Hello everyone! Welcome back to my blog! This week was all about bringing the device out of the lab and into the real world. Since the 3D-printed case for B.O. Be Gone is still in progress, I needed to get creative with the enclosure—and that meant going full DIY.
I repurposed a running phone armband case and paired it with an Altoids tin to build a functional, wearable enclosure. The Altoids tin houses the Arduino Nano, the three gas sensors (odor, VOCs, and ammonia), and the SD card module. I cut out vent holes on one side of the tin so the sensors could still get airflow and then strapped the whole setup into the phone armband. It fits securely under my arm and is actually more comfortable than I expected. No solder came undone, no wires pulled loose—major win.
Beyond hardware, I also took a big step toward field testing. I finalized and distributed consent forms to classmates and volunteers who are interested in participating. The form outlines how the device works, what data will be collected, and includes media release permissions in case I document the process. I’ve gotten multiple sign-offs already and plan to begin testing the device on others next week.
Stay tuned!
Week 10
Hello everyone, welcome back to my blog!
This week, I ran full human testing trials, collecting data from participants before and after gym sessions to simulate real-world sweat conditions. The device performed in wearable conditions exactly as it was designed to: collecting odor, VOC, and ammonia data, logging it to the SD card, and applying on-board logic to decide whether to activate the LED.
Once testing wrapped, I moved into the final analysis phase. I visualized the collected data, compared sweat vs. non-sweat profiles, and evaluated the device’s detection accuracy. Then I brought everything together—build process, sensor calibration, training trials, and human testing—into a scientific report.
While so much more can be done for this device, this is it for senior project. Bye everyone, and thanks for reading my blog!