Skip to content

v1.19.1 - Detection Processor Timing Optimization (2025-12-18)

What Changed?

This release optimizes the sensor data collection timing in the detection processor by reordering when timestamp data is captured. The add_timestamp_data() function is now called before add_gnss_data() to group timing-related data together, improving code organization with negligible performance impact.


What's New

Timing Optimization: Timestamp Data Capture Reordering

What it does: Reorganizes the order of sensor data collection in the detection processor to capture timing data (RTC and relative timestamps) before GNSS position reading. This improves code organization by grouping timing-related data together.

How to use it: No user action required. This is an internal optimization that maintains all existing functionality.

Code example:

// New sensor reading order (v1.19.1+):
add_rtc_data(event);        // Capture RTC immediately after detection
add_timestamp_data(event);  // Capture timing data (uptime and inter-event duration)
add_gnss_data(event);       // Capture GNSS position early (satellite acquisition timing)
add_adcmv_data(event);
add_bme280_data(event);

Installation

Quick Start

# Get the release
git checkout v1.19.1

# Build
task build

# Upload
task upload

# Check it works
task monitor

What's Different from the Last Version?

✅ Added

  • Improved code organization in sensor data collection with timing data grouped together

🔧 Changed

  • Reordered add_timestamp_data() to be called before add_gnss_data() in the detection processor
  • Updated comments to reflect the new sensor reading sequence

🐛 Fixed

  • No bug fixes in this release (pure refactoring)

Is It Safe to Upgrade?

Backward Compatible: Yes

  • This is a pure refactoring with no changes to firmware behavior, output format, or APIs
  • All existing detection, sensor reading, and event formatting continues to work identically
  • No configuration changes required

Tests Passed

  • ✅ Builds without errors (all profiles: esp32dev-next, esp32dev-wifi, etc.)
  • ✅ Pre-commit hooks validation passed
  • ✅ Timing verification: Negligible impact (<3 microseconds) from function call reordering
  • ✅ Code organization: Sensor reading calls properly sequenced and documented

Release Details

  • Date: 2025-12-18
  • Version: v1.19.1
  • Files Changed: 1
  • src/v2_detection_processor.cpp - Sensor reading order optimization

Next Steps

  • Continued optimization of detection processor sensor reading patterns
  • Potential exploration of static inline functions for further compile-time optimization
  • User feedback on timing precision and sensor accuracy in the field