various esphome changes

This commit is contained in:
root
2025-05-18 16:35:38 +12:00
parent e60f404d05
commit 0c3ba9cad8
36 changed files with 2813 additions and 356 deletions

View File

@@ -0,0 +1,96 @@
#############################################
# GENERAL COMMON SENSORS
# https://esphome.io/components/sensor/
#############################################
sensor:
- platform: uptime # Uptime for this device in seconds
name: "Uptime (s): ${local_friendly_name}"
update_interval: ${local_update_interval}
id: uptime_sensor
entity_category: "diagnostic"
- platform: wifi_signal # Wifi Strength
name: "Wifi dB: ${local_friendly_name}"
id: wifi_signal_db
update_interval: ${local_update_interval}
entity_category: "diagnostic"
- platform: copy # Reports the WiFi signal strength in %
source_id: wifi_signal_db
name: "WiFi Percent: ${local_friendly_name}"
filters:
- lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
unit_of_measurement: "% Max"
entity_category: "diagnostic"
device_class: ""
#############################################
# Text Sensors
# https://esphome.io/components/text_sensor/index.html
#############################################
text_sensor:
######################################################
# General ESPHome Info
######################################################
- platform: version
name: "Version: ${local_friendly_name}"
entity_category: "diagnostic"
- platform: wifi_info
ip_address:
name: "IP Address: ${local_friendly_name}"
- platform: uptime # Uptime for this device human readable
name: "Uptime: ${local_friendly_name}"
icon: mdi:clock-start
update_interval: ${local_update_interval}
entity_category: "diagnostic"
######################################################
# Creates a sensor showing when the device was last restarted
# Uptime template sensor, and SNTP are needed
######################################################
#- platform: template
# name: ${local_friendly_name} Last Restart
# id: device_last_restart
# icon: mdi:clock
# entity_category: diagnostic
# #device_class: timestamp
######################################################
# Creates a sensor of the uptime of the device, in formatted days, hours, minutes and seconds
######################################################
#- platform: template
# name: "Uptime"
# entity_category: diagnostic
# lambda: |-
# int seconds = (id(uptime_sensor).state);
# int days = seconds / (24 * 3600);
# seconds = seconds % (24 * 3600);
# int hours = seconds / 3600;
# seconds = seconds % 3600;
# int minutes = seconds / 60;
# seconds = seconds % 60;
# if ( days > 3650 ) {
# return { "Starting up" };
# } else if ( days ) {
# return { (String(days) +"d " + String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };
# } else if ( hours ) {
# return { (String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };
# } else if ( minutes ) {
# return { (String(minutes) +"m "+ String(seconds) +"s").c_str() };
# } else {
# return { (String(seconds) +"s").c_str() };
# }
# icon: mdi:clock-start
button:
- platform: safe_mode
name: "Safe Mode Restart: ${local_friendly_name}"
entity_category: "diagnostic"
- platform: restart
name: "Restart: ${local_friendly_name}"
entity_category: "diagnostic"
disabled_by_default: true
- platform: factory_reset
name: "FACTORY RESET: ${local_friendly_name}"
entity_category: "diagnostic"
disabled_by_default: true