Inspiration
I was on the stair master brainstorming ideas when I remembered a moment with my friends: one friend called out another for having stinky feet. He wears flip-flops and takes his shoes off everywhere — and he had no idea.
That's when it clicked: most people can't smell themselves. Our noses get used to our own smell ("nose blindness"), so we're often the last to know.
For some people it's even harder. Many people lost some or all of their sense of smell after getting COVID. I have a friend who can barely smell anything unless he sniffs really hard and really close — so he'd never know if his shoes smelled until someone told him. The first time you find out is usually an awkward moment in front of others, and it can quietly change the impression people have of you.
I wanted to build a private, kind way to check — before anyone else notices.
What it does
SniffCheck is a little cube you place over a shoe or sock. Inside is a gas sensor that "sniffs" the air. It compares the reading to clean air and turns it into a Stink Score from 0 to 100:
- 🌸 Fresh, 🤔 Hmm…, 😬 Stinky, or ☣️ Biohazard
- A buzzer beeps when it's stinky, so you get an alert even without looking
- A web app shows a live, color-changing meter
- With one tap, Claude gives 3 friendly, personal tips based on your score, never shaming, a little funny
- You can ask Claude follow-up questions, like "What socks should I buy?" or "How do I clean my shoes?"
- A Recalibrate button re-learns clean air anytime, so it stays accurate
How I built it
- Arduino UNO R4 WiFi with a Grove Base Shield
- Grove Air Quality Sensor to detect odor gases, and a Grove Buzzer for alerts
- The Arduino learns what clean air smells like, then measures how much higher the air near the shoe is. The clean-air baseline self-corrects if the air gets cleaner
- A web app (HTML/JavaScript) reads the sensor live over USB using Web Serial
- The Claude API generates personalized tips and answers follow-up questions
- A 3D-printed cube case with a pixel-sock logo, designed and printed at the hackathon
Challenges I ran into
This was my first hackathon and my first time coding. I had never wired hardware, used the Arduino IDE, or 3D printed anything. My first board's cable didn't fit my Mac, I had to learn how a gas sensor turns smell into numbers, and I hit compile errors along the way.
Testing taught me a lot: leftover hand sanitizer near the sensor once made it think alcohol was "clean air," so real smells read as Fresh. I fixed it by making the baseline self-correct and adding a Recalibrate button. My 3D-printed cube also diluted the smell, so I tuned the sensitivity to match the case.
Accomplishments that I'm proud of
It actually works! In testing, clean air read about 33 and a worn sock jumped to about 68 — the meter and buzzer react live, and Claude gives tips that match the score.
What I learned
How gas sensors work, why calibration matters, how to connect hardware to a web app, and how to use AI to build when you're a beginner.
What's next for SniffCheck
A smarter sensor trained on real foot-odor samples, so other smells like food or perfume don't cause false readings. Then a small keychain or shoe-rack gadget that connects to your phone over Bluetooth, with history tracking, so anyone, especially people with smell loss, can keep an eye on their shoes over time.
Built With
- 3dprinting
- anthropic
- arduino
- bambustudio
- claude
- css
- grove
- html
- javascript
- webserial
Log in or sign up for Devpost to join the conversation.