Skip to content

v2.1.1 - Text Command Protocol Default (2026-01-01)

What Changed?

This release establishes text command protocol as the default across all firmware builds. The human-readable text-based interface is now enabled by default, making development and testing more accessible. Binary protocol (v0) remains available for backward compatibility through explicit configuration.


What's New

Configuration Change: Text Command Protocol Default

What it does: Text command protocol is now the default build configuration across all firmware profiles (v0, v1, v2). Human-readable commands are available immediately without special compilation flags.

How to use it: Simply build and upload the firmware - text commands are automatically enabled. No configuration changes needed for development and testing workflows.

How to revert to binary protocol (if needed):

Override via platformio.ini build flags:

build_flags =
    ...
    -DENABLE_TEXT_COMMAND=0

Or via command line:

PLATFORMIO_BUILD_FLAGS="-DENABLE_TEXT_COMMAND=0" pio run -t upload

Installation

Quick Start

# Get the release
git checkout v2.1.1

# Build and upload
task upload

# Verify text commands are working
task monitor

After startup, you should see the device ready to accept text commands like HELP, STATUS, GET_VERSION, etc.


What's Different from the Last Version?

✅ Added

  • Text command protocol now enabled by default in include/config.h (ENABLE_TEXT_COMMAND=1)
  • Comprehensive documentation updates clarifying text commands as the development default

🔧 Changed

  • Default behavior: All builds now compile with text command support (human-readable interface)
  • Configuration hierarchy: Base platformio.ini now sets ENABLE_TEXT_COMMAND=1, inherited by all profiles
  • v0 profile: Explicitly disables text commands (-DENABLE_TEXT_COMMAND=0) for legacy binary protocol
  • Documentation: Updated config.h comments to reflect text commands as default, binary as legacy

â„šī¸ No Breaking Changes

  • Binary protocol support remains available via build flag override
  • All existing code and APIs are unchanged
  • Configuration management and command handlers unaffected

Is It Safe to Upgrade?

Backward Compatible: Yes

  • Existing users can safely upgrade without any operational impact
  • Text command protocol is a strict superset of binary protocol functionality
  • Binary protocol remains available via build flag for backward compatibility
  • No changes to detection logic, hardware interfaces, or sensor data handling
  • All command handlers and response formats remain unchanged

Tests Passed

  • ✅ Builds without errors (v0, v1, v2 profiles)
  • ✅ Pre-commit checks pass (trailing whitespace, YAML/JSON, merge conflicts)
  • ✅ Text command protocol compiles by default
  • ✅ v0 profile correctly disables text commands (binary protocol)
  • ✅ Configuration inheritance works correctly across all profiles

Release Details

  • Date: 2026-01-01
  • Version: v2.1.1
  • Files Changed: 3
  • platformio.ini - Added base ENABLE_TEXT_COMMAND=1
  • include/config.h - Changed default to ENABLE_TEXT_COMMAND=1
  • CHANGELOG.md - Auto-generated by commitizen
  • Commit Hash: acbbb5a (bump: version 2.1.0 → 2.1.1)
  • Type: PATCH (Configuration/documentation update)

Next Steps

  • Continue expanding text command handler coverage for additional hardware modules
  • Consider making unified device response protocol (ENABLE_DEVICE_RESPONSE=1) the default in a future release
  • Maintain binary protocol support through explicit configuration for legacy deployments