Imperial (USB) + NUT = (new) Linux solution

Обсуждение ИБП серии IMPERIAL

Moderators: AlexS, artyom, tanych

Message
Author
keshalg
Posts: 7
Joined: 14:49, 15 Jan 2009

Re: Imperial (USB) + NUT = (new) Linux solution

#16 Post by keshalg » 12:56, 06 Jul 2009

сменить упс на APС

elitteetalell
Posts: 3
Joined: 18:08, 23 Sep 2009
Location: Россия
Contact:

Imperial USB NUT new Linux solution

#17 Post by elitteetalell » 22:25, 25 Sep 2009

в сети нашел инфу о том ,что существует проблема с NUT и УПСами, в которых USB реализован как USB-to-Serial конвертер, поэтому пытаюсь пока настроить через СОМ-порт. вот что выдаёт:

Код

Troy
Posts: 2
Joined: 23:43, 26 Sep 2009

Re: Imperial (USB) + NUT = (new) Linux solution

#18 Post by Troy » 23:48, 26 Sep 2009

День добрый. Помогите разобраться.

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
Пропатчил cypress. Пересобрал модули.

После игры с 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
По upsc данных не видно... Какие есть мысли?

Troy
Posts: 2
Joined: 23:43, 26 Sep 2009

Re: Imperial (USB) + NUT = (new) Linux solution

#19 Post by Troy » 10:45, 27 Sep 2009

Вообщем разобрался.

Кому интересно:
драйвер 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

Alex/AT
Posts: 1
Joined: 12:35, 08 Jan 2010

Re: Imperial (USB) + NUT = (new) Linux solution

#20 Post by Alex/AT » 12:36, 08 Jan 2010

У кого usbhid хватает UPS на старте ядра (вкомпилен в ядро) - поможет следующий скриптик:

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_m8
Вкратце - он освобождает от usbhid устройства с ID 0d9f:0002, после загружает драйвер cypress_m8 (предполагается, что он уже патченный).

kmod драйвера для CentOS выложу чуть-чуть позже.

zeleniy
Posts: 1
Joined: 01:52, 11 Nov 2010

Re: Imperial (USB) + NUT = (new) Linux solution

#21 Post by zeleniy » 02:06, 11 Nov 2010

всем привет, успешно завел 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

alexxst
Posts: 1
Joined: 10:11, 26 May 2012

Re: Imperial (USB) + NUT = (new) Linux solution

#22 Post by alexxst » 10:26, 26 May 2012

Доброго времени суток.
Приобрел 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"

куда копать дальше? :cry:

SkyRE
Posts: 3
Joined: 20:47, 27 Aug 2012

Re: Imperial (USB) + NUT = (new) Linux solution

#23 Post by SkyRE » 10:57, 28 Aug 2012

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.

Post Reply