BMC Sensor Data

NVIDIA BlueField BMC Software v24.04

The following is a list of the available sensors maintained by the BMC including their type and name.

Sensor Name

Sensor Type

Source

Description

p0_link

Discrete

IPMB

Uplink port 0 link status

  • 0x100 – connection OK

  • 0x200 – connection error

p1_link

Discrete

IPMB

Uplink port 1 link status

  • 0x100 – connection OK

  • 0x200 – connection error

bluefield_temp

Temperature

IPMB

Bluefield DPU Temperature

p0_temp

Temperature

IPMB

Uplink port 0 SFP temperature

p1_temp

Temperature

IPMB

Uplink port 1 SFP temperature

1V_BMC

Voltage

BMC ADC

1_2V_BMC

Voltage

BMC ADC

1_8V

Voltage

BMC ADC

1_8V_BMC

Voltage

BMC ADC

2_5V

Voltage

BMC ADC

3_3V

Voltage

BMC ADC

3_3V_RGM

Voltage

BMC ADC

5V

Voltage

BMC ADC

12V_ATX

Voltage

BMC ADC

Input power rail from ATX (power from gold fingers in case of Sub75 when ATX power is off)

12V_PCIe

Voltage

BMC ADC

Input power rail from gold fingers

DVDD

Voltage

BMC ADC

HVDD

Voltage

BMC ADC

VDD

Voltage

BMC ADC

VDDQ

Voltage

BMC ADC

VDD_CPU_L

Voltage

BMC ADC

VDD_CPU_R

Voltage

BMC ADC

Get List of Support Sensors

BlueField sensors are stored within the Sensors schema under the Chassis schema. To retrieve the list of supported sensors, execute the following command:

Copy
Copied!
            

curl -k -u root:'<password>' -H 'Content-Type: application/json' -X GET https://<bmc_ip>/redfish/v1/Chassis/Card1/Sensors

The following is an example of the anticipated output:

Copy
Copied!
            

{ "@odata.id": "/redfish/v1/Chassis/Card1/Sensors", "@odata.type": "#SensorCollection.SensorCollection", "Description": "Collection of Sensors for this Chassis", "Members": [ { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/bluefield_temp" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/p0_temp" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/p1_temp" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/12V_ATX" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/12V_PCIe" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/1V_BMC" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/1_2V_BMC" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/1_8V" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/1_8V_BMC" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/2_5V" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/3_3V" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/3_3V_RGM" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/5V" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/DVDD" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/HVDD" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/VDD" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/VDDQ" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/VDD_CPU_L" }, { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/VDD_CPU_R" } ], "Members@odata.count": 19, "Name": "Sensors" }


Get Data for Specific Sensor

Copy
Copied!
            

curl -k -u root:'<password>' -H 'Content-Type: application/json' -X GET https://<bmc_ip>/redfish/v1/Chassis/Card1/Sensors/<sensor_name>

The following is an example of a temperature sensor BlueField reading:

Copy
Copied!
            

curl -k -u root:'<password>' -H 'Content-Type: application/json' -X GET https://<bmc_ip>/redfish/v1/Chassis/Card1/Sensors/bluefield_temp { "@odata.id": "/redfish/v1/Chassis/Card1/Sensors/bluefield_temp", "@odata.type": "#Sensor.v1_2_0.Sensor", "Id": "bluefield_temp", "Name": "bluefield temp", "Reading": 43.0, "ReadingRangeMax": 255.0, "ReadingRangeMin": 0.0, "ReadingType": "Temperature", "ReadingUnits": "Cel", "RelatedItem": [ { "@odata.id": "/redfish/v1/Systems/Bluefield" } ], "Status": { "Conditions": [], "Health": "OK", "HealthRollup": "OK", "State": "Enabled" }, "Thresholds": { "LowerCaution": { "Reading": 5.0 }, "LowerCritical": { "Reading": 0.0 }, "UpperCaution": { "Reading": 95.0 }, "UpperCritical": { "Reading": 105.0 } } }


Configure Sensor Thresholds

The following commands set the thresholds for sensors that support setting a threshold:

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Chassis/Card1/Sensors/<sensor name>/ -d '{"Thresholds":{"<Threshold name>": {"Reading":<value>}}}'

The following is an example of how to set the upper critical threshold for the BlueField temperature sensor:

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Chassis/Card1/Sensors/bluefield_temp -d '{"Thresholds":{"UpperCritical": {"Reading":100}}}' { "@Message.ExtendedInfo": [ { "@odata.type": "#Message.v1_1_1.Message", "Message": "The request completed successfully.", "MessageArgs": [], "MessageId": "Base.1.15.0.Success", "MessageSeverity": "OK", "Resolution": "None" } ] }


BMC software supports reading chassis sensor information using the IPMItool.

The following subsections list commands which allow reading SDR data.

Display Sensor Data

Displays sensor data repository entry readings and their status.

Copy
Copied!
            

ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN sdr list


Display Extended Sensor Data

Displays extended sensor information.

Copy
Copied!
            

ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN sdr elist


Display Sensors and Thresholds

Displays sensors and thresholds in a wide table format.

Copy
Copied!
            

ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN sensor list


Display Sensor Data Records Specified by Sensor ID

Displays sensor data records specified by sensor ID.

Copy
Copied!
            

ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN sdr get <name>


Display All Records from SDR Repository of Specific Type

Displays all records from the SDR repository of a specific type.

Copy
Copied!
            

ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN sdr type <type>


Display Data for Sensors Specified by Name

Displays information for sensors specified by name.

Copy
Copied!
            

ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN sensor get <sensor_name>


Display Readings for Sensors Specified by Name (Only for Numeric Sensors)

Copy
Copied!
            

ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN sensor reading <name>…<name>


TBD

  • If the original threshold value is >0, the new threshold values must be between 0-255

  • If the original threshold value is <0, the new threshold values must be between 0-127

If a threshold is crossed, a message is added to the Redfish event log, SEL, and journal.

Copy
Copied!
            

ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN sensor thresh <sensor_name> upper <non_critical_value> <critical_value> 0 ipmitool -C 17 -I lanplus -H <bmc_ip> -U ADMIN -P ADMIN thresh <sensor_name> lower 0 <critical_value> <non_critical_value>


© Copyright 2024, NVIDIA. Last updated on May 10, 2024.