私が見つけたドキュメントから、UPSはLinuxでサポートされており、apcupsd
で動作していると報告されています。
悪名高いMicrolinkプロトコルなどの特定の問題を探しましたが、何も見つかりませんでした。
私は 英国の人からのフィードバック このモデルをそれほど異ならないOSバージョン(彼のOpenSuSE 12.1、私の12.3 x86_64)で使用していることを報告していることを発見しました。
USBポートが検出され、lsusb
はAPCによって使用されていると報告します。
Bus 002 Device 003: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
およびlsusb -v -s002:003
は、以下を確認および展開します。
Bus 002 Device 003: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x051d American Power Conversion
idProduct 0x0002 Uninterruptible Power Supply
bcdDevice 0.90
iManufacturer 1 American Power Conversion
iProduct 2 Back-UPS RS 900G FW:879.L4 .I USB FW:L4
bNumConfigurations 1
Configuration Descriptor:
[...]
Interface Descriptor:
[...]
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.00
bCountryCode 33 US
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 1134
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 100
Device Status: 0x0000
(Bus Powered)
カーネルはこれを認識し、ヒューマンインターフェイスデバイスを適切にセットアップします
crw------- 1 root root 180, 96 Nov 4 16:11 /dev/usb/hiddev0
ですから、私が知る限り、すべてが本来あるべき姿です。
標準構成を/etc/apcupsd/apcupsd.conf
に入れました(これはUnixで終了し、ASCIIのみで、BOMはありません(念のため))
UPSCABLE usb
UPSTYPE usb
DEVICE
(また、DEVICE
をコメントアウトしようとしましたが、/dev/puppa
のデバイスを設定すると、/dev/puppa
または/var/lib/dev/puppa
ではなく、/dev/puppa\r\n
へのアクセスが試行されます) 。
それでも、apcaccess
が私に言っているのは、「ここにUPSはありません、ごめんなさい」です。
VERSION : 3.14.10 (13 September 2011) suse
CABLE : USB Cable
DRIVER : USB UPS Driver
UPSMODE : Stand Alone
STARTTIME: 2013-11-04 16:24:22 +0100
MODEL :
STATUS : NOBATT
LINEV : 000.0 Volts
LOADPCT : 0.0 Percent Load Capacity
BCHARGE : 000.0 Percent
TIMELEFT : 0.0 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
SENSE : Low
LOTRANS : 000.0 Volts
HITRANS : 000.0 Volts
モデルを認識せず、バッテリーなし(および電圧なし)を報告します。これは、それがMicrolinkの問題ではないこと、またはバッテリーの状態を報告することを確認します。
USBケーブルを外すと、通信が失われたことを示すapcupsd
メッセージが表示されます。ケーブルを再接続すると、「通信が復元されました」というブロードキャストも受信します。したがって、apcupsd
は監視です。
だから、すべてが私にそれが機能するはずだと言っています-それだけは機能しません。どうやら、UPSはapcupsd
と通信しません。誰かが私が欠けているものを見つけますか?
USBポートを変更するブードゥー方式で解決された同様のケース(UPSのモデルは異なりますが、それでもUSB)を見つけました。だからやってみました。 うまくいきました。
2つのポート(機能するポートと機能しないポート)のlsusb
からの出力は、次の1つの詳細を除いて同じです。
Device Status: 0x0000 <-- old port
(Bus Powered)
Device Status: 0x0002 <-- new port
(Bus Powered)
Remote Wakeup Enabled
これが最初のポートに「リモートウェイクアップ」がないことを意味するかどうかはわかりません。これは、何らかの理由でapcupsd
(おそらくサポートするために wakeup-on-power-back ? )、またはこのポートはまったく異なる理由で認識され、その認識により、以前は有効にならなかったリモートウェイクアップが有効になります。
ただし、UPCを古いポートに戻すと、再び機能しなくなりますが、新しいポートでは、予想どおりapcaccess
レポートが表示されます。
MODEL : Back-UPS RS 900G
STATUS : ONLINE
LINEV : 231.0 Volts
LOADPCT : 10.0 Percent Load Capacity
BCHARGE : 100.0 Percent
TIMELEFT : 118.4 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
SENSE : Medium
LOTRANS : 176.0 Volts
HITRANS : 294.0 Volts
ALARMDEL : 30 seconds
BATTV : 27.3 Volts
私の場合、USBを機能させるには、apcupsd.confで次の変数を設定する必要がありました。
UPSCABLE smart
UPSTYPE usb
DEVICE
あなたがそれを機能させてくれてうれしいです、しかし私はこれらの3つの変数が将来誰か他の人を助けることを望んでいます。 (私はCyberPower CP1000AVRLCDaを使用しています)