Project Details

ESP32 with Teensy 3.6

Multi-Sensor Fusion with FreeRTOS

Developed a real-time multi-sensor data acquisition system using an ESP32 microcontroller and FreeRTOS. The project simulates 3D printer chamber monitoring by fusing data from an IMU (100Hz), light sensor (0.5Hz), and environmental sensor (1Hz), all sharing a single I2C bus. Implemented task-based architecture with five concurrent FreeRTOS tasks, utilizing mutexes to prevent I2C bus collisions and serial output corruption. Successfully debugged priority inversion, task starvation, and interrupt latching issues through timing analysis of CSV-logged data.

Project Information

  • Category: Personal Project
  • Technologies Used: FreeRTOS, ESP32, I2C Protocol, Hardware Interrupts, Mutex Synchronization, UART Logging, Python Data Analysis, Arduino IDE
  • Project Links:
  • GitHub