Birdie!
TL;DR
- Real-time golf swing tracking system with ESP32 and motion sensors
- Live web dashboard with charts and remote control capabilities
- Helps golfers develop muscle memory and consistent swing mechanics
Inspiration
Golf is a sport that requires precise technique and muscle memory. Traditional golf training relies heavily on visual feedback and instructor guidance, but many golfers struggle to develop consistent swing mechanics.
We were inspired to create a system that provides tactile feedback to help golfers feel their swing strength and develop better muscle memory. The idea was to make golf training more accessible and effective by providing real-time haptic feedback that correlates with swing performance.
What it does
Our system is a real-time golf club motion tracking system with haptic feedback that:
- Tracks swing motion using an ESP32-S3 microcontroller with MPU6050/MPU9250 motion sensors
- Analyzes swing strength by measuring backswing angle and gyroscope data
- Provides haptic feedback through a brushless motor that vibrates proportionally to swing strength
- Displays real-time data on a web dashboard with live charts and swing analysis
- Enables remote control of haptic feedback intensity through a web interface
The system helps golfers develop muscle memory by providing immediate tactile feedback about their swing strength, making it easier to achieve consistent swing mechanics.
How we built it
Hardware
- ESP32-S3 N16R8 development board for sensor data collection and WiFi communication
- MPU6050/MPU9250 motion sensor for accelerometer and gyroscope data
- Brushless motor with ESC (Electronic Speed Controller) for haptic feedback
- Custom mounting system to attach sensors and motor to golf club
Software
- Arduino C++ code for ESP32 with real-time sensor data collection and swing analysis
- Python Flask server with WebSocket support for real-time data processing
- Web dashboard with live data visualization using Chart.js and Socket.IO
- Swing analysis algorithms that calculate backswing angle and correlate it with haptic intensity
- WebSocket communication between server and ESP32 for haptic control
Key Features
- Real-time sensor data collection at 20Hz
- Swing strength calculation based on gyroscope integration
- Proportional haptic feedback (0–100% intensity)
- Live web dashboard with charts and controls
- Remote haptic feedback control
Challenges we ran into
- Sensor Calibration: Accurate motion data required extensive gyroscope calibration and filtering to remove noise and drift.
- Swing Detection: Distinguishing between actual golf swings and casual movement was challenging. Algorithms were needed to detect backswing phases and filter false positives.
- Haptic Integration: We initially attempted to drive the motor through a custom H-bridge circuit, but couldn't get it to work reliably.
- Real-time Performance: Achieving low latency between swing detection and haptic feedback meant optimizing both ESP32 code and server processing.
- Power Management: Making the system battery-powered and lightweight required careful power optimization.
- WebSocket Reliability: Ensuring stable communication between the web dashboard and ESP32 via a phone hotspot.
Accomplishments that we're proud of
- Successfully integrated real-time motion sensing with haptic feedback in a single system
- Developed accurate swing analysis algorithms that can detect and measure golf swing strength
- Created a responsive web interface with data visualization
- Achieved low-latency feedback (<100 ms)
- Built a complete end-to-end system from hardware sensors to web dashboard
- Implemented smooth haptic transitions that feel natural and proportional to swing strength
What we learned
- Motion sensor integration requires careful calibration and filtering
- Haptic feedback design must balance intensity, user comfort, and battery life
- Real-time systems demand timing and data flow optimization
- WebSocket communication is powerful for real-time control but needs robust error handling
- Golf swing analysis is more complex than expected, requiring multiple sensor inputs and sophisticated algorithms
- Sports tech UX must be intuitive and non-intrusive
What's next for Birdie!
Short-term improvements
- Enhanced swing analysis with machine learning to detect different swing types (driver, iron, putter)
- Battery optimization with sleep modes and power management
- Mobile app for easier setup and control
- Data logging to track improvement over time
Advanced features
- Multi-sensor fusion for more accurate swing analysis
- AI-powered coaching with personalized recommendations
- Social features to compare swings with other golfers
- Integration with golf simulators and training apps

Log in or sign up for Devpost to join the conversation.