Hi all,
First time poster, long time poacher… Until now I have managed to work my way through issues with support from this forum, the support docs or help from friends.
I found various posts on iLO integration on this forum and managed it get it set up and configured for my system, all looked good…. It was only sometime later I realised the sensors only ever update when HA is restarted. Since then, I have been unable to change this behavior. I have found similar posts, but they relate to changing the update frequency, I’ve yet to find anything that covers no updates. I have tried adding scan_interval: with different values into the config but it made no difference.
I’m sure I missed something obvious, but it escapes me. I have set up numerous other sensors
I have a Supervised install of HA on an HP ProLiant DL380p with a valid and activated iLO License.
Home Assistant 2022.9.7
Supervisor 2022.09.1
Thanks
Ian
- platform: hp_ilo
host: 192.168.1.XXX
username: XXX
password: XXX
monitored_variables:
- name: CPU fanspeed 1
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 1"].speed[0] }}'
- name: CPU fanspeed 2
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 2"].speed[0] }}'
- name: CPU fanspeed 3
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 3"].speed[0] }}'
- name: CPU fanspeed 4
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 4"].speed[0] }}'
- name: CPU fanspeed 5
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 5"].speed[0] }}'
- name: CPU fanspeed 6
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 6"].speed[0] }}'
- name: Inlet temperature
sensor_type: server_health
unit_of_measurement: "°C"
value_template: '{{ ilo_data.temperature["01-Inlet Ambient"].currentreading[0] }}'
- name: Server Health
sensor_type: server_health
- name: power_status
sensor_type: server_power_status
- name: power_readings
sensor_type: server_power_readings
- name: power_on_time
sensor_type: server_power_on_time
- name: uid_status
sensor_type: server_uid_status
- name: bios_hardware
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['bios_hardware']['status'] }}"
- name: fan_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['fans']['status'] }}"
- name: memory_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['memory']['status'] }}"
- name: network_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['network']['status'] }}"
- name: processor_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['processor']['status'] }}"
- name: storage_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['storage']['status'] }}"
- name: temperature_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['temperature']['status'] }}"
- name: memory_cpu1_sockets
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_1']['number_of_sockets'] }}"
- name: memory_cpu1_frequency
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_1']['operating_frequency'] }}"
- name: memory_cpu1_voltage
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_1']['operating_voltage'] }}"
- name: memory_cpu1_size
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_1']['total_memory_size'] }}"
- name: memory_cpu2_sockets
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_2']['number_of_sockets'] }}"
- name: memory_cpu2_frequency
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_2']['operating_frequency'] }}"
- name: memory_cpu2_voltage
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_2']['operating_voltage'] }}"
- name: memory_cpu2_size
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_2']['total_memory_size'] }}"
- name: nic_ilo_ip_address
sensor_type: server_health
value_template: "{{ ilo_data.nic_information['iLO iLO Dedicated Network Port']['ip_address'] }}"
- name: nic_ilo_mac
sensor_type: server_health
value_template: "{{ ilo_data.nic_information['iLO iLO Dedicated Network Port']['mac_address'] }}"
- name: nic_ilo_status
sensor_type: server_health
value_template: "{{ ilo_data.nic_information['iLO iLO Dedicated Network Port']['status'] }}"
- name: psu_summary
sensor_type: server_health
value_template: "{{ ilo_data.power_supply_summary['present_power_reading'] }}"
- name: temperature_inlet
sensor_type: server_health
unit_of_measurement: "°C"
value_template: "{{ ilo_data.temperature['01-Inlet Ambient']['currentreading'] }}"
- name: temperature_cpu1_
sensor_type: server_health
unit_of_measurement: "°C"
value_template: "{{ ilo_data.temperature['02-CPU 1']['currentreading'] }}"
- name: processors_cores
sensor_type: server_health
value_template: "{{ ilo_data.processors['Proc 1']['execution_technology'] }}"
- name: processors_name
sensor_type: server_health
value_template: "{{ ilo_data.processors['Proc 1']['name'] }}"
- name: processors_speed
sensor_type: server_health
value_template: "{{ ilo_data.processors['Proc 1']['speed'] }}"
I was missing a value template against a couple of the server_health sensor entries.
Reading suggested posts related to this one got me on the right path.
i am trying same as you, i have copied your sensor config above.
Does the code above include the fixes you mentioned in the second post.
DCN
March 7, 2023, 5:26pm
4
I’m also experiencing this issue. Here is my yaml file:
sensor:
# Denali iLo
- platform: hp_ilo
host: !secret denali_host
username: Administrator
password: !secret denali_pass
scan_interval: 120
monitored_variables:
- name: Denali CPU fanspeed
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 1"].speed[0] }}'
- name: Denali Inlet temperature
sensor_type: server_health
unit_of_measurement: "°F"
value_template: >-
{% set t = ilo_data.temperature["01-Inlet Ambient"].currentreading[0] | float(default=0) %}
{{((t)*9/5)+32}}
- name: Denali Server Health
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance }}"
- name: Denali Present Power Reading
sensor_type: server_power_readings
unit_of_measurement: "w"
value_template: "{{ ilo_data.present_power_reading[0] }}"
- name: Denali Average Power Reading
sensor_type: server_power_readings
unit_of_measurement: "w"
value_template: "{{ ilo_data.average_power_reading[0] }}"
- name: Denali Power Status
sensor_type: server_power_status
# Fuji iLo
- platform: hp_ilo
host: !secret fuji_host
username: Administrator
password: !secret fuji_pass
scan_interval: 120
monitored_variables:
- name: Fuji CPU fanspeed
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 1"].speed[0] }}'
- name: Fuji Inlet temperature
sensor_type: server_health
unit_of_measurement: "°F"
value_template: >-
{% set t = ilo_data.temperature["01-Inlet Ambient"].currentreading[0] | float(default=0) %}
{{((t)*9/5)+32}}
- name: Fuji Server Health
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance }}"
- name: Fuji Present Power Reading
sensor_type: server_power_readings
unit_of_measurement: "w"
value_template: "{{ ilo_data.present_power_reading[0] }}"
- name: Fuji Average Power Reading
sensor_type: server_power_readings
unit_of_measurement: "w"
value_template: "{{ ilo_data.average_power_reading[0] }}"
- name: Fuji Power Status
sensor_type: server_power_status
I also tried adding a scan_interval but it did not change anything for me either. I don’t see any missing value templates and there are no errors in the logs. I’m a bit stuck and any help would be appreciated.
DCN
March 20, 2023, 10:11pm
5
I ended up solving this the same way @weekesianr did. The problem was in the server_power_status sensor. Since it does not have a value_template the platform as a whole did not update. Once I commented it out all of the other sensors began to update properly.
Geento
August 27, 2023, 11:23am
6
i did the same, heres my config: ´
- platform: hp_ilo
host: !secret IloIP
username: !secret ilouser
password: !secret ilopw
monitored_variables:
- name: CPU fanspeed 1
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 1"].speed[0] }}'
- name: CPU fanspeed 2
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 2"].speed[0] }}'
- name: CPU fanspeed 3
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 3"].speed[0] }}'
- name: CPU fanspeed 4
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 4"].speed[0] }}'
- name: CPU fanspeed 5
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 5"].speed[0] }}'
- name: CPU fanspeed 6
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 6"].speed[0] }}'
- name: CPU fanspeed 7
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 7"].speed[0] }}'
- name: CPU fanspeed 8
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 8"].speed[0] }}'
- name: Inlet temperature
sensor_type: server_health
unit_of_measurement: "°C"
value_template: '{{ ilo_data.temperature["01-Inlet Ambient"].currentreading[0] }}'
- name: Server Health
sensor_type: server_health
- name: power_status
sensor_type: server_power_status
- name: power_readings
sensor_type: server_power_readings
- name: power_on_time
sensor_type: server_power_on_time
- name: uid_status
sensor_type: server_uid_status
- name: bios_hardware
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['bios_hardware']['status'] }}"
- name: fan_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['fans']['status'] }}"
- name: memory_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['memory']['status'] }}"
- name: network_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['network']['status'] }}"
- name: processor_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['processor']['status'] }}"
- name: storage_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['storage']['status'] }}"
- name: temperature_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['temperature']['status'] }}"
- name: memory_cpu1_sockets
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_1']['number_of_sockets'] }}"
- name: memory_cpu1_frequency
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_1']['operating_frequency'] }}"
- name: memory_cpu1_voltage
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_1']['operating_voltage'] }}"
- name: memory_cpu1_size
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_1']['total_memory_size'] }}"
- name: memory_cpu2_sockets
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_2']['number_of_sockets'] }}"
- name: memory_cpu2_frequency
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_2']['operating_frequency'] }}"
- name: memory_cpu2_voltage
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_2']['operating_voltage'] }}"
- name: memory_cpu2_size
sensor_type: server_health
value_template: "{{ ilo_data.memory['memory_details_summary']['cpu_2']['total_memory_size'] }}"
- name: nic_ilo_ip_address
sensor_type: server_health
value_template: "{{ ilo_data.nic_information['iLO iLO Dedicated Network Port']['ip_address'] }}"
- name: nic_ilo_mac
sensor_type: server_health
value_template: "{{ ilo_data.nic_information['iLO iLO Dedicated Network Port']['mac_address'] }}"
- name: nic_ilo_status
sensor_type: server_health
value_template: "{{ ilo_data.nic_information['iLO iLO Dedicated Network Port']['status'] }}"
- name: psu_summary
sensor_type: server_health
value_template: "{{ ilo_data.power_supply_summary['present_power_reading'] }}"
- name: temperature_inlet
sensor_type: server_health
unit_of_measurement: "°C"
value_template: "{{ ilo_data.temperature['01-Inlet Ambient']['currentreading'] }}"
- name: temperature_cpu1_
sensor_type: server_health
unit_of_measurement: "°C"
value_template: "{{ ilo_data.temperature['02-CPU 1']['currentreading'] }}"
- name: processors_cores
sensor_type: server_health
value_template: "{{ ilo_data.processors['Proc 1']['execution_technology'] }}"
- name: processors_name
sensor_type: server_health
value_template: "{{ ilo_data.processors['Proc 1']['name'] }}"
- name: processors_speed
sensor_type: server_health
value_template: "{{ ilo_data.processors['Proc 1']['speed'] }}"
Is there any solution or line where an error could hide ?
I would be very thankful !
Geento
August 27, 2023, 11:24am
7
How did you solve the issue? I do not quite understand the steps you took.
DCN
September 4, 2023, 2:05pm
8
sensor:
# Denali iLo
- platform: hp_ilo
host: !secret denali_host
username: Administrator
password: !secret denali_pass
scan_interval: 15
monitored_variables:
- name: Denali CPU fanspeed
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 1"].speed[0] }}'
- name: Denali Inlet temperature
sensor_type: server_health
unit_of_measurement: "°F"
value_template: >-
{% set t = ilo_data.temperature["01-Inlet Ambient"].currentreading[0] | float(default=0) %}
{{((t)*9/5)+32}}
# - name: Denali Server Health
# sensor_type: server_health
# value_template: "{{ ilo_data.health_at_a_glance }}"
- name: Denali Present Power Reading
sensor_type: server_power_readings
unit_of_measurement: "w"
value_template: "{{ ilo_data.present_power_reading[0] }}"
- name: Denali Average Power Reading
sensor_type: server_power_readings
unit_of_measurement: "w"
value_template: "{{ ilo_data.average_power_reading[0] }}"
# - name: Denali Power Status
# sensor_type: server_power_status
Note the last lines where I commented out the Power Status variable. That is what solved it for me if my memory serves me correctly.
Sorry, didn’t realise there were updates on this since I resolved.
When I read the ILO documentation I realised the Power Status was the issue as within ILO it holds multiple values Current, Average and Peak IIRC.
Any failed sensor stops the others updating but they will pull a value each time you re-start.
This is where I ended up.
- platform: hp_ilo
host: 192.168.1.XXX
username: XXX
password: XXX
scan_interval: 120
monitored_variables:
- name: CPU fanspeed 1
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 1"].speed[0] }}'
- name: CPU fanspeed 2
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 2"].speed[0] }}'
- name: CPU fanspeed 3
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 3"].speed[0] }}'
- name: CPU fanspeed 4
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 4"].speed[0] }}'
- name: CPU fanspeed 5
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 5"].speed[0] }}'
- name: CPU fanspeed 6
sensor_type: server_health
unit_of_measurement: "%"
value_template: '{{ ilo_data.fans["Fan 6"].speed[0] }}'
- name: Inlet temperature
sensor_type: server_health
unit_of_measurement: "°C"
value_template: '{{ ilo_data.temperature["01-Inlet Ambient"].currentreading[0] }}'
- name: psu_current
sensor_type: server_health
unit_of_measurement: "W"
value_template: "{{ (ilo_data.power_supply_summary['present_power_reading']).split(' ')[0] }}"
#- name: psu_average
#sensor_type: server_health
#unit_of_measurement: "W"
#value_template: "{{ (ilo_data.power_supply_summary['average_power_reading']).split(' ')[0] }}"
#- name: psu_max
#sensor_type: server_health
#unit_of_measurement: "W"
#value_template: "{{ (ilo_data.power_supply_summary['maximum_power_reading']).split(' ')[0] }}"
#- name: psu_min
#sensor_type: server_health
#unit_of_measurement: "W"
#value_template: "{{ (ilo_data.power_supply_summary['minimum_power_reading']).split(' ')[0] }}"
- name: fan_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['fans']['status'] }}"
- name: memory_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['memory']['status'] }}"
- name: network_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['network']['status'] }}"
- name: processor_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['processor']['status'] }}"
- name: storage_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['storage']['status'] }}"
- name: temperature_status
sensor_type: server_health
value_template: "{{ ilo_data.health_at_a_glance['temperature']['status'] }}"
- name: power_status
sensor_type: server_power_status
- name: uid_status
sensor_type: server_uid_status
1 Like
Thinko
(Thinko)
November 13, 2023, 9:28pm
10
is this working with ILO3,i have problem to www connect because old process