Skip to content

kingpainter/indeklima

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

70 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ  Indeklima - Home Assistant Integration

Indeklima Logo

hacs_badge Version License Quality Scale

Advanced indoor climate monitoring for Home Assistant with multi-room support, intelligent severity scoring, trend analysis, ventilation recommendations, and a built-in sidebar panel.

Current Version: 2.5.1 Quality Scale: Gold Tier ๐Ÿฅ‡


โœจ Features

๐ŸŒก๏ธ Climate Monitoring

  • Multi-room monitoring โ€” Humidity, temperature, CO2, VOC, formaldehyde, and pressure
  • Intelligent severity scoring โ€” 0โ€“100 score per room and globally
  • Multiple sensors per room โ€” Average calculated automatically across sensors
  • Season-based thresholds โ€” Different humidity limits for summer and winter
  • Pressure sensor support โ€” Informational only, does not affect severity score
  • Mold risk monitoring โ€” Per-room and global mold risk (Low/Moderate/High/Critical) based on humidity and temperature

๐Ÿ“ˆ Trend Analysis

  • 30-minute rolling window โ€” Rising/Falling/Stable for humidity, CO2, and severity
  • Linear regression โ€” Slope-based trend detection, not just point-to-point

๐ŸชŸ Window & Door Tracking

  • Indoor/Outdoor classification โ€” Outdoor windows vs. internal doors
  • Air circulation monitoring โ€” Good/Moderate/Poor based on open internal doors
  • Severity bonus โ€” 5% reduction when air circulation is good
  • Ventilation recommendations โ€” Yes/No/Optional based on indoor climate + weather

๐Ÿ–ฅ๏ธ Built-in Panel

  • Sidebar panel โ€” Live overview, per-room details, ventilation tab
  • Three tabs โ€” Overview, Rooms, Ventilation
  • Session cache โ€” Instant load from cache while fresh data fetches
  • Skeleton loader โ€” Smooth first-load experience

๐Ÿฆ  Mold Risk Detection

  • Per-room mold risk โ€” Low / Moderate / High / Critical calculated from humidity + temperature
  • Global average โ€” Hub sensor mold_risk_avg aggregates across all rooms
  • Dedicated sensor support โ€” Optional per-room dedicated humidity sensor for mold calculation; falls back to room humidity sensor
  • Informational only โ€” Does not affect severity scoring (same principle as pressure)
  • Visible everywhere โ€” Shown on all Lovelace cards and the sidebar panel

๐Ÿ”ง Integration Quality

  • Diagnostics โ€” Download full diagnostics from Settings โ†’ Devices & Services
  • System health โ€” Appears in Settings โ†’ System โ†’ System information
  • Repair flow โ€” Actionable issues in Settings โ†’ System โ†’ Repairs for unavailable sensors and coordinator failures
  • Error handling โ€” ConfigEntryNotReady on startup, UpdateFailed on update cycle
  • Unit tests โ€” Full test suite in tests/

๐Ÿค– Automation Ready

  • Automation Blueprint โ€” Ready-made notification automation with cooldown
  • 19 hub sensors โ€” All accessible in automations and dashboards (including mold_risk_avg)
  • Per-room metric sensors โ€” Separate HA entities per room for temperature, humidity, CO2, pressure

๐Ÿ“ฆ Installation

Via HACS (Recommended)

  1. Open HACS in your Home Assistant
  2. Go to Integrations
  3. Click the three dots (โ‹ฎ) โ†’ Custom repositories
  4. Add https://github.com/kingpainter/indeklima as type Integration
  5. Search for Indeklima and install
  6. Restart Home Assistant
  7. Go to Settings โ†’ Devices & Services โ†’ Add Integration โ†’ search for Indeklima

Manual

  1. Copy custom_components/indeklima/ to your HA custom_components/ folder
  2. Restart Home Assistant
  3. Add the integration via Settings โ†’ Devices & Services

โš™๏ธ Configuration

Indeklima is configured entirely through the UI โ€” no YAML required.

Setup: Settings โ†’ Devices & Services โ†’ Add Integration โ†’ Indeklima

Per room you can configure:

  • Humidity sensors
  • Temperature sensors
  • CO2 sensors
  • VOC sensors
  • Formaldehyde sensors
  • Pressure sensors (informational)
  • Window and door sensors (outdoor/indoor classification)

Options (after setup):

  • Humidity thresholds (summer/winter)
  • CO2, VOC, formaldehyde thresholds
  • Weather entity for ventilation recommendations
  • Add, edit, or delete rooms

๐Ÿ—๏ธ Architecture

Physical Sensors โ†’ HA States โ†’ IndeklimaDataCoordinator
    โ”œโ”€โ”€ Calculates averages
    โ”œโ”€โ”€ Calculates severity scores (0โ€“100)
    โ”œโ”€โ”€ Tracks 30-minute trends
    โ”œโ”€โ”€ Checks ventilation conditions
    โ””โ”€โ”€ Updates coordinator.data
        โ†“
Sensor Entities (18 hub + per-room)
        โ†“
WebSocket API โ†’ Sidebar Panel

Severity scoring:

Metric Max points
Humidity 30
CO2 30
VOC 20
Formaldehyde 20
Pressure 0 (informational only)
Mold risk 0 (informational only)
Air circulation bonus โˆ’5%

Status thresholds:

Score Status
0โ€“29 โœ… Good
30โ€“59 โš ๏ธ Warning
60โ€“100 ๐Ÿ”ด Critical

๐Ÿฉบ Diagnostics & Repairs

Download diagnostics: Settings โ†’ Devices & Services โ†’ Indeklima โ†’ โ‹ฎ โ†’ Download diagnostics

System health: Settings โ†’ System โ†’ Repairs โ†’ โ‹ฎ โ†’ System information โ†’ scroll to Indeklima

Repairs dashboard: Settings โ†’ System โ†’ Repairs

Repair issues are raised automatically when:

  • A configured sensor entity becomes unavailable
  • The coordinator fails to fetch data

Issues clear automatically when the problem resolves.


๐Ÿงช Running Tests

pip install -r requirements_test.txt
pytest --cov=custom_components/indeklima --cov-report=term-missing

๐Ÿ“‹ Changelog

Version Highlights
2.5.1 Mold risk shown on all Lovelace cards and panel โ€” always visible with color coding
2.5.0 Gold Tier: mold risk sensor, repair flow, fast startup (30s scan interval), diagnostics, system health
2.4.1 Repair flow, unit tests, panel scroll fix, weather display fix, __version__ source of truth fix
2.4.0 Diagnostics, system health, setup failure handling, sidebar panel, WebSocket API
2.3.3 Pressure sensor support
2.3.2 Documentation improvements
2.3.1 English constants, encoding cleanup
2.3.0 Per-room metric sensors
2.2.0 Air circulation system
2.1.0 Ventilation recommendations, automation blueprint
2.0.0 Device organisation, modern naming, trend analysis

Full changelogs: see CHANGELOG_v2_5_1.md, CHANGELOG_v2_5_0.md, CHANGELOG_v2_4_1.md and CHANGELOG_v2_4_0.md.


๐Ÿค Contributing

  1. Fork the project
  2. Create a feature branch (git checkout -b feature/my-feature)
  3. Commit your changes (git commit -m 'feat: add my feature')
  4. Push to your branch (git push origin feature/my-feature)
  5. Open a Pull Request

Before contributing:

  • Follow Home Assistant coding guidelines
  • Run the test suite and ensure it passes
  • Update documentation and translations if needed
  • English in all code; Danish translations in translations/da.json

๐Ÿ“„ License

MIT License โ€” see LICENSE for details.


๐Ÿ“ž Support

Before opening an issue: check HA logs, download diagnostics, include your version number.


Made with โค๏ธ by KingPainter โ€” Star โญ if you find it useful!

About

๐Ÿ  Indeklima - Home Assistant Custom Integration

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors