Package: Airthings
Version: 1.0.0
Description: Normalizes Airthings Wave sensors (Temp, Humidity, CO2)
Executive Summary
This package standardizes environmental data from the Airthings Wave sensor located in the living room. It takes raw source sensors (typically providing data with excess precision or varying attributes) and normalizes them into clean, rounded Template Sensors for Temperature, Humidity, and CO2, ensuring consistent display across dashboards.
Process Description (Non-Technical)
- Read: The system reads the raw data from the Airthings integration (e.g.,
sensor.airthings_wave_living_room_temperature). - Process: It rounds the numbers to 1 decimal place for readability (e.g., 21.564°C becomes 21.6°C).
- Publish: It creates new "clean" sensors that are used in the Living Room dashboard.
Dashboard Connections
This package powers the following dashboard views:
- Living Room: The Living Room dashboard is a media and comfort hub. It features in-depth environmental monitoring (Radon, VOCs, CO2) via Airthings Wave, displaying historical trends. Entertainment controls are central, with remotes for the TV and Soundbar, plus power management for the media wall. The view also includes specific controls for the fireplace, air purifier modes, and various lighting scenes, alongside standard occupancy settings. (Uses 3 entities)
Architecture Diagram
Data flows unidirectionally from the physical Airthings device to Home Assistant. The raw sensor data is intercepted by the Template engine, which applies rounding logic. The resulting "Normalized Sensors" are the final output, providing clean data for the UI.
sequenceDiagram
participant Device as Airthings Wave
participant HA as Home Assistant
participant UI as Dashboard
Device->>HA: Report Raw Data (21.564°C)
HA->>HA: Template Logic (Round to 21.6°C)
HA->>UI: Update "Airthings Wave Temperature"
Configuration (Source Code)
# ------------------------------------------------------------------------------
# Package: Airthings
# Version: 1.0.0
# Description: Normalizes Airthings Wave sensors (Temp, Humidity, CO2)
# Dependencies: sensor.airthings_wave_living_room_temperature
# ------------------------------------------------------------------------------
template:
- sensor:
- name: "Airthings Wave Temperature"
unique_id: airthings_wave_temperature
unit_of_measurement: "°C"
device_class: temperature
state_class: measurement
state: >
{% set value = states('sensor.airthings_wave_living_room_temperature') | float(0) %}
{{ value | round(1) }}
- name: "Airthings Wave Humidity"
unique_id: airthings_wave_humidity
unit_of_measurement: "%"
device_class: humidity
state_class: measurement
state: >
{% set value = states('sensor.airthings_wave_living_room_humidity') | float(0) %}
{{ value | round(1) }}
- name: "Airthings Wave CO2"
unique_id: airthings_wave_co2
unit_of_measurement: "ppm"
device_class: carbon_dioxide
state_class: measurement
state: >
{% set value = states('sensor.airthings_wave_living_room_co2') | float(0) %}
{{ value | round(1) }}
