Imperial (USB) + NUT = (new) Linux solution
Moderators:artyom, AlexS, tanych
сменить упс на APС
-
elitteetalell
- Posts:3
- Joined:18:08, 23 Sep 2009
- Location:Россия
- Contact:
Imperial USB NUT new Linux solution
в сети нашел инфу о том ,что существует проблема с NUT и УПСами, в которых USB реализован как USB-to-Serial конвертер, поэтому пытаюсь пока настроить через СОМ-порт. вот что выдаёт:
Код
Код
Re: Imperial (USB) + NUT = (new) Linux solution
День добрый. Помогите разобраться.
SLES 10.2
Пропатчил cypress. Пересобрал модули.
После игры с rmmod, modprobe - волшебным образом появился ttyUSB0, да вообщем дело в другом.
Но :
/var/log/messages
По upsc данных не видно... Какие есть мысли?
SLES 10.2
Code: Select all
1csrv:/etc/ups # uname -a
Linux 1csrv 2.6.16.60-0.21-bigsmp #1 SMP Tue May 6 12:41:02 UTC 2008 i686 i686 i386 GNU/Linux
После игры с rmmod, modprobe - волшебным образом появился ttyUSB0, да вообщем дело в другом.
Code: Select all
1csrv:/etc/ups # /usr/lib/ups/driver/powercom -a myups -u root -DD -x type=IMPERIAL -x port=/dev/ttyUSB0
Network UPS Tools - PowerCom and similars protocol UPS driver $ Revision: 0.6 $ (2.0.5)
debug level is '2'
Values of arguments:
manufacturer : 'PowerCom'
model name : 'Unknown'
serial number : 'Unknown'
line voltage : '230'
type : 'IMPERIAL'
number of bytes from UPS: '16'
method of flow control : 'dtr0rts1'
validation sequence: '{{5,0xff},{7,0},{8,0}}'
shutdown arguments: '{{0,10},n}'
frequency calculation coefficients: '{1.000000,1.000000}'
load percentage calculation coefficients: '{1.000000,0.000000,1.000000,0.000000}'
battery percentage calculation coefficients: '{0.000000,1.000000,0.000000,1.000000,0.000000}'
voltage calculation coefficients: '{2.000000,0.000000}'
Flow control disable
input.frequency: 50.00
output.frequency: 50.00
ups.load: 15.0
battery.charge: 100.0
input.voltage: 238.0
output.voltage: 206.0
STATUS: OL TRIM
dstate_init: sock /var/lib/nut/myups open on fd 8
input.frequency: 50.00
output.frequency: 50.00
ups.load: 15.0
battery.charge: 100.0
input.voltage: 238.0
output.voltage: 206.0
STATUS: OL TRIM
input.frequency: 50.00
output.frequency: 50.00
ups.load: 15.0
battery.charge: 100.0
input.voltage: 238.0
output.voltage: 206.0
STATUS: OL TRIM
input.frequency: 50.00
output.frequency: 50.00
ups.load: 15.0
battery.charge: 100.0
input.voltage: 238.0
output.voltage: 206.0
STATUS: OL TRIM
Но :
Code: Select all
1csrv:/etc/ups # service upsd start
Starting NUT UPS drivers done
Starting NUT UPS server done
Starting NUT UPS monitor done
1csrv:/etc/ups # upsc [email protected]
Error: Driver not connected
/var/log/messages
Code: Select all
Sep 27 07:05:45 1csrv powercom[6139]: Startup successful
Sep 27 07:05:45 1csrv upsd[6142]: Can't connect to UPS [myups] (powercom-ttyUSB0): No such file or directory Sep 27 07:05:45 1csrv upsmon[6145]: Startup successful
Sep 27 07:05:46 1csrv openwbem: [3045854112]cimom failed to register url with SLP: service:wbem:https://1csrv.main.lan:5989
Sep 27 07:05:50 1csrv upsd[6149]: Startup successful
Sep 27 07:05:50 1csrv upsd[6149]: Connection from 127.0.0.1
Sep 27 07:05:50 1csrv upsd[6149]: Client [email protected] logged into UPS [myups]
Sep 27 07:05:50 1csrv upsmon[6146]: Poll UPS [[email protected]] failed - Driver not connected
Sep 27 07:05:50 1csrv upsmon[6146]: Communications with UPS [email protected] lost
Sep 27 07:05:50 1csrv su: (to root) root on none
Sep 27 07:05:50 1csrv su: (to root) root on none
Sep 27 07:05:55 1csrv upsmon[6146]: Poll UPS [[email protected]] failed - Driver not connected
Sep 27 07:05:55 1csrv upsmon[6146]: UPS [email protected] is unavailable
Sep 27 07:05:55 1csrv su: (to root) root on none
Sep 27 07:05:55 1csrv su: (to root) root on none
Sep 27 07:06:00 1csrv upsmon[6146]: Poll UPS [[email protected]] failed - Driver not connected
Sep 27 07:06:05 1csrv upsmon[6146]: Poll UPS [[email protected]] failed - Driver not connected
Re: Imperial (USB) + NUT = (new) Linux solution
Вообщем разобрался.
Кому интересно:
драйвер powercom выложенный здесь, заточен под nut собранный из исходников. Либо подойдет под сборки, в которых путь не поменян. В SuSE свой путь.
Итого что бы заработало:
1)надо юзера upsd добавить в группу uucp, что бы он имел доступ к /dev/ttyUSB0
2)В ups.conf добавил user=upsd
3)В upsd.conf добавил STATEPATH /var/lib/nut/
4)ваш драйвер создает сокет по виду загаловка из ups.conf, upsd сузёвому нужен сокет вида
driver-port(в нашем случае ему нужен сокет powercom-ttyUSB0). Поэтому в папке /var/lib/nut
делаем симлинк powercom-ttyUSB0 на myups(или как у вас назван)
В итоге видим:
Кому интересно:
драйвер powercom выложенный здесь, заточен под nut собранный из исходников. Либо подойдет под сборки, в которых путь не поменян. В SuSE свой путь.
Итого что бы заработало:
1)надо юзера upsd добавить в группу uucp, что бы он имел доступ к /dev/ttyUSB0
2)В ups.conf добавил user=upsd
3)В upsd.conf добавил STATEPATH /var/lib/nut/
4)ваш драйвер создает сокет по виду загаловка из ups.conf, upsd сузёвому нужен сокет вида
driver-port(в нашем случае ему нужен сокет powercom-ttyUSB0). Поэтому в папке /var/lib/nut
делаем симлинк powercom-ttyUSB0 на myups(или как у вас назван)
В итоге видим:
Code: Select all
1csrv:/etc/ups # upsc [email protected]
battery.charge: 100.0
driver.name: powercom
driver.parameter.port: /dev/ttyUSB0
driver.parameter.type: IMPERIAL
driver.version: 2.0.5
driver.version.internal: $ Revision: 0.6 $
input.frequency: 50.00
input.voltage: 232.0
input.voltage.nominal: 230
output.frequency: 50.00
output.voltage: 232.0
ups.load: 13.0
ups.mfr: PowerCom
ups.model: Unknown
ups.model.type: IMPERIAL
ups.serial: Unknown
ups.status: OL
Re: Imperial (USB) + NUT = (new) Linux solution
У кого usbhid хватает UPS на старте ядра (вкомпилен в ядро) - поможет следующий скриптик:
Вкратце - он освобождает от usbhid устройства с ID 0d9f:0002, после загружает драйвер cypress_m8 (предполагается, что он уже патченный).
kmod драйвера для CentOS выложу чуть-чуть позже.
Code: Select all
#!/bin/bash
for HIDDIR in /sys/bus/usb/drivers/usbhid/* ; do
if [ -d $HIDDIR ] ; then
if [ -f $HIDDIR/modalias ] ; then
grep -i "^usb:v0D9Fp0002" < $HIDDIR/modalias > /dev/null
if [ $? == 0 ] ; then
# found quirky device
HIDPATH=`basename $HIDDIR`
# unbind it
echo $HIDPATH > /sys/bus/usb/drivers/usbhid/unbind
fi
fi
fi
done
# load serial driver
modprobe cypress_m8kmod драйвера для CentOS выложу чуть-чуть позже.
Re: Imperial (USB) + NUT = (new) Linux solution
всем привет, успешно завел nut и подключил UPS Powercom IMD-825AP, ОС: Ubuntu 9.10 Server, драйвер из коробки nut'a. По команде upsc [email protected] выводит следующее:
Вопрос: почему не отображает уровень заряда батареи, показывает левую частоту?
Содержимое ups.conf:
Code: Select all
[email protected]:~$ upsc [email protected]
battery.charge: 0.0
driver.name: powercom
driver.parameter.linevoltage: 240
driver.parameter.modelname: IMD-825AP
driver.parameter.pollinterval: 2
driver.parameter.port: /dev/ttyUSB0
driver.parameter.type: IMP
driver.version: 2.4.1
driver.version.internal: 0.12
input.frequency: 96.14
input.voltage: 200.2
input.voltage.nominal: 220
output.frequency: 96.14
output.voltage: 200.2
ups.load: 6.0
ups.mfr: PowerCom
ups.model: KIN-625AP
ups.model.type: KIN
ups.serial: Unknown
ups.status: OLСодержимое ups.conf:
Code: Select all
[ups]
driver = powercom
type = IMP
port = /dev/ttyUSB0
desc = "IMD-825AP"
modelname = "IMD-825AP"
linevoltage = 240Re: Imperial (USB) + NUT = (new) Linux solution
Доброго времени суток.
Приобрел 425AP, хочу его настроить на своем компьютере для корректного отключения питания через 2 мин после отключения энергии на входе UPS-а.
ОС Ubuntu 10.10 64.bit.
По инструкции настроить мне не удалось.
Скачал приложение Java - тоже не заработала:
====================================================
.../upsmon_for_linux/UPSMON_USB_for_Linux# /usr/jre1.6.0_14/bin/java UPSMON
1. Seconds of OS shutdown delay time (default : 120) :
2. Minutes of UPS shutdown delay time (default : 2) :
3. Would you like to reset these items (N or y) :
UPSMON : There is no any PCM's USBDevice attached!
UPSMON : Exit
====================================================
Походу в системе устройство UPS как USB не верно отображается, нет никаких /dev/ttyUSB0.
lsusb показывает, что устройство включено и к тому же есть файл /dev/bus/usb/004/002
# lsusb | grep Powercom
Bus 004 Device 002: ID 0d9f:00a2 Powercom Co., Ltd
Пробовал обратится к UPS-у через встроенный драйвер:
/lib/nut/powercom -a powercom -u root -DD -x port=/dev/bus/usb/004/002
Network UPS Tools - PowerCom protocol UPS driver 0.12 (2.4.3)
0.000000 debug level is '2'
0.001095 tcgetattr(/dev/bus/usb/004/002): Inappropriate ioctl for device
при этом в /etc/nut/ups.cfg указал секцию
[powercom]
driver = powercom
port = /dev/bus/usb/004/002
desc = "IMD-425AP"
куда копать дальше?
Приобрел 425AP, хочу его настроить на своем компьютере для корректного отключения питания через 2 мин после отключения энергии на входе UPS-а.
ОС Ubuntu 10.10 64.bit.
По инструкции настроить мне не удалось.
Скачал приложение Java - тоже не заработала:
====================================================
.../upsmon_for_linux/UPSMON_USB_for_Linux# /usr/jre1.6.0_14/bin/java UPSMON
1. Seconds of OS shutdown delay time (default : 120) :
2. Minutes of UPS shutdown delay time (default : 2) :
3. Would you like to reset these items (N or y) :
UPSMON : There is no any PCM's USBDevice attached!
UPSMON : Exit
====================================================
Походу в системе устройство UPS как USB не верно отображается, нет никаких /dev/ttyUSB0.
lsusb показывает, что устройство включено и к тому же есть файл /dev/bus/usb/004/002
# lsusb | grep Powercom
Bus 004 Device 002: ID 0d9f:00a2 Powercom Co., Ltd
Пробовал обратится к UPS-у через встроенный драйвер:
/lib/nut/powercom -a powercom -u root -DD -x port=/dev/bus/usb/004/002
Network UPS Tools - PowerCom protocol UPS driver 0.12 (2.4.3)
0.000000 debug level is '2'
0.001095 tcgetattr(/dev/bus/usb/004/002): Inappropriate ioctl for device
при этом в /etc/nut/ups.cfg указал секцию
[powercom]
driver = powercom
port = /dev/bus/usb/004/002
desc = "IMD-425AP"
куда копать дальше?
Re: Imperial (USB) + NUT = (new) Linux solution
Не похоже что вы успешно его завели.zeleniy wrote:всем привет, успешно завел nut и подключил UPS Powercom IMD-825AP, ОС: Ubuntu 9.10 Server, драйвер из коробки nut'a. По команде upsc [email protected] выводит следующее:Вопрос: почему не отображает уровень заряда батареи, показывает левую частоту?Code: Select all
[email protected]:~$ upsc [email protected] battery.charge: 0.0 driver.name: powercom driver.parameter.linevoltage: 240 driver.parameter.modelname: IMD-825AP driver.parameter.pollinterval: 2 driver.parameter.port: /dev/ttyUSB0 driver.parameter.type: IMP driver.version: 2.4.1 driver.version.internal: 0.12 input.frequency: 96.14 input.voltage: 200.2 input.voltage.nominal: 220 output.frequency: 96.14 output.voltage: 200.2 ups.load: 6.0 ups.mfr: PowerCom ups.model: KIN-625AP ups.model.type: KIN ups.serial: Unknown ups.status: OL
Содержимое ups.conf:Code: Select all
[ups] driver = powercom type = IMP port = /dev/ttyUSB0 desc = "IMD-825AP" modelname = "IMD-825AP" linevoltage = 240
driver.parameter.modelname: IMD-825AP
driver.parameter.pollinterval: 2
driver.parameter.port: /dev/ttyUSB0
driver.parameter.type: IMP
driver.version: 2.4.1
driver.version.internal: 0.12
input.frequency: 96.14
input.voltage: 200.2
input.voltage.nominal: 220
output.frequency: 96.14
output.voltage: 200.2
ups.load: 6.0
ups.mfr: PowerCom
ups.model: KIN-625AP
ups.model.type: KIN
ups.serial: Unknown
Попробуйте драйвер NUT - blazer_ser.