Skip to content

v1.8.1 - Build Flag Naming Refactor (2025-11-23)

What Changed?

This release renames the OUTPUT_FORMAT build flag to STREAM_FORMAT for improved clarity and consistency. The new name better describes the flag's purpose: controlling the serial stream output format for sensor data. All functionality remains identical; this is a naming-only refactor that affects build configuration and documentation.


What's New

Naming Improvement: STREAM_FORMAT Flag

What it does: The build flag previously named OUTPUT_FORMAT is now called STREAM_FORMAT. This change clarifies that the flag controls the serial stream output format for sensor detection events (SSV, TSV, CSV, or JSONL).

How to use it: Update your build commands to use the new flag name:

# Old (v1.8.0 and earlier)
PLATFORMIO_BUILD_FLAGS="-DOUTPUT_FORMAT=3" pio run -e esp32dev-release

# New (v1.8.1 and later)
PLATFORMIO_BUILD_FLAGS="-DSTREAM_FORMAT=3" pio run -e esp32dev-release

Configuration update:

If you were using custom build flags, replace OUTPUT_FORMAT with STREAM_FORMAT:

# platformio.ini
[env:custom]
build_flags =
    -DSTREAM_FORMAT=1    # Changed from OUTPUT_FORMAT=1
    -DENABLE_BME280=1

Installation

Quick Start

# Get the release
git checkout v1.8.1

# Build (default SSV format)
task build

# Upload to device
task upload

# Monitor output
task monitor

What's Different from the Last Version?

✅ Added

  • Updated documentation in CLAUDE.md with new flag name
  • Updated README.md build flags section

🔧 Changed

  • Renamed OUTPUT_FORMAT build flag to STREAM_FORMAT across all source code
  • Updated all preprocessor directives (#if OUTPUT_FORMAT#if STREAM_FORMAT)
  • Updated platformio.ini configuration for all three build profiles (release, debug, dev)
  • Updated all documentation references and examples
  • Improved clarity of flag purpose in comments and docstrings

🐛 Fixed

  • None (this is a naming refactor only)

Is It Safe to Upgrade?

Backward Compatible: ✅ Yes (with build flag update required)

  • All functionality is identical; only the build flag name changed
  • Default behavior (STREAM_FORMAT=0 SSV output) is unchanged
  • Users with custom build scripts need to update OUTPUT_FORMATSTREAM_FORMAT
  • No changes to firmware behavior, detection logic, or sensor data output values

Tests Passed

  • ✅ Builds without errors (all three profiles: release, debug, dev)
  • ✅ All STREAM_FORMAT values (0-3) compile correctly
  • ✅ Binary size unchanged from v1.8.0
  • ✅ Documentation updated consistently across all files
  • ✅ Build flags properly propagated to all modules

Release Details

  • Date: 2025-11-23
  • Version: v1.8.1
  • Files Changed: 9
  • Commit: dd127b8 (refactor(naming): rename OUTPUT_FORMAT to STREAM_FORMAT for clarity)

Next Steps

  • Continued firmware stability improvements
  • Potential WiFi module enhancements (v1.8.0+ feature)
  • Performance optimizations for event detection
  • Enhanced sensor calibration support