Progress Update
- Algorithm Development:
- Implemented smoothing algorithms and moving averages to reduce noise in the incoming data, making it more suitable for analysis.
- Developed a thresholding algorithm that uses pitch changes from the device to detect footstrikes. By analyzing variations in pitch, the system can more accurately identify footstrikes.
- Hardware and System Updates:
- Successfully developed an MVP (Minimum Viable Product) for one shoe, demonstrating key functionalities for motion sensing.
- Integrated the Yost IMU into the system using HSPI, enabling accurate motion data capture.
- Deployed FreeRTOS on the ESP32 to achieve efficient multitasking and real-time performance.
- Operationalized an SD card module using SPI (VSPI) on the ESP32 for secure data storage of recorded motion metrics.
Challenges Faced
- Algorithm Optimization:
- Balancing the smoothing and moving average algorithms to ensure noise reduction without distorting essential data features needed for footstrike detection.
- Threshold Calibration:
- Determining the optimal threshold values for pitch changes to reliably detect footstrikes while minimizing false positives or missed detections.
- MVP Testing:
- Ensuring the integrated hardware and algorithms perform seamlessly during real-world demos.
Key Achievements
- Algorithm Implementation: Smoothing and thresholding algorithms are operational and ready for validation.
- FreeRTOS Integration: ESP32 now runs FreeRTOS, enabling real-time multitasking for improved system performance.
- Hardware Integration: Successfully incorporated the Yost IMU and an SD card module for motion data capture and storage.
- MVP Development: A functional demonstration unit for one shoe is ready for testing and evaluation.
Next Steps
- Algorithm Validation:
- Test smoothing and thresholding algorithms with a larger dataset to ensure accuracy and reliability.
- Collect feedback from initial tests to refine the algorithms further.
- Integration into Application:
- Incorporate the footstrike detection feature into the main application to provide real-time insights to users.
- MVP Testing:
- Conduct extensive testing of the MVP under real-world conditions to validate system stability and data reliability.
- User Feedback:
- Gather user feedback during demos to identify areas for improvement in both hardware and software components.
Conclusion
The project has achieved a significant milestone with the development of a fully functional MVP and the integration of advanced data processing algorithms. While challenges in algorithm optimization and threshold calibration remain, the team is on track to refine and enhance the system for real-world application. Upcoming efforts will focus on validation, user feedback, and system integration to further improve accuracy, reliability, and user experience.