Hello,
as mentioned in the 2023.2 esphome changelog,
ESPHome now supports setting a friendly_name which is sent to Home Assistant. This name will be used for the config entry, the device name, and will be automatically prefixed to all of the entities where needed by Home Assistant.
then
take note that you should remove any friendly name (substitition) that you currently prepend onto entity name in YAML.
So did I, unfortunately what i get is that those entities got all the same name, while I expected HA added the friendly name to all of them as prefix so it was easy to find the needed entity at the occurrence.
I had to remove and add all entities again but what HA done is adding a progressive numeric suffix - eg.: (1) - (2) - to all homonym entities.
Did I understand wrong or something is not working as expected?
thank you
@Cuddon , your approach makes sense, and I’ve tried it, though am not getting the expected results. All of the entity and attribute names are still generic, and have appended numbers a noted by @raidnet-ms above. Could I ask if you see anything obviously wrong in the yaml below?
esphome:
name: 'clothes-dryer'
friendly_name: 'Clothes Dryer'
name_add_mac_suffix: false
esp8266:
board: esp8285
restore_from_flash: true
preferences:
flash_write_interval: 1min
ota:
logger:
baud_rate: 0
mdns:
disabled: false
web_server:
port: 80
#wifi:
# ap: {} # This spawns an AP with the device name and mac address with no password.
captive_portal:
#dashboard_import:
# package_import_url: github://athom-tech/athom-configs/athom-smart-plug-v2.yaml
uart:
rx_pin: RX
baud_rate: 4800
globals:
- id: total_energy
type: float
restore_value: yes
initial_value: '0.0'
binary_sensor:
- platform: status
name: "${friendly_name} Status"
- platform: gpio
pin:
number: 5
mode: INPUT_PULLUP
inverted: true
name: "${friendly_name} Power Button"
disabled_by_default: true
on_multi_click:
- timing:
- ON for at most 1s
- OFF for at least 0.2s
then:
- switch.toggle: relay
- timing:
- ON for at least 4s
then:
- button.press: Reset
sensor:
- platform: uptime
name: "${friendly_name} Uptime Sensor"
- platform: cse7766
update_interval: 10s
current:
name: "${friendly_name} Current"
filters:
- lambda: if (x < 0.060) return 0.0; else return x; #For the chip will report less than 3w power when no load is connected
voltage:
name: "${friendly_name} Voltage"
power:
name: "${friendly_name} Power"
id: power_sensor
filters:
- lambda: if (x < 3.0) return 0.0; else return x; #For the chip will report less than 3w power when no load is connected
energy:
name: "${friendly_name} Energy"
id: energy
unit_of_measurement: kWh
filters:
# Multiplication factor from W to kW is 0.001
- multiply: 0.001
on_value:
then:
- lambda: |-
static float previous_energy_value = 0.0;
float current_energy_value = id(energy).state;
id(total_energy) += current_energy_value - previous_energy_value;
previous_energy_value = current_energy_value;
- platform: template
name: "${friendly_name} Total Energy"
unit_of_measurement: kWh
device_class: "energy"
state_class: "total_increasing"
icon: "mdi:lightning-bolt"
accuracy_decimals: 3
lambda: |-
return id(total_energy);
update_interval: 10s
- platform: total_daily_energy
name: "${friendly_name} Total Daily Energy"
restore: true
power_id: power_sensor
unit_of_measurement: kWh
accuracy_decimals: 3
filters:
- multiply: 0.001
button:
- platform: factory_reset
name: "Restart with Factory Default Settings"
id: Reset
- platform: safe_mode
name: "Safe Mode"
internal: false
switch:
- platform: gpio
name: "${friendly_name}"
pin: GPIO12
id: relay
restore_mode: ${relay_restore_mode}
light:
- platform: status_led
name: "${friendly_name} Status LED"
id: blue_led
disabled_by_default: true
pin:
inverted: true
number: GPIO13
text_sensor:
- platform: wifi_info
ip_address:
name: "IP Address"
ssid:
name: "Connected SSID"
mac_address:
name: "Mac Address"
time:
- platform: sntp
id: sntp_time
api:
encryption:
key: 9Oq0tr53+OD3hUHNqjIr/U/PqVRjxabYwl/Sk5XOJhg=
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
use_address: <removed from public posting>