Skip to content

Commit 14294b5

Browse files
committed
Update configuration files and enhance sensor definitions based on Future Breaking CHANGES for HA.
- Updated .gitignore to include new IP change configuration file. - Bumped Home Assistant version to 2025.12.0. - Modified logbook.yaml to exclude specific alarm panel entities for cleaner logs. - Refactored alexa_media_player.yaml and climate.yaml to use template sensors for better organization and clarity. - Added new template sensors in climate.yaml for tracking AC cooling status. - Updated glances.yaml to define a template sensor for average temperature. - Enhanced stats.yaml with new template sensors for various counts (sensors, automations, scripts, etc.). - Removed outdated superbowl.yaml and weather_camera.yaml.disabled configurations. - Updated README.md to reflect the new location of IP change monitoring.
1 parent b61c28f commit 14294b5

11 files changed

Lines changed: 130 additions & 284 deletions

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ home-assistant_v2
2929
home-assistant_v2.*
3030
.homekit.state
3131
ipchange.yaml
32+
config/packages/ipchange.yaml
3233
ip_bans.yaml
3334
production_auth.json
3435
OZW_Log.txt

config/.HA_VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2025.11.3
1+
2025.12.0

config/logbook.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ exclude:
3232
- sensor.*_activity
3333
- sensor.*_bssid
3434
- sensor.*_wifi_signal_strength
35+
- "*alarm_panel_1*"
36+
- "*alarm_panel_2*"
3537
entities:
3638
- automation.cuckoo_clock
3739
- automation.detect_lights_and_adjust_the_brightness_when_turned_on_based_on_time
Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
#-------------------------------------------
2-
# @CCOSTAN
1+
######################################################################
2+
# @CCOSTAN - Follow Me on X
3+
# For more info visit https://www.vcloudinfo.com/click-here
34
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
5+
# -------------------------------------------------------------------
46
# Alexa Media Player - Sensors and notifications via Alexa Media integration.
5-
#-------------------------------------------
6-
######################################################################
7-
## Track Alexa media state and expose routine/command triggers.
7+
# Track Alexa media state and expose routine/command triggers.
8+
# -------------------------------------------------------------------
89
######################################################################
9-
sensor:
10-
- platform: template
11-
sensors:
12-
last_alexa:
13-
value_template: >
14-
{{ states.media_player | selectattr('attributes.last_called','eq',True) | map(attribute='entity_id') | first | default('none') }}
1510

16-
#-------------------------------------------
11+
template:
12+
- sensor:
13+
- name: "Last Alexa"
14+
unique_id: last_alexa
15+
state: >
16+
{{ states.media_player | selectattr('attributes.last_called','eq',True) | map(attribute='entity_id') | first | default('none') }}

config/packages/climate.yaml

Lines changed: 30 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
#-------------------------------------------
2-
# @CCOSTAN
1+
######################################################################
2+
# @CCOSTAN - Follow Me on X
3+
# For more info visit https://www.vcloudinfo.com/click-here
34
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
5+
# -------------------------------------------------------------------
46
# Climate Control - Seasonal HVAC automations and sensors.
5-
#-------------------------------------------
6-
######################################################################
7-
## Thermostat helpers for upstairs/downstairs comfort.
7+
# Thermostat helpers for upstairs/downstairs comfort.
8+
# -------------------------------------------------------------------
89
######################################################################
9-
# For more info visit https://www.vcloudinfo.com/click-here | Contact: @CCOSTAN
10+
# Contact: @CCOSTAN | Entity reference details below
1011
# Entity reference and attribute summaries:
1112
#
1213
# Entity ID: climate.downstairs
@@ -40,6 +41,28 @@
4041

4142
######################################################################
4243

44+
# ---------------------------------------------------------------------------
45+
# Template helpers – compressor status flags and numeric runtime helpers
46+
# ---------------------------------------------------------------------------
47+
template:
48+
- binary_sensor:
49+
- name: "Downstairs AC is Cooling"
50+
unique_id: downstairs_ac_cooling
51+
state: >
52+
{{ state_attr('climate.downstairs', 'hvac_action') == 'cooling' }}
53+
- name: "Upstairs AC is Cooling"
54+
unique_id: upstairs_ac_cooling
55+
state: >
56+
{{ state_attr('climate.upstairs', 'hvac_action') == 'cooling' }}
57+
58+
sensor:
59+
- name: "Downstairs AC Cooling Numeric"
60+
unique_id: downstairs_ac_cooling_numeric
61+
state: "{{ 1 if is_state('binary_sensor.downstairs_ac_cooling', 'on') else 0 }}"
62+
- name: "Upstairs AC Cooling Numeric"
63+
unique_id: upstairs_ac_cooling_numeric
64+
state: "{{ 1 if is_state('binary_sensor.upstairs_ac_cooling', 'on') else 0 }}"
65+
4366
input_datetime:
4467
downstairs_last_filter_change:
4568
name: Downstairs Last Filter Change
@@ -51,30 +74,9 @@ input_datetime:
5174
has_time: true
5275

5376
# ---------------------------------------------------------------------------
54-
# Binary sensors – true when the thermostat reports the compressor is running
77+
# Integration sensors tally runtime based on compressor state
5578
# ---------------------------------------------------------------------------
56-
binary_sensor:
57-
- platform: template
58-
sensors:
59-
downstairs_ac_cooling:
60-
friendly_name: "Downstairs AC is Cooling"
61-
value_template: >
62-
{{ state_attr('climate.downstairs', 'hvac_action') == 'cooling' }}
63-
upstairs_ac_cooling:
64-
friendly_name: "Upstairs AC is Cooling"
65-
value_template: >
66-
{{ state_attr('climate.upstairs', 'hvac_action') == 'cooling' }}
67-
6879
sensor:
69-
- platform: template
70-
sensors:
71-
downstairs_ac_cooling_numeric:
72-
friendly_name: "Downstairs AC Cooling Numeric"
73-
value_template: "{{ 1 if is_state('binary_sensor.downstairs_ac_cooling', 'on') else 0 }}"
74-
upstairs_ac_cooling_numeric:
75-
friendly_name: "Upstairs AC Cooling Numeric "
76-
value_template: "{{ 1 if is_state('binary_sensor.upstairs_ac_cooling', 'on') else 0 }}"
77-
7880
- platform: integration
7981
name: Downstairs AC Runtime Raw
8082
source: sensor.downstairs_ac_cooling_numeric

config/packages/glances.yaml

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,21 @@
1-
#-------------------------------------------
2-
# @CCOSTAN
1+
######################################################################
2+
# @CCOSTAN - Follow Me on X
3+
# For more info visit https://www.vcloudinfo.com/click-here
34
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
5+
# -------------------------------------------------------------------
46
# Glances - ProxMox/server stats via Glances integration.
5-
#-------------------------------------------
6-
######################################################################
7-
## CPU, memory, and disk sensors from Glances API.
7+
# CPU, memory, and disk sensors from Glances API.
8+
# -------------------------------------------------------------------
89
######################################################################
9-
sensor:
10-
- platform: template
11-
sensors:
12-
proxmox_garage_avg_temp:
13-
friendly_name: "Proxmox Garage Average Temperature"
14-
unit_of_measurement: "°F"
15-
value_template: >-
10+
11+
template:
12+
- sensor:
13+
- name: "Proxmox Garage Average Temperature"
14+
unique_id: proxmox_garage_avg_temp
15+
device_class: temperature
16+
state_class: measurement
17+
unit_of_measurement: "\u00B0F"
18+
state: >-
1619
{{ (
1720
(states('sensor.proxmox1_package_id_0_temperature') | float(0) +
1821
states('sensor.proxmox1_pch_skylake_1_temperature') | float(0) +
@@ -42,7 +45,7 @@ automation:
4245
action:
4346
- service: script.notify_engine
4447
data:
45-
title: "🔥 Proxmox Garage Alert!"
46-
value1: "The average temperature of your Proxmox servers is above 145°F!"
48+
title: "?? Proxmox Garage Alert!"
49+
value1: "The average temperature of your Proxmox servers is above 145\u00B0F!"
4750
who: 'carlo'
4851
group: 'information'

config/packages/stats.yaml

Lines changed: 64 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
#-------------------------------------------
2-
# @CCOSTAN
1+
######################################################################
2+
# @CCOSTAN - Follow Me on X
3+
# For more info visit https://www.vcloudinfo.com/click-here
34
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
5+
# -------------------------------------------------------------------
46
# Stats - Historical metrics and AI notifications.
5-
#-------------------------------------------
6-
######################################################################
7-
## Build historical stats for AI/alerting.
7+
# Build historical stats for AI/alerting.
8+
# -------------------------------------------------------------------
9+
# Contact: @CCOSTAN
810
######################################################################
9-
# Find me on X @CCOSTAN
1011

1112
### Building out some Historical stats for AI. #####################
1213
command_line:
@@ -71,51 +72,56 @@ sensor:
7172
days: 7
7273

7374
### Building some interesting stats for tweeting. ###
74-
- platform: template
75-
sensors:
76-
sensor_count:
77-
friendly_name: 'Number of Sensors'
78-
value_template: >-
75+
76+
template:
77+
- sensor:
78+
- name: "Number of Sensors"
79+
unique_id: stats_number_of_sensors
80+
unit_of_measurement: "count"
81+
icon: mdi:counter
82+
state: >-
7983
{{ states.sensor | list | count }}
80-
unit_of_measurement: 'count'
81-
icon_template: mdi:counter
8284
83-
automation_count:
84-
friendly_name: 'Number of Automations'
85-
value_template: >-
85+
- name: "Number of Automations"
86+
unique_id: stats_number_of_automations
87+
unit_of_measurement: "count"
88+
icon: mdi:robot
89+
state: >-
8690
{{ states.automation | list | count }}
87-
unit_of_measurement: 'count'
88-
icon_template: mdi:robot
8991
90-
script_count:
91-
friendly_name: 'Number of Scripts'
92-
value_template: >-
92+
- name: "Number of Scripts"
93+
unique_id: stats_number_of_scripts
94+
unit_of_measurement: "count"
95+
icon: mdi:script-text
96+
state: >-
9397
{{ states.script | list | count }}
94-
unit_of_measurement: 'count'
95-
icon_template: mdi:script-text
9698
97-
binary_sensor_count:
98-
friendly_name: 'Number of Binary Sensors'
99-
value_template: >-
99+
- name: "Number of Binary Sensors"
100+
unique_id: stats_number_of_binary_sensors
101+
unit_of_measurement: "count"
102+
icon: mdi:binary-sensor
103+
state: >-
100104
{{ states.binary_sensor | list | count }}
101-
unit_of_measurement: 'count'
102-
icon_template: mdi:binary-sensor
103-
tracker_count:
104-
friendly_name: 'Number of Devices'
105-
value_template: >-
106-
{{ states.device_tracker| list | count }}
107-
unit_of_measurement: 'count'
108-
icon_template: mdi:account-group
109-
110-
lights_count:
111-
friendly_name: 'Number of Lights'
112-
value_template: >
105+
106+
- name: "Number of Devices"
107+
unique_id: stats_number_of_devices
108+
unit_of_measurement: "count"
109+
icon: mdi:account-group
110+
state: >-
111+
{{ states.device_tracker | list | count }}
112+
113+
- name: "Number of Lights"
114+
unique_id: stats_number_of_lights
115+
unit_of_measurement: "count"
116+
icon: mdi:lightbulb
117+
state: >
113118
{{ states.light | list | count }}
114-
unit_of_measurement: 'count'
115-
icon_template: mdi:lightbulb
116-
lights_on_count:
117-
friendly_name: "Number of lights on"
118-
value_template: >-
119+
120+
- name: "Number of lights on"
121+
unique_id: stats_number_of_lights_on
122+
unit_of_measurement: "count"
123+
icon: mdi:binary-sensor
124+
state: >-
119125
{% set lights = states.light | selectattr('state', 'eq', 'on') | list %}
120126
{% set qty = lights | count %}
121127
{% set p1 = 'lights are' if qty > 1 else 'light is' %}
@@ -125,11 +131,11 @@ sensor:
125131
{% else %}
126132
{{ qty }} {{ p1 }} on.
127133
{% endif %}
128-
unit_of_measurement: 'count'
129-
icon_template: mdi:binary-sensor
130-
protect_count:
131-
friendly_name: 'Number of Smoke Detectors'
132-
value_template: >
134+
135+
- name: "Number of Smoke Detectors"
136+
unit_of_measurement: "count"
137+
icon: mdi:smoke-detector
138+
state: >
133139
{% if states('group.protects') == 'on' %}
134140
{% for e in states.group.protects.attributes.entity_id if states(e) == 'on' %}
135141
{% if loop.last %}
@@ -139,20 +145,19 @@ sensor:
139145
{% else %}
140146
0
141147
{% endif %}
142-
unit_of_measurement: 'count'
143-
icon_template: mdi:smoke-detector
144-
camera_count:
145-
friendly_name: 'Number of online Cameras'
146-
value_template: >
148+
149+
- name: "Number of online Cameras"
150+
unique_id: stats_number_of_online_cameras
151+
unit_of_measurement: "count"
152+
icon: mdi:camera
153+
state: >
147154
{{ states.camera | list | count }}
148-
unit_of_measurement: 'count'
149-
icon_template: mdi:camera
150-
total_wifi_clients:
151-
friendly_name: "Total WiFi Clients"
155+
156+
- name: "Total WiFi Clients"
152157
unique_id: total_wifi_clients
153158
unit_of_measurement: "clients"
154-
icon_template: mdi:wifi
155-
value_template: >
159+
icon: mdi:wifi
160+
state: >
156161
{% set g = states('sensor.unifi_ap_garage_clients') | int(0) %}
157162
{% set o = states('sensor.unifi_ap_office_clients') | int(0) %}
158163
{% set s = states('sensor.unifi_ap_study_clients') | int(0) %}

0 commit comments

Comments
 (0)