Inspiration
Modern engines can fail unpredictably in industrial settings or consumer devices. Most diagnostic systems are either too complex, expensive, or not adaptable to edge devices. We wanted to create a simple, modular ML-based system that could detect abnormal patterns early—without cloud dependence.
What it does
EngineDetector collects sensor and motor data (e.g., vibration, FFT features) through an Arduino-based setup and classifies engine states like Startup, Shutdown, VibrationLow, Drift, or Interfere using both Random Forest and LSTM models. It also features a CSV-to-sequence reshaping tool, automated model evaluation, visual accuracy/loss plots, and GitHub-integrated result logging.
How we built it
Hardware: MPU6050 sensor, SG90 servo, stepper motor, Arduino UNO Data pipeline: Real-time sensor data is labeled using a terminal-based controller and logged as timestamped .csv files ML workflow: Python scripts reshape flat data into sequence windows, and train both Random Forest and LSTM classifiers Web interface (in progress): Users can simulate patterns, visualize FFT, mark transitions, export summaries, and evaluate models with outlier detection
Challenges we ran into
Managing multiple device inputs on a moving surface Building a generalized mimic pattern library for realistic simulation Ensuring model accuracy with noisy and small data samples Handling deployment edge cases: missing features, inconsistent labels, logging collisions TensorFlow installation conflicts and AVX support issues on some machines
Accomplishments that we're proud of
Fully local ML pipeline with automatic sequence reshaping and summary generation Feature auto-detection and error-resistant log parsing Integrated dual-model evaluation and accuracy comparison with .txt summaries Successfully captured multi-label time-sequenced data from a live Arduino simulation.
What we learned
Tradeoffs between time-windowed feature averaging (RF) and deep sequence modeling (LSTM) Real-world constraints in data labeling, noise filtering, and device communication The power of a clean, automated ML pipeline when working with edge-deployable systems The importance of exportable logs and summaries for reproducibility and debugging
What's next for EngineDetector
Add real-time prediction mode directly on the web interface Implement fall detection and predictive motion warnings for wearables (headphones-based echolocation module) Expand the mimic pattern library and introduce adversarial scenarios Benchmark LSTM vs. CNN vs. Random Forest on larger datasets Add OTA update capability and cloud sync options for edge deployments.
Log in or sign up for Devpost to join the conversation.