Skip to content

6.0.0

Pre-release
Pre-release

Choose a tag to compare

@WhyLev WhyLev released this 26 Jun 12:28

Changelog v6.0.0 (Official Release Migration)

We are thrilled to announce that the complete development cycle encompassing the recent architectural overhaul has been officially merged into the primary, official Bosch Indego integration! This milestone release consolidates extensive feature additions, critical bug fixes, security enhancements, and significant optimization work to elevate your lawn care automation experience.

🚀 Features & Improvements

SmartMowing & Calendar Management

  • Advanced SmartMowing Settings: Introduced a brand-new entity dedicated to exposing underlying SmartMowing parameters and configuration toggles directly within Home Assistant (#290).
  • Predictive Calendar Refactoring: Overhauled internal processing functions, entity attributes, and advanced mowing mode schemas. Added support for manual calendar slot selection directly within configuration profiles.
  • New Calendar Controls: Introduced the set_calendar_slot service alongside 2 new sensors dedicated to tracking calendar time slots, including full visual action editor support in the Home Assistant UI.
  • SmartMowing Control: Added a new Switch platform (put_mow_mode) to easily toggle Bosch's automated scheduling directly from Home Assistant.

Weather & Network Entities

  • SmartMowing Weather Forecast Entity: Introduced a new dedicated Weather entity to track the integrated SmartMowing weather forecast attributes directly from the Bosch API (#292).
  • Network Integration Entities: Added new network-specific diagnostic entities to monitor real-time connectivity status, signal parameters, and link data for the mower hardware (#291).

Security, PIN & Operation Control

  • Security & PIN Management: Bumped underlying hardware security handlers, adding configuration abstractions for secure PIN inputs, operation sensitivity adjustments, and explicit safety toggles (#293).

Advanced Sensors & Telemetry

  • Adaptive Stuck Detection: Implemented an intelligent stuck sensor utilizing dynamic, activity-based timeouts to minimize false positives (Normal Mowing: 60s, Border Cut: 70s, Mapping/Spot Mowing: 120s, with a 60s initial startup grace period).
  • Improved Battery Sensing:
    • Added a dedicated binary_sensor.battery_charging entity.
    • Overhauled the battery discharge sensor by converting from Ah to absolute Wh (Energy) values utilizing total_increasing and device_class: energy for seamless Energy Dashboard integration.
  • Long-Term Statistics: Added native state_class support (measurement and total_increasing) across core sensors (Battery Percentage, Lawn Mowed Size, Total Runtime) to allow historical data graphing.
  • Bosch Service Monitor: Added a brand new sensor to monitor real-time Bosch server status, optimized for handling 5xx server-side errors gracefully.
  • Lawn Mowed Size Sensor: Introduced a dedicated sensor to track completed lawn mowed percentage with an optional enablement flag.

Camera, Live Mapping & UI Enhancements

  • Intelligent Map Streaming: Implemented active-streaming detection that triggers high-frequency live map refreshes only when the mower is actively moving or cutting to save bandwidth (#282).
  • Actionable Alerts: Added button entities (IndegoAlertButton) allowing users to read or clear mower alert logs directly from the Home Assistant frontend (#282).
  • Brand Identity & Layout: Added official brand icons, logos (including standard, high-res @2x, and dark-mode variants), and moved non-critical entities into the Diagnostics category to keep main dashboards clean.
  • Documentation & Media Assets: Reorganized asset files, updated high-resolution dashboard screenshots, and integrated up-to-date links to the standalone companion Chrome Extension.

Localization & Templates

  • Multi-Language Normalization: Standardized time/frequency strings by migrating structural references from 'day' to 'days' natively across all localization profiles (German, English, Danish, French, Spanish, Italian, Dutch, Polish, Slovak, Swedish, and Norwegian).
  • User-Agent Context: Expanded comprehensive data_description entries targeting integration user_agent parameters (#279).
  • Community Standardization: Launched official repository issue frameworks (bug_report.md, feature_request.md, PULL_REQUEST_TEMPLATE.md) to streamline community contributions.

🐛 Bug Fixes

  • Alert Sensor State Reset: Resolved a critical tracking bug where the main alert binary sensor (binary_sensor.indego_*_alert) remained stuck on "Problem" after clearing faults on the physical keypad; the logic now correctly clears down to "OK" based on the API payload (#36).
  • Calendar Slot Setting Service: Refactored and fixed operational exceptions within the set_calendar_slot service call processing routines to ensure stable field mutations (#294).
  • Batch Alert Deletion: Fixed the delete_all_alerts service behavior which previously stopped after the first 10 items. The process now reliably loops through all batches provided by the Bosch API until completely wiped, backed by a 10-attempt infinite-loop safety limit.
  • Mower Activity State Mapping: Fixed an issue where the mower incorrectly showed "Docked" despite a critical error (e.g., "Wire signal lost"). The entity now properly displays ERROR when unread alerts are active.
  • JSON Integrity: Resolved syntax errors and missing closing braces ("}") within the German (de.json) translation dictionary mapping files.
  • Startup Race Conditions: Eliminated a critical AttributeError occurring during battery charging state initialization on boot, ensuring reliable entity registry loading.
  • Data Inversion & Constraints: Fixed a data tracking bug preventing the runtime_total sensor from decreasing, properly enforcing TOTAL_INCREASING behavior. Normalized state translation typography to lowercase snake_case (e.g., 'not_enabled').
  • Time Parsing Validation: Implemented rigorous validation for seconds within calendar slot configuration profiles to avoid silent failures (#40).

🛠 Technical Changes

  • Directory & Domain Restructuring: Renamed the core integration workspace folder to boschindego to strictly align with Home Assistant standard domain naming conventions.
  • Session Counter Architecture: Overhauled session tracking by implementing robust fallback state handling that restores active session counts from persisted Entity State records during system startup if remote servers are unreachable.
  • Vacuum Platform Refactoring: Modernized the core code structure for vacuum components to meet current Home Assistant architectural standards and stripped out deprecated battery attributes.
  • Home Assistant Deprecations: Patched tracking modules to drop deprecated core integration constants matching HA 2026.1 API changes (#261).
  • CI/CD Quality Automation: Restructured the .github/ tree, deploying dedicated hassfest.yml and hacs.yml GitHub Action execution routines to resolve previous manifest parsing errors and validate integration standards.
  • API Client Upgrade: Bumped the underlying API client version from 5.7.8 to 6.0.0 to leverage core backend communication enhancements.
  • Enhanced Debug Logging: Refined error capturing routines within the ten-minute polling cycle (refresh_10m) to produce human-readable logs during API connectivity issues.

👥 Contributors

A massive thank you to the maintainers who co-authored and architected this unified release:

Full Changelog: 5.7.8...6.0.0