IPMI fellows,

first, congrats for the FreeIPMI project. it's a cool piece of software ;-)

I'm currently having a look at IPMI to implement a PSU monitor driver for
the NUT project:
https://wiki.ubuntu.com/ServerOneiricInfraPower#NUT_PSU_.2BAC8_native_IPMI_driver

I've had a look at the various IPMI implementations out there, and FreeIPMI
seems the most suitable.
I've then had a look at FreeIPMI docs, code, svn, examples, contrib, and
there I got lost!
the code is very complex and hidden in many abstraction layers. And docs and
examples are not very helpful.
I also don't see pkg-config supports files (.pc).
Have I missed something? or isn't it developer friendly :(

I've got the attached output from ipmi-fru and ipmi-sensors
I'd like to do the exact same thing (ie identify and get all PSU information
and events), but looking at the code and docs, I still don't see the light.

Could you please provide me some help and guidance?

thanks,
Arnaud
-- 
Linux / Unix Expert R&D - Eaton - http://powerquality.eaton.com
Network UPS Tools (NUT) Project Leader - http://www.networkupstools.org/
Debian Developer - http://www.debian.org
Free Software Developer - http://arnaud.quette.free.fr/
$ sudo ipmi-fru 

FRU Inventory Device: PS 1 (ID 0x02)

  FRU Board Info Area Manufacturing Date/Time: 12/30/10 - 09:51:00
  FRU Board Manufacturer: DELL
  FRU Board Product Name: PWR SPLY,717W,RDNT            
  FRU Board Serial Number: CN179721130031
  FRU Board Part Number: 0RN442A01


FRU Inventory Device: PS 2 (ID 0x03)

  FRU Board Info Area Manufacturing Date/Time: 12/30/10 - 12:26:00
  FRU Board Manufacturer: DELL
  FRU Board Product Name: PWR SPLY,717W,RDNT            
  FRU Board Serial Number: CN1797211402QB
  FRU Board Part Number: 0RN442A01

-----
$ sudo ipmi-fru -e 0x02

FRU Inventory Device: PS 1 (ID 0x02)

  FRU Board Info Area Manufacturing Date/Time: 12/30/10 - 09:51:00
  FRU Board Manufacturer: DELL
  FRU Board Product Name: PWR SPLY,717W,RDNT            
  FRU Board Serial Number: CN179721130031
  FRU Board Part Number: 0RN442A01

admin-cloud@cloud-clc:~$ sudo ipmi-fru -e 0x03
FRU Inventory Device: PS 2 (ID 0x03)

  FRU Board Info Area Manufacturing Date/Time: 12/30/10 - 12:26:00
  FRU Board Manufacturer: DELL
  FRU Board Product Name: PWR SPLY,717W,RDNT            
  FRU Board Serial Number: CN1797211402QB
  FRU Board Part Number: 0RN442A01

---
$ sudo ipmi-fru -vv -e 0x03
FRU Inventory Device: PS 2 (ID 0x03)
  FRU Inventory Area Size: 256 bytes
  FRU Common Header Format Version: 0x01
  Internal Use Area Starting Offset: 0x0A
  Chassis Info Area Starting Offset: 0x00
  Board Info Area Starting Offset: 0x01
  Product Info Area Starting Offset: 0x00
  Multirecord Area Starting Offset: 0x0D

  FRU Board Info Area Format Version: 0x01
  FRU Board Info Area Length: 9
  FRU Board Info Area Language Code: 0x00
  FRU Board Info Area Manufacturing Date/Time: 12/30/10 - 12:26:00
  FRU Board Manufacturer Type/Length: 0x83
  FRU Board Manufacturer: DELL
  FRU Board Product Name Type/Length: 0xDE
  FRU Board Product Name: PWR SPLY,717W,RDNT            
  FRU Board Serial Number Type/Length: 0xCE
  FRU Board Serial Number: CN1797211402QB
  FRU Board Part Number Type/Length: 0xC9
  FRU Board Part Number: 0RN442A01

  FRU Multirecord Info Area Record Type ID: 0x00
  FRU Multirecord Info Area Record Format Version: 0x02
  FRU Multirecord Info Area End Of List: 0x01
  FRU Multirecord Info Area Record Length: 24

---
* 
$ sudo /usr/sbin/ipmi-sensors | grep Power
57: Status (Power Supply): [Presence detected]
58: Status (Power Supply): [Presence detected]
63: PS Redundancy (Power Supply): [Fully Redundant]
121: Power Optimized (OEM Reserved): [Unrecognized State]

$ sudo  /usr/sbin/ipmi-sensors --group="Power Supply" -v 
Record ID: 57
ID String: Status
Group Name: Power Supply
Sensor Number: 100
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: 6Fh
Sensor Status: [Presence detected]

Record ID: 58
ID String: Status
Group Name: Power Supply
Sensor Number: 101
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: 6Fh
Sensor Status: [Presence detected]

Record ID: 63
ID String: PS Redundancy
Group Name: Power Supply
Sensor Number: 116
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: Bh
Sensor Status: [Fully Redundant (formerly "Redundancy Regained")]

**
* unplug PSU1' power cord

sudo  /usr/sbin/ipmi-sensors --group="Power Supply" -v
Record ID: 57
ID String: Status
Group Name: Power Supply
Sensor Number: 100
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: 6Fh
Sensor Status: [Presence detected]
               [Power Supply input lost (AC/DC)]

Record ID: 58
ID String: Status
Group Name: Power Supply
Sensor Number: 101
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: 6Fh
Sensor Status: [Presence detected]

Record ID: 63
ID String: PS Redundancy
Group Name: Power Supply
Sensor Number: 116
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: Bh
Sensor Status: [Redundancy Lost]

** 
* remove PSU1 from server

sudo  /usr/sbin/ipmi-sensors --group="Power Supply" -v
Record ID: 57
ID String: Status
Group Name: Power Supply
Sensor Number: 100
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: 6Fh
Sensor Status: [OK]

Record ID: 58
ID String: Status
Group Name: Power Supply
Sensor Number: 101
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: 6Fh
Sensor Status: [Presence detected]

Record ID: 63
ID String: PS Redundancy
Group Name: Power Supply
Sensor Number: 116
IPMB Slave Address: 10h
Sensor Owner ID: 20h
Sensor Owner LUN: 0h
Channel Number: 0h
Event/Reading Type Code: Bh
Sensor Status: [Redundancy Lost]

_______________________________________________
Freeipmi-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/freeipmi-devel

Reply via email to