Project
PalmPulse
Acoustic detection of red palm weevil infestations from a phone recording.
Input
Phone audio recording
Transform
Spectrogram → DenseNet inference
Output
Infestation risk + alert
Hackathon evaluation
~92%
Selection
Global finalist
Red palm weevils hollow out palm trees from the inside, and by the time the damage is visible it's often too late. But the larvae are noisy. PalmPulse is a mobile app that listens: you record a short clip near a tree, and a model tells you whether it hears an infestation. We built it for the Intelligent Planet Hackathon and took it to the finale in Dhahran, Saudi Arabia.
The problem
Early detection is the whole game. If a cheap phone recording can flag an infested tree before external symptoms appear, you can act while intervention is still useful. The technical question: can you turn a short, noisy field recording into a reliable signal?
My role
I worked with a team of finalists, including Faisal, who I met at Berkeley, and Sushant Pangeni. My contribution centered on the mobile frontend (structuring the React Native / Expo app) and the data-and-model pipeline, plus collaborating on model research and the final demo. This was a team project, not a solo build.
The product
- 01Phone records a short acoustic clip (with an optional external-mic concept).
- 02Audio uploads to Firebase.
- 03The clip is converted to a spectrogram.
- 04The spectrogram is classified at an inference endpoint (Vertex AI).
- 05The detection result and scan metadata are stored and can drive alerts.
Framing the audio as an image problem is what made the model tractable in a hackathon timeframe. We classified the spectrogram, not the raw waveform.
Recovering from a weak first model
Our first approach used hand-built feature vectors and topped out around the 60% range, which was not good enough to trust. Under deadline pressure we did the thing that actually mattered: we read research, found better data sources (including recordings associated with USDA and team research), and switched to a DenseNet-style image classifier over generated spectrograms.
First approach
~60%
Hackathon evaluation
~92%
Result
Did not win
Architecture
React Native + Expo on the client; Firebase for auth, storage, and Firestore; Cloud Functions and Google Cloud / Vertex AI for inference; Python for the spectrogram + model pipeline; BigQuery for analytics. The stack was chosen for speed of integration, not novelty. The constraint was a working end-to-end system by demo day.
What I take from it
The most valuable lessons weren't about weevils. Building under extreme time pressure taught me to prioritize a credible working system over an impressive but shallow demo, and recovering from the weak first model taught me that reading research and changing direction is a skill, not an admission of failure. Doing it with people I'd just met, in a country I'd never visited, made it the experience I'd repeat first.
Status
Live demo at palmpulse.shauryav.com. There's a longer, more personal account of the trip in my write-up of the hackathon.
Related work
