Skip to content

v1.15.0: Hidden Switches Discovery & Cooling Mode Support

Choose a tag to compare

@pvyleta pvyleta released this 22 Apr 20:51

v1.15.0: Hidden Switches Discovery & Cooling Mode Support 🧊

🎉 New Feature: Hidden Switches

The XCC controller contains 217 hidden switches - writable boolean settings that have no UI controls in the web interface. These are typically service technician settings, installation configuration, or hardware capability flags.

This release adds infrastructure to discover and expose these hidden switches to Home Assistant.

🌡️ Cooling Mode Enabled!

Your heat pump can now be configured for reversible operation (heating/cooling mode) directly from Home Assistant!

New Entity

switch.heating_circuit_cooling_mode_configuration

  • Located in OKRUH10.XML (Heating Circuit 0)
  • Internal register: __R44907.7_BOOL_i
  • Enables/disables cooling mode for the heating circuit

How It Works

Two entities work together:

  1. switch.heating_circuit_cooling_mode_configuration (OKRUH10.XML) - Configuration: Enable/disable cooling mode capability
  2. binary_sensor.schlazeni (STATUS.XML) - Status: Shows if cooling is currently active

Requirements

⚠️ Before enabling cooling mode:

  • Heat pump must support reversible operation (cooling hardware)
  • Proper hydraulic configuration for cooling
  • Cooling-compatible floor/wall heating (handles lower water temperatures)
  • Understanding of cooling mode operation

📊 Discovery Tool

find_hidden_switches.py

Run this script to scan your XCC controller for all hidden switches:

python find_hidden_switches.py

Output:

  • Console report showing all 217 hidden switches organized by page
  • hidden_switches_report.txt - detailed list with internal register addresses

Statistics:

  • Total boolean fields: 278
  • With UI controls: 98 (35%)
  • Hidden switches: 217 (78%)
  • Currently exposed in HA: 1 (TO-CONFIG-CHLAZENI)

📖 Documentation

See HIDDEN_SWITCHES.md for:

  • Complete guide to hidden switches
  • Safety notes and warnings
  • How to add more hidden switches to the integration
  • List of notable hidden switches by category:
    • Heating circuit configuration
    • Hot water (TUV) settings
    • Bivalent source controls
    • Photovoltaic system options
    • Pool/basin controls

🔧 Technical Details

Implementation

  1. const.py: Added HIDDEN_SWITCHES dictionary defining exposed switches
  2. coordinator.py: Inject HIDDEN_SWITCHES into entity configs during startup
  3. Works alongside existing STATUS_XML_DESCRIPTOR injection
  4. Hidden switches appear as normal switches in Home Assistant

Files Added

  • find_hidden_switches.py - Discovery script
  • hidden_switches_report.txt - Complete list of 217 hidden switches
  • HIDDEN_SWITCHES.md - Documentation and guide

Most Common Hidden Switches

These appear on almost every page:

  • SZAPNUTO - System power on/off
  • SCOMPACT - Compact mode flag
  • FVE-CONFIG-ENABLED - Photovoltaics enabled
  • CELKOVEPRAZDNINY - Global vacation mode

⚠️ Safety Warning

Hidden switches are hidden for a reason. Changing them without understanding their purpose can:

  • Damage equipment
  • Void warranty
  • Create unsafe operating conditions
  • Require service technician intervention

Only expose and use switches you fully understand.

🔄 Breaking Changes

None - this is a new optional feature that doesn't affect existing functionality.

📦 Related Versions

This completes the STATUS.XML feature started in v1.14.5:

  • v1.14.5: Added STATUS.XML scraping
  • v1.14.6: Fixed binary_sensor routing
  • v1.14.7: Fixed XCCBinarySensor initialization
  • v1.14.8: Added comprehensive tests
  • v1.15.0: Hidden switches & cooling mode