Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[PLUGIN] IPMI for 6.11+

Featured Replies

  • Author
2 hours ago, mikeyosm said:

@SimonF can you please look in to why fan control is not detecting my fan (7) properly on my Asrock Z490D4U-2L2T?

 

image.thumb.png.d523d46d06bbc01b06dbf041d53cc93c.png

 

 

debug.txt 7.52 kB · 2 downloads

Did it create board.json in /boot/config/plugins/ipmi/ ?

 

May take me some time to look into options for your Board as I dont have any ASRock hardware.

  • Replies 783
  • Views 90.9k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • I have released 2023.12.02, If you have tested the Dev release you may need to update the Fans section as I have changed name to FAN123456 for All for Dell systems   - Add FAN Control suppor

  • Yes on my to-do list now 7.2 is out. But am also working on next.

  • garrett hamonic
    garrett hamonic

    I have been using IPMI tools for quite some time and for some reason it stopped working but wont allow me to enter new username or password. How do I go about this?

Posted Images

46 minutes ago, SimonF said:

Did it create board.json in /boot/config/plugins/ipmi/ ?

 

May take me some time to look into options for your Board as I dont have any ASRock hardware.

Yep, here's the content of the file...

 

/boot/config/plugins/ipmi# cat board.json 
{
    "ASRockRack": {
        "raw": "00 3a 01",
        "auto": "00 00 00 00 00 00 00 00",
        "full": "64 64 64 64 64 64 64 64",
        "fans": {
            "FAN_POS1": "01",
            "FAN_POS2": "01",
            "FAN_POS3": "01",
            "FAN_POS4": "01",
            "FAN_POS5": "01",
            "FAN_POS6": "01",
            "FAN_POS7": "01",
            "FAN_POS8": "01"
        }
    }

  • Author
3 hours ago, spl147 said:

Very Nice! looking forward to the update

Release 2023.12.06

 

Add secondary Temp check if HDD is primary and disk have spundown.

Add JSON to config page.

 

Also shows F in fans page.

  • Author
44 minutes ago, mikeyosm said:

Yep, here's the content of the file...

 

/boot/config/plugins/ipmi# cat board.json 
{
    "ASRockRack": {
        "raw": "00 3a 01",
        "auto": "00 00 00 00 00 00 00 00",
        "full": "64 64 64 64 64 64 64 64",
        "fans": {
            "FAN_POS1": "01",
            "FAN_POS2": "01",
            "FAN_POS3": "01",
            "FAN_POS4": "01",
            "FAN_POS5": "01",
            "FAN_POS6": "01",
            "FAN_POS7": "01",
            "FAN_POS8": "01"
        }
    }

If you run ipmi-raw 00 3a 01 21 64 64 64 64 64 64 64 in the command line do you get a response code?

 

 

  • Author
On 12/3/2023 at 9:17 PM, Gunny said:

@SimonFonly thing I can think of would be to add the json files to the config editor dropdown so people less technically inclined can still see/adjust those files if necessary.

Added option for JSON in the editor page.

59 minutes ago, SimonF said:

If you run ipmi-raw 00 3a 01 21 64 64 64 64 64 64 64 in the command line do you get a response code?

 

 

Yep - 

 

ipmi-raw 00 3a 01 21 64 64 64 64 64 64 64
rcvd: 01 C1 

hmm, I updated to 12.06 and the fan control still works with my existing config files, but the settings page is broken now and I can't see or modify anything.  Clicking on the buttons causes a new tab to be opened.  If I remove my board.json config, the settings page starts to work again, but restoring it causes it to break

 

image.thumb.png.ba4002906edf5197bd18939971eebd7b.png

 

 

{
    "ASRockRack": {
        "raw": "00 3a 01",
        "auto": "00 00 00 00 00 00 00 00",
        "full": "01 64 64 64 64 64 00 00",
        "fans": {
            "CPU1_FAN1": "01",
            "CPU2_FAN1": "01",
            "REAR_FAN1": "01",
            "FAN_POS4": "01",
            "FRNT_FAN1": "01",
            "FAN_POS6": "01",
            "FAN_POS7": "01",
            "FAN_POS8": "01"
        }
    }
}

 

Edited by Gunny

  • Author
34 minutes ago, Gunny said:

hmm, I updated to 12.06 and the fan control still works with my existing config files, but the settings page is broken now and I can't see or modify anything.  Clicking on the buttons causes a new tab to be opened.  If I remove my board.json config, the settings page starts to work again, but restoring it causes it to break

 

image.thumb.png.ba4002906edf5197bd18939971eebd7b.png

 

 

{
    "ASRockRack": {
        "raw": "00 3a 01",
        "auto": "00 00 00 00 00 00 00 00",
        "full": "01 64 64 64 64 64 00 00",
        "fans": {
            "CPU1_FAN1": "01",
            "CPU2_FAN1": "01",
            "REAR_FAN1": "01",
            "FAN_POS4": "01",
            "FRNT_FAN1": "01",
            "FAN_POS6": "01",
            "FAN_POS7": "01",
            "FAN_POS8": "01"
        }
    }
}

 

Would you be able to send me copy of ipmi-sensors also

 

Also if running 6.12 can you look to see if any PHP errors. via tools->php settings view log.

5 hours ago, SimonF said:

Release 2023.12.06

 

Add secondary Temp check if HDD is primary and disk have spundown.

Add JSON to config page.

 

Also shows F in fans page.

looks great, would it be possible to seperate the hdd hi/low temp/speed and the CPU hi/low temp/speed? as cpu runs hotter then hdds, so the settings for the hdds don't work well for cpu. IE fans are alway spinning more when hdds spin down vs when hdds are spun up

4 hours ago, SimonF said:

Would you be able to send me copy of ipmi-sensors also

 

Also if running 6.12 can you look to see if any PHP errors. via tools->php settings view log.

Ah, I was wondering if there was a place for php logs thanks for the tip

image.thumb.png.a2ae2a78de3f5f429553a12baf55abc3.png

[06-Dec-2023 18:52:40 America/New_York] PHP Fatal error:  Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, null given in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php:377
Stack trace:
#0 /usr/local/emhttp/plugins/dynamix/include/DefaultPageLayout.php(709) : eval()'d code(153): get_fanctrl_options()
#1 /usr/local/emhttp/plugins/dynamix/include/DefaultPageLayout.php(709): eval()
#2 /usr/local/emhttp/plugins/dynamix/template.php(82): require_once('/usr/local/emht...')
#3 {main}
  thrown in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 377

 

Section 2_ATX+5VSB
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    4.710000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             4.230000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    5.550000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             5.610000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 3_+3.3VSB
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    2.820000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             2.780000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    3.660000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             3.680000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 4_CPU1_VIN
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    1.260000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             1.240000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    2.090000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             2.100000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 5_VCCM_AB
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Critical_Threshold                                                1.080000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    1.020000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             0.960000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Critical_Threshold                                                1.320000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    1.380000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             1.440000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 6_+1.05_PCH
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    0.900000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             0.870000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    1.220000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             1.250000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 7_+1.50_PCH
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Critical_Threshold                                                1.350000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    1.270000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             1.200000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Critical_Threshold                                                1.650000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    1.720000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             1.800000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 8_BAT
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    2.500000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             2.380000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    3.580000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             3.680000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 9_CPU1_FAN1
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Give valid input for sensor type = Fan; units = RPM
	Lower_Non_Critical_Threshold                                                100.000000
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 10_CPU2_FAN1
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Give valid input for sensor type = Fan; units = RPM
	Lower_Non_Critical_Threshold                                                100.000000
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 11_REAR_FAN1
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Give valid input for sensor type = Fan; units = RPM
	Lower_Non_Critical_Threshold                                                100.000000
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 12_FRNT_FAN1
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Give valid input for sensor type = Fan; units = RPM
	Lower_Non_Critical_Threshold                                                100.000000
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 13_FRNT_FAN2
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Give valid input for sensor type = Fan; units = RPM
	Lower_Non_Critical_Threshold                                                100.000000
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 14_FRNT_FAN3
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Give valid input for sensor type = Fan; units = RPM
	Lower_Non_Critical_Threshold                                                100.000000
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 15_FRNT_FAN4
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Give valid input for sensor type = Fan; units = RPM
	Lower_Non_Critical_Threshold                                                100.000000
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Fan; units = RPM; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 16_+3.3V
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    2.820000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             2.780000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    3.660000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             3.680000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 17_+12V
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    10.300000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             10.100000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    13.300000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             13.400000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 18_+5V
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    4.710000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             4.230000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    5.550000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             5.610000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 20_CPU1_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Give valid input for sensor type = Temperature; units = degrees C
	Upper_Non_Critical_Threshold                                                91.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 21_CPU2_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Give valid input for sensor type = Temperature; units = degrees C
	Upper_Non_Critical_Threshold                                                91.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 22_CPU2_VIN
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    1.260000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             1.240000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    2.090000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             2.100000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 23_VCCM_CD
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Critical_Threshold                                                1.080000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    1.020000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             0.960000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Critical_Threshold                                                1.320000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    1.380000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             1.440000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 24_VCCM_EF
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Critical_Threshold                                                1.080000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    1.020000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             0.960000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Critical_Threshold                                                1.320000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    1.380000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             1.440000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 25_VCCM_GH
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Critical_Going_Low                         Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Critical_Going_Low                             Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Lower_Non_Recoverable_Going_Low                      Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Critical_Going_High                            Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Recoverable_Going_High                     Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Critical_Going_Low                       Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Critical_Going_Low                           Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Lower_Non_Recoverable_Going_Low                    Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Critical_Going_High                          Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Recoverable_Going_High                   Yes
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Critical_Threshold                                                1.080000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Critical_Threshold                                                    1.020000
	## Give valid input for sensor type = Voltage; units = Volts
	Lower_Non_Recoverable_Threshold                                             0.960000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Critical_Threshold                                                1.320000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Critical_Threshold                                                    1.380000
	## Give valid input for sensor type = Voltage; units = Volts
	Upper_Non_Recoverable_Threshold                                             1.440000
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Voltage; units = Volts; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 26_Case_Open
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_General_Chassis_Intrusion                            Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_General_Chassis_Intrusion                          Yes
EndSection
Section 27_CPU1_PROCHOT
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
EndSection
Section 28_CPU2_PROCHOT
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
EndSection
Section 29_CPU1_THERMTRIP
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_FRB1_BIST_failure                                    Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_FRB3_Processor_Startup_Initialization_Failure        Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Configuration_Error                                  Yes
EndSection
Section 30_CPU2_THERMTRIP
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_FRB1_BIST_failure                                    Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_FRB3_Processor_Startup_Initialization_Failure        Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Configuration_Error                                  Yes
EndSection
Section 31_MB_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Give valid input for sensor type = Temperature; units = degrees C
	Upper_Non_Critical_Threshold                                                50.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 32_Card_Side_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Give valid input for sensor type = Temperature; units = degrees C
	Upper_Non_Critical_Threshold                                                80.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 33_TR1_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Possible values: Yes/No
	Enable_Assertion_Event_Upper_Non_Critical_Going_High                        Yes
	## Possible values: Yes/No
	Enable_Deassertion_Event_Upper_Non_Critical_Going_High                      Yes
	## Give valid input for sensor type = Temperature; units = degrees C
	Upper_Non_Critical_Threshold                                                80.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         None
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         None
EndSection
Section 34_PS1_Status
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
EndSection
Section 35_PS2_Status
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
EndSection
Section 44_DDR4_E_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 45_DDR4_C_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 46_DDR4_D_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 47_DDR4_H_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 48_DDR4_A_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 49_DDR4_G_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 50_DDR4_B_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 51_DDR4_F_Temp
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Positive_Going_Threshold_Hysteresis                                         1.000000
	## Give valid input for sensor type = Temperature; units = degrees C; 'None' to not use hysteresis
	Negative_Going_Threshold_Hysteresis                                         1.000000
EndSection
Section 52_PSU1_AC_Lost
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
EndSection
Section 53_PSU2_AC_Lost
	## Possible values: Yes/No
	Enable_All_Event_Messages                                                   Yes
	## Possible values: Yes/No
	Enable_Scanning_On_This_Sensor                                              Yes
EndSection

 

Looking at the line that threw the error, I was able to fake it out by adding a 2nd board with no fans on it:
 

{
    "ASRockRack": {
        "raw": "00 3a 01",
        "auto": "00 00 00 00 00 00 00 00",
        "full": "01 64 64 64 64 64 00 00",
        "fans": {
            "CPU1_FAN1": "01",
            "CPU2_FAN1": "01",
            "REAR_FAN1": "01",
            "FAN_POS4": "01",
            "FRNT_FAN1": "01",
            "FAN_POS6": "01",
            "FAN_POS7": "01",
            "FAN_POS8": "01"
        }
    },
    "fake": {
        "raw": "00 3a 01",
        "auto": "00 00 00 00 00 00 00 00",
        "full": "01 64 64 64 64 64 00 00",
        "fans": {
        }
    }
}

 

I think the issue is fundamentally the code makes assumptions about board functionality in the code itself, and doesn't utilize the config files as the source of truth for what to do.  Like in the ipmi_settings_fan.php where $cmd_count gets set, instead of counting the sections in the board.json to determine how many ipmi commands need to get run, it assumes it needs to send a command for each cpu socket on ASRock boards.

this is in my php logs:

 

[06-Dec-2023 18:40:22 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:22 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:23 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:23 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:27 America/Chicago] PHP Deprecated:  preg_match(): Passing null to parameter #2 ($subject) of type string is deprecated in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 80
[06-Dec-2023 18:40:27 America/Chicago] PHP Warning:  Undefined variable $conn in /usr/local/emhttp/plugins/dynamix/include/DefaultPageLayout.php(709) : eval()'d code on line 48
[06-Dec-2023 18:40:27 America/Chicago] PHP Warning:  Undefined variable $options in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 223
[06-Dec-2023 18:40:27 America/Chicago] PHP Warning:  Undefined variable $options in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 223
[06-Dec-2023 18:40:27 America/Chicago] PHP Warning:  Undefined variable $options in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 517
[06-Dec-2023 18:40:27 America/Chicago] PHP Warning:  Undefined variable $options in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 517
[06-Dec-2023 18:40:27 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:27 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:47 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:47 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:55 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:55 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:57 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:40:57 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:41:17 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:41:17 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:41:38 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:41:38 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:41:58 America/Chicago] PHP Warning:  Undefined variable $display in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8
[06-Dec-2023 18:41:58 America/Chicago] PHP Warning:  Trying to access array offset on value of type null in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 8

On 12/6/2023 at 7:10 PM, mikeyosm said:

Yep - 

 

ipmi-raw 00 3a 01 21 64 64 64 64 64 64 64
rcvd: 01 C1 

@SimonF any ideas on what could be wrong, need some more logs from me?

3 hours ago, SimonF said:

Can you provide the output of this.

 

ipmi-raw 00 3a 02 

 

do you have pwm fans in your system?

 

https://git.deck.sh/shark/asrock-pwm-ipmi

Yes I do have PWM fan.

 

~# ipmi-raw 00 3a 02
rcvd: 02 C1

  • Author
3 minutes ago, mikeyosm said:

Yes I do have PWM fan.

 

~# ipmi-raw 00 3a 02
rcvd: 02 C1

can you try with just 3a 02

3 minutes ago, SimonF said:

can you try with just 3a 02

~# ipmi-raw 3a 02
Invalid number of hex bytes

  • Author

I am out of ideas at present as they should be working for your board I think.

  • Author
2 hours ago, SimonF said:

I am out of ideas at present as they should be working for your board I think.

can you provide configs from /boot/config/plugins/ipmi/

  • Author
15 hours ago, mikeyosm said:

~# ipmi-raw 3a 02
Invalid number of hex bytes

Maybe the values for X570 may work, are you on the latest BMC firmware.

 

Also saw post stating you need smartfans for you Motherboard set in the bios.

 

set auto mode

ipmi-raw 00 3a d8 00 00 00 00 00 00 00 

 

set manual mode

ipmi-raw 00 3a d8 01 01 01 01 01 01 01 01 

 

Set full

ipmi-raw 00 3a d8 64 64 64 64 64 64 64

 

Set fan to 20%

ipmi-raw 00 3a d6 64 14 14 14 14 14 14 14 

 

get fan speeds

ipmi-raw 00 3a d7

 

get mode

ipmi-raw 00 3a db

 

  • Author
On 12/6/2023 at 11:54 PM, Gunny said:
[06-Dec-2023 18:52:40 America/New_York] PHP Fatal error:  Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, null given in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php:377
Stack trace:
#0 /usr/local/emhttp/plugins/dynamix/include/DefaultPageLayout.php(709) : eval()'d code(153): get_fanctrl_options()
#1 /usr/local/emhttp/plugins/dynamix/include/DefaultPageLayout.php(709): eval()
#2 /usr/local/emhttp/plugins/dynamix/template.php(82): require_once('/usr/local/emht...')
#3 {main}
  thrown in /usr/local/emhttp/plugins/ipmi/include/ipmi_helpers.php on line 377

Can you tell me what the output of this is for your machine?

/usr/bin/lscpu | grep 'Socket(s):' | awk '{print $2}'

1 hour ago, SimonF said:

Maybe the values for X570 may work, are you on the latest BMC firmware.

 

Also saw post stating you need smartfans for you Motherboard set in the bios.

 

set auto mode

ipmi-raw 00 3a d8 00 00 00 00 00 00 00 

 

set manual mode

ipmi-raw 00 3a d8 01 01 01 01 01 01 01 01 

 

Set full

ipmi-raw 00 3a d8 64 64 64 64 64 64 64

 

Set fan to 20%

ipmi-raw 00 3a d6 64 14 14 14 14 14 14 14 

 

get fan speeds

ipmi-raw 00 3a d7

 

get mode

ipmi-raw 00 3a db

 

on the latest bmc and set all fans to auto (Default) in BMC fan settings. I only have one pwm fan connected to header (fan 7).

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.