Skip to content

fix: daily OTA check publishes MQTT state instead of auto-installing#683

Merged
BrentIO merged 1 commit into
mainfrom
fix/682
Jun 21, 2026
Merged

fix: daily OTA check publishes MQTT state instead of auto-installing#683
BrentIO merged 1 commit into
mainfrom
fix/682

Conversation

@BrentIO

@BrentIO BrentIO commented Jun 21, 2026

Copy link
Copy Markdown
Owner

Summary

  • Removes execOTA() call from the daily FIRMWARE_CHECK_SECONDS loop; the onAvailable callback already publishes the update-available MQTT state
  • Changes elseelse if(!updateAvailable) so the "no update" MQTT publish doesn't overwrite the state that onAvailable just set when an update is found
  • Install now only happens when Home Assistant sends a command via the update/set topic (existing MQTT handler at line 4380) or a forced OTA is requested via the HTTP API (otaFirmware_checkPending() at line 3810)

Test plan

  • Daily check fires → MQTT update/state shows update available, device does not start flashing
  • HA sends do-update to FireFly/{UUID}/update/set → device downloads and installs firmware
  • Forced OTA via HTTP API still works as before
  • Daily check with no update available → MQTT update/availability = online, latest_version = current version

Closes #682

🤖 Generated with Claude Code

Removes the execOTA() call from the daily firmware check loop. The
onAvailable callback already publishes the update-available MQTT state;
the install should only start when Home Assistant sends a command via
the update/set topic or a forced OTA is requested via the HTTP API.

Closes #682

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@BrentIO BrentIO merged commit 0b18831 into main Jun 21, 2026
2 checks passed
@BrentIO BrentIO deleted the fix/682 branch June 21, 2026 20:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Daily OTA check auto-installs instead of publishing MQTT state and waiting for HA

1 participant