github SukramJ/homematicip_local 2.2.3b3

latest release: 2.2.3b4
pre-release7 hours ago

What's Changed

New Features

  • Binary Sensor Entities: Added entity descriptions for new binary sensors:
    • HmIP-SRH & HM-Sec-RHS: Added WINDOW_OPEN binary sensor for rotary handle sensors (window open detection)
    • HmIP-SWSD: Added SMOKE_ALARM and INTRUSION_ALARM binary sensors for smoke/intrusion detector

Documentation

  • README Shortened: Reduced README.md from ~1960 lines to ~140 lines. Detailed documentation moved to the new documentation site at sukramj.github.io/aiohomematic. README now contains quick start links, installation instructions, and references to full documentation.

Bug Fixes

  • Fix SSDP Import for Home Assistant 2025.2+: Updated SsdpServiceInfo import in tests from deprecated homeassistant.components.ssdp to new location homeassistant.helpers.service_info.ssdp.

Internal

  • Type Safety Improvements: Added @override decorator to 100+ methods across all entity platforms to explicitly mark methods overriding parent class methods. Added Final annotation to 15 EVENT_* constants in const.py. These changes improve code clarity and enable better static analysis.

Bump aiohomematic to 2026.1.53

New Features

  • HmIP-WRC6-230 Support (2026.1.53): Added support for HmIP-WRC6-230 (Wall-mount Remote Control 6-button 230V) as a fixed color light device.
  • Derived Binary Sensors (2026.1.52): A registry-based system now enables creation of binary sensors derived from enum data points. New calculated parameters include INTRUSION_ALARM, SMOKE_ALARM, and WINDOW_OPEN. Examples: HmIP-SRH/HM-Sec-RHS window handle sensors now provide a WINDOW_OPEN binary sensor (activated when TILTED or OPEN), and HmIP-SWSD smoke detectors provide INTRUSION_ALARM and SMOKE_ALARM binary sensors (activated when alarm active).
  • Enhanced Data Point Validity (2026.1.52): Comprehensive validation for data points now includes type checking, range validation, and proper None handling. Added has_valid_value_type and is_value_in_range properties to BaseParameterDataPoint. STATUS parameter events are automatically subscribed and processed. Type-specific validation rules for each parameter type (FLOAT, INTEGER, BOOL, ENUM, etc.) with warning logs for out-of-range values received from CCU.
  • Contract Tests for Regression Prevention (2026.1.51): Added extensive contract testing infrastructure with 500+ tests specifically designed to prevent regressions during AI-assisted refactoring. Coverage includes backend capabilities, state machines, connection recovery, event systems, lifecycle methods, enums, configuration classes, exception hierarchies, protocol interfaces, hub entities, subscription APIs, and device/channel protocols.

Changed

  • Pydantic Model Conversions: Multiple configuration classes migrated to Pydantic BaseModel with frozen immutability including TimeoutConfig, InterfaceConfig, CentralConfig, DeviceConfig, ProfileConfig, and BackendCapabilities.
  • Type Safety Improvements: Added @unique decorator to 70+ enum classes to prevent accidental duplicate values, @override decorator to explicitly mark overridden methods, and Final annotations to key constants.

Bug Fixes

  • Fix Client Reconnection from INITIALIZED State: Fixed an issue where clients stuck in INITIALIZED state couldn't be reconnected. The state machine now permits INITIALIZED → DISCONNECTED transitions enabling recovery.
  • Fix JSON Parsing Control Characters: Fixed JSONDecodeError by sanitizing JSON-RPC responses, escaping control characters (U+0000 to U+001F) to proper \uXXXX sequences.

Don't miss a new homematicip_local release

NewReleases is sending notifications on new releases.