Bluetooth Connection Setup: This week, the team focused on setting up the Bluetooth connection between the IMU device and the StrideSense mobile app in Flutter. We successfully integrated the Bluetooth package and detected the IMU device. However, an issue arose where the app struggled to retrieve consistent values from the IMU. Specifically, the connection intermittently dropped before the sensor data could be fully received.
Bosch IMU Configuration: Initial configuration adjustments were made on the Bosch IMU to achieve precise and reliable sensor readings tailored to the motion requirements of the insole. This involved testing different sampling rates and sensitivity levels, configuring power management settings to optimize battery usage, and fine-tuning data transmission protocols for smoother BLE connectivity.
Kalman Filter Design: We began developing a Kalman filter to process IMU data, aiming to improve accuracy by filtering out noise. The team studied filtering principles, ran initial simulations in MATLAB to experiment with filter parameters, and started defining state equations for position, velocity, and orientation.
Noise and Drift Reduction: Steps were taken to address drift and noise in the IMU, including applying high-pass and low-pass filtering techniques and complementary filtering to correct gyroscope drift. MATLAB was used for initial error analysis and to refine drift correction algorithms.
2. Schedule Status
Slightly Behind Schedule: The unexpected Bluetooth connectivity issue has delayed our initial goal of consistently retrieving sensor values in the app. Additional time is needed to stabilize the connection before moving forward with data handling and visualization in the app. Similarly, while progress was made in configuring the IMU and developing the Kalman filter, we still need further testing and tuning for both elements to reach the required accuracy and stability.
3. Plan to Catch Up
Bluetooth Connection Debugging: The team will focus on modifying Bluetooth settings within the app and researching solutions for the disconnection issue. The goal is to achieve a stable connection that reliably retrieves sensor values by next week.
IMU Configuration and Testing: Continue optimizing the Bosch IMU configuration, specifically sampling rates, power management, and data handling protocols. These refinements aim to support consistent data quality and stability in BLE transmission.
Kalman Filter Tuning and Implementation: Using sample data, we will iteratively tune the Kalman filter’s parameters and test the filter on the ESP32 once initial parameters are verified. MATLAB simulations will assist in evaluating and refining the filtering approach before real-world testing.
4. Goals for Next Week
Fix Bluetooth Connection Instability: Resolve the current connectivity issues to achieve consistent data retrieval from the IMU device.
Data Handling Implementation in App: Once the Bluetooth connection is stable, begin implementing basic data handling to display IMU values in the app interface.
IMU Calibration and Filtering Refinements: Continue refining the Kalman filter and drift correction techniques, testing high-pass and low-pass filters to reduce noise. Further MATLAB simulations will help adjust and validate the filtering approach.
Additional Testing Scenarios: Conduct tests to evaluate Bluetooth performance in various conditions (e.g., distance, interference) and monitor the IMU’s stability under real-world use cases to inform necessary adjustments.