HP ILO sensor component

If anyone want’s the easy way, this is my config for alot of sensors I feel needed.

here’s how you add a new one for “health_at_a_glance” for example

Find the value you want to import here: http://seveas.github.io/python-hpilo/health.html

 'health_at_a_glance': {'bios_hardware': {'status': 'OK'},
                        'fans': {'status': 'OK'},
                        'memory': {'status': 'OK'},
                        'network': {'status': 'OK'},
                        'processor': {'status': 'OK'},
                        'storage': {'status': 'OK'},
                        'temperature': {'status': 'OK'}},

For this sensor I wanna get the status of the storage, the value template would look like this

    value_template: "{{ ilo_data.health_at_a_glance['storage']['status'] }}"

As you can see the template follows the api, first ilo.data to call the ILO component in HA.
Then I wanna start with the topic health_at_a_glance. from that I want to look at the [‘storage’] topic and to show me the value [‘status’].

sensor:
  - platform: hp_ilo
    host: !secret hpilo_gen9host
    username: Administrator
    password: !secret hpilo_gen9password
    scan_interval: 120
    monitored_variables:
      - name: power_status
        sensor_type: server_power_status
      - name: power_readings
        sensor_type: sserver_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: 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'] }}"
1 Like