, , , GPIO- «» I²C IPMI- (BMC). I²C- ipmitool
. SMBus, PMBus . . .

-: , , , , - - . , , . , GPIO ? Raspberry Pi, , : , , .. , : , , .
- . .
DISCLAIMER
- Geektimes, -
. , (.. ) , . , , . ,
, .
( ), : , . , , -, , , : . .
, IPMI, I²C, SMBus PMBus, , . , , , . .
,
/ . , ( ) , , . X8 X9
NAS , enterpise-, « » - …
FreeNAS Windows-, USB-. , 1 -, . Linux? - , . , - 1 —
(, ). USB
jail
VirtualBox ...
, 20
GPIO , . , — :)
, X9SCM-F (Intel C204 Express), X9SCL-F (C202). , , 24- ATX , SATA- - . , -, T-SGPIO 1 2, «GPIO». , - .
SGPIO, , . SATA-: HBA — , — (, , ). , I²C. , , 6 SATA- , T-SGPIO. , ,
. , JWF1 -, 5 SATA DOM, . . 9- USB RS232, . - COM2 JI2C1/JI2C2, PCIe. , , JI2C1/JI2C2 SCL SDA, 3.3 «», PCIe. . JTPM , . JF1 UID LED, . , .. : , UID LED — () .
, , . , , - BMC, UID LED ,
. ,
, , ATX-, JPI2C.
, JPI2C . , I²C «» . JPI2C 5- Molex SL 0.1" (2.54)
, 70543-0004. ( ) — Molex 70066-0179 (aka
BL-05F). , I²C 5- Molex SL (
BL-05M). , , , .

Power Supply I²C Connector
Power Supply I²C Connector, located at JPI2C, monitors the status of the power supply, fan and system temperature. See the table on the right for pin definitions.
JPI2C I²C: SCL, SDA, GND VCC. — . , , Power Fail — , .
FAQ ID 9492 30 2010, I²C . BMC ,
ipmitool
«» I²C , JPI2C - .
: BL BLS?MP3, 4- , CD- . , BLS-4, CD- , . , , BL-04F, . MP3 , ...
? , JPI2C , - CD-, 5 4. JPI2C
BLS-5,
BL-05F, . .

«» 40- ,
. , , .. .
BLS-1 M-F, M-M F-F. aliexpress: «dupont cable».
I²C
JPI2C - aliexpress BMP180. . ,
bus
, . () BMP180 . X9SCM-F №3
0xee
0xef
(. ). JI2C1/JI2C2 ENABLE , PCIe …
ipmiscan.sh, - progress bar , (0, 1, 2 3). bash 3.0+.
#!/bin/bash
for bus in 0 1 2 3; do
echo Bus $bus
for i in {16..238..2}; do
printf -v args "i2c bus=%d 0x%02x 0x01" $bus $i
printf " 0x%02x" $i
ipmitool $args 2>/dev/null && echo "(bus $bus)"
done
echo
done
. I²C -: ( , — ).
FAQ ID 9492 , .
ipmitool
, , ?
IPMI 2.0 : Master Read-Write (
0x06 0x52
) ( ).
BMP180, JPI2C X9SCM-F, (bus=3)
0xee
(
0xef
, ). ..
0x77
, datasheet (Bosch 8- ). BMP180 «» IPMI-
0x77
, , IPMI I²C- ( ). I²C , , .
I²C , . «i2c sensor» , -. , 30 , . BMP180, , : stateful-, « ». - .
, .. , , : , , , , . IPMI, . DIY .
Andrew Grekhov , , . , , . ,
ipmitool
, -H, -U -P,
raw 0x06 0x52 0x07
i2c bus=3
, «» , . Master Read-Write
IPMI.
Andrew Grekhov, ( ) . , PMBus,
. . PMBus SMBus , SMBus, , I²C. , PMBus. PMBus
, : ? , .
, , (), , ,
PMBus rev 1.1. ,
www.pmbus.org, PMBus Specification Part II Rev. 1.1. , . 26 APPENDIX I. Command Summary. , , - 0x78 (STATUS_BYTE), 0x88 (READ_VIN), 0x89 (READ_IIN), 0x95 (READ_FREQUENCY) : , . 26, (Read Byte Read Word) . , byte word?
: I²C 0x30 (COEFFICIENTS), SMBus? , - , .. , SMBus 0x30 2, (0x88 READ_VIN) , . 1 + 5 + 1
m,
B R, . — , — PEC ( ). .. , SMBus I²C, , :
ipmitool i2c bus=3 0x70 0x07 0x30 0x02 0x88 0x01
0x30 0x02 0x88 0x01
0x70
, №3, 7 ( , , PEC). (
0x78
, — ), 7 6 ( PEC). - , , production, :) , , .
BMP180
BMP180 . , IPMI-
0xee
. BMP180 stateful-, .. ( .. ). BMP180 BMP085, — BMP280, .
, , .
0x2e
0xf4
:
ipmitool i2c bus=3 0xee 0x00 0xf4 0x2e
0x00
,
0xee
, . 4.5 16- UT (« »)
0xf6
:
ipmitool i2c bus=3 0xee 0x02 0xf6
0xf6
0xee
(..
0x77
, BMP180), . IPMI Master Write-Read stateful-.
UT
0x6a 0x48
, 27208 (.. - 27°C «» , BMP180, , ). UT
0x8000
, , .
: AC5, AC6, MC MD
0xb2, 0xb4, 0xbc
0xbe
, ,
(, !).
X1=(UT−AC6)·AC5/215
X2=MC·211/(X1+MD)
B5=X1+X2
T=(B5+8)/24/10
10, .. .
, , 15 11 . , ,
0xf4
. ? , :)
41j .
GPIO
, , , . BMP180 I²C 8- GPIO PCF8574AT.
, PCF8574A ( PCF8574)
0x38
( PCF8574
0x20
), . , , - 8 , . 8 , 64 GPIO. , . I²C .
I²C
, BMP180,
0x77
(..
0xee
) ? , (), TCA9548A - , . () 8 , .
, GPIO, . : - I²C SDA SCL, . , , 8 BMP180, c A0-A2
0x70
(.
0xe0
ipmitool
). A0=A1=A2=1
0x77
, , , BMP180. , TCA9548A, I²C 56 -. , . , , .
ipmitool(1)
v1.8.15, () FreeBSD 10. , , stderr, stdout. . , -
IPMI (perl, Python), raw-.
ipmitool(1)
(623/tcp), JPI2C , . IPMI . , , , , (, Raspberry Pi
microSD- read-only).
, , « ». , Power Fail SNMP-, . : , , , . — .
I²C
«» I²C- , , . «» I²C-, ,
. ? , ,
. , , .
FAQ ID 9492, (, , )
0x38, 0x39, 0x3a, ...
( IPMI, ).

IPMI I²C: , Master Write-Read IPMI.
IPMI 2.0 22.11, . ,
I²C — , . IPMI Master Write-Read : «-»
, IPMI ( 30 ). , () BMC I²C () BMC , .. .
, IPMI Master Write-Read ( ) , BMC , I²C:
I²C, . , - 4- I²C- IPMI, . , , , , , :)
, SMBus, , I²C ,
Write/Read Block. SMBus, IPMI , . , IPMI SMBus , , .
BMC-, , . , , «» , KVM - . BMC-
, BMC ( BIOS).
-
, , - , c :
, ,
:
In some ways, Corsair Link is one of our best kept secrets. It had a very rocky start, but continued and continuing development has turned it into an extremely useful combination of hardware and software. It allows you to connect several products within our ecosystem to a software-based control panel, but there's so much more to it than that.
, , , , , . ,
.
, Corsair Link Commander Mini USB HID, SMBus, «» PMBus, . SMBus, 0x98 (PMBUS_REVISION). , . PMBus . , , ( ) .
, «» community- , . , , .. . , , .
, community :
Kevin Horton FreeNAS Perl.
. , -, , X10 . , SMART. , . .
X9 (socket 1155) : X9SCL/X9SCM
«» «» BIOS (
). , IPMI ...
UPD:
IPMI I²C —
, I²C ? USB- I²C/SMBus, USB HID.
x893 -: CP2112 - Silicon Labs MCP2221A - Microchip. , «A» 460 115. , CP2112EK $40, ADM00559 MCP2221 . , / , .
, , USB , USB HID . : , HID, , CDC, .. COM-. USB HID . , , Python. USB HID, Microchip Linux, . , :)
- I²C, IPMI.
- « » I²C- (, , GPIO), .
- , I²C- , IPMI.
- BMC-, IPMI, I²C Master Write-Read, .
- , - .
- PMBus, I²C/SMBus.
Intelligent Platform Management Interface Specification v2.0
www.intel.com/content/dam/www/public/us/en/documents/product-briefs/second-gen-interface-spec-v2.pdf
IPMItool
sourceforge.net/projects/ipmitool
I²C Bus ( telos)
www.i2c-bus.org
System Management Bus (SMBus) description
www.smbus.org/specs/smbdef.htm
PMBus, Power Management Bus
pmbus.org
FreeNAS, Enterprise-Grade Features, Open Source, BSD Licensed
www.freenas.org
SGPIO, Serial General Purpose Input/Output
www.wikipedia.org/wiki/SGPIO
SuperMicro FAQ ID 9242, Monitoring of PSU using IPMITool
www.supermicro.com/support/faqs/faq.cfm?faq=9492
LM25056, System Power Measurement IC with PMBus
www.ti.com/product/LM25056
PCF8574A, Remote 8-Bit I/O Expander for I2C-Bus
www.ti.com/product/PCF8574A
TCA9548A, Low-Voltage 8-Channel I2C Switch With Reset
www.ti.com/product/TCA9548A
BMP180, Barometric Pressure Sensor
www.bosch-sensortec.com/bst/products/all_products/bmp180
, BMP180 Barometric Pressure Sensor
41j.com/blog/2015/01/bmp180-barometric-pressure-sensor
, . SuperMicro ( X8)
3nity.ru/viewtopic.php?p=135736#p135736
FreeNAS, Script to control fan speed in response to hard drive temperatures
forums.freenas.org/index.php?threads/script-to-control-fan-speed-in-response-to-hard-drive-temperatures.41294
Computer Cheese, IPMI Messaging Support commands,
computercheese.blogspot.com/2013/05/ipmi-messaging-support-commands.html
Corsair Link
www.corsair.com/en/support/faqs/corsair-link
EEVblog Electronics Community Forum
www.eevblog.com/forum/chat/corsair-link