Skip to content

v1.19.2 - ArduinoJson API Modernization (2025-12-18)

What Changed?

This release updates the ArduinoJson library API calls to use the modern recommended patterns, eliminating compiler warnings during build. The changes maintain identical functionality while ensuring compatibility with ArduinoJson 7.4.2 and beyond. All tests pass with zero functional changes.


What's New

Maintenance: ArduinoJson API Update

What it does: Replaces deprecated ArduinoJson 7.x API methods with their modern equivalents. This eliminates compiler warnings that appeared during build without changing any runtime behavior.

How to use it: Simply build and upload as normal. Users will see a clean build without warnings.

Code example:

// Before (deprecated)
JsonObject thresholds = payload.createNestedObject("thresholds");

// After (modern)
JsonObject thresholds = payload["thresholds"].to<JsonObject>();

Installation

Quick Start

# Get the release
git checkout v1.19.2

# Build
task build

# Upload
task upload

# Check it works
task monitor

What's Different from the Last Version?

✅ Added

  • (None - maintenance release)

🔧 Changed

  • Updated createNestedObject() calls to [key].to<JsonObject>() in status.cpp (3 locations)
  • Updated createNestedArray() call to [key].to<JsonArray>() in usage.cpp (1 location)
  • Updated createNestedObject() call to add<JsonObject>() in usage.cpp (1 location)

🐛 Fixed

  • Eliminated ArduinoJson deprecation warnings in command handlers

Is It Safe to Upgrade?

Backward Compatible: Yes

  • This is a maintenance release with zero functional changes
  • All detection and sensor functionality remains identical
  • Build output is identical except for elimination of warnings
  • No changes to serial protocol, commands, or data structures

Tests Passed

  • ✅ Builds without errors (clean output, no warnings)
  • ✅ RAM usage: 31.3% (102,672 / 327,680 bytes)
  • ✅ Flash usage: 27.6% (361,885 / 1,310,720 bytes)

Release Details

  • Date: 2025-12-18
  • Version: v1.19.2
  • Files Changed: 2 (src/command/status.cpp, src/command/usage.cpp)
  • Commit: 9149f3e - refactor(arduinojson): update deprecated createNestedObject/createNestedArray API

Next Steps

  • Continued monitoring for deprecated API patterns in other command handlers
  • Potential future ArduinoJson version upgrades will benefit from these changes
  • See roadmap for upcoming feature development