[Nut-upsuser] GE EP series UPS

Danilo Godec danilo.godec at agenda.si
Thu Apr 14 09:38:47 UTC 2011


Now I'm trying to get it working with USB (the UPS has both and it's
getting harder to find machines with serial ports) - if it works with
*blazer_ser*, should it also work with *blazer_usb*?

When I plug the USB in, 'dmesg' shows this:

**
> [68527.748033] usb 4-1: new low speed USB device using uhci_hcd and
> address 3
> [68527.922036] usb 4-1: New USB device found, idVendor=14f0,
> idProduct=00c9
> [68527.922048] usb 4-1: New USB device strings: Mfr=3, Product=1,
> SerialNumber=0
> [68527.922058] usb 4-1: Product: GE EP series UPS
> [68527.922065] usb 4-1: Manufacturer: GE
> [68527.922217] usb 4-1: configuration #1 chosen from 1 choice
> [68527.939208] generic-usb 0003:14F0:00C9.0002: hiddev0,hidraw0: USB
> HID v1.11 Device [GE GE EP series UPS] on usb-0000:00:1d.2-1/input0

and */dev/usb/hiddev0* appears.

So I tried with this:

[myups]
        driver = blazer_usb
        port = /dev/usb/hiddev0
        desc = "Local UPS"

*/usr/lib/ups/driver/blazer_usb -a myups*
Network UPS Tools - Megatec/Q1 protocol USB driver 0.03 (2.6.0)
libusb couldn't open USB device /dev/bus/usb/001/001: Permission denied.
libusb requires write access to USB device nodes.
libusb couldn't open USB device /dev/bus/usb/002/001: Permission denied.
libusb requires write access to USB device nodes.
libusb couldn't open USB device /dev/bus/usb/003/001: Permission denied.
libusb requires write access to USB device nodes.
libusb couldn't open USB device /dev/bus/usb/004/001: Permission denied.
libusb requires write access to USB device nodes.
No supported UPS detected

and */dev/usb/hiddev0* disappears.

I added the following to '/etc/udev/rules.d/52-nut-usbups.rules':

# GE EP series
ATTR{idVendor}=="14f0", ATTR{idProduct}=="00c9", MODE="664", GROUP="daemon"

I also edited the 'blazer_usb.c' file and added this:

       { USB_DEVICE(0x14f0, 0x00c9), &krauler_subdriver },     /* GE EP
series */

(also tried other subdrivers - cypress, ippon, ...).

I also manually change permissions on '/dev/bus/usb/*/*' to 666, but it
also didn't help.

Anything else to try?


  Danilo



On 04/13/2011 12:39 AM, Danilo Godec wrote:
> The short story - it seems that GE EP series is (somewhat) supported
> by the *blazer_ser* driver (haven't tried the USB connection yet). I
> had to use the 'cablepower = none' option as GE only uses TX and RX.
>
>
> The longer story - I 'sniffed' the RS232 communication between the GE
> supplied Java software 'upspilot' and UPS. From that I found out the
> baud rate (2400) and I learned about a couple of commands (not knowing
> what they mean):
>
>     * CB24
>     * WH
>     * Q1
>     * Q4
>     * Q7
>     * QS
>     * ...
>
> Then I user 'minicom' to try these commands out and this is what I got:
>
> Q1 -> (232.0 140.0 220.0 001 50.0 2.27 31.0 00000000
> Q4 -> (232.0 243.0 000.0 001 220.0 49.9 001 50.0 342 343 273.0 31.0 LM
> Q7 -> 07102218014 V_01
>
> OK, I'm getting somewhere - but I have to figure out what all of this
> means. So decide to unpack some .jar files and have a look in there. A
> friend helped by 'de-compiling' all .class files and using 'grep' I
> searched for these commands.
>
> There is a file named 'UpsProt.class', which (de-compiled) contains this:
>
> /*  25 */     Santak1Class.command[0] = "Q";
> /*  30 */     Santak1Class.command[1] = "Q1";
> /*  35 */     Santak1Class.command[2] = "Q4";
> /*  40 */     Santak1Class.command[3] = "QF";
> /*  45 */     Santak1Class.command[4] = "MD";
> /*  50 */     Santak1Class.command[5] = "QP";
> /*  55 */     Santak1Class.command[6] = "PSmGnLpHqExxxxDxxx";
> /*  60 */     Santak1Class.command[7] = "PF";
> /*  65 */     Santak1Class.command[8] = "T";
> /*  70 */     Santak1Class.command[9] = "TL";
> /*  75 */     Santak1Class.command[10] = "T";
> /*  80 */     Santak1Class.command[11] = "S";
> /*  85 */     Santak1Class.command[12] = "SR";
> /*  90 */     Santak1Class.command[13] = "C";
> /*  95 */     Santak1Class.command[14] = "CT";
> /* 100 */     Santak1Class.command[15] = "CB";
> /* 105 */     Santak1Class.command[16] = "PE";
> /* 110 */     Santak1Class.command[17] = "PD";
> /* 116 */     Santak1Class.command[18] = "QMT";
> /* 122 */     Santak1Class.command[19] = "F";
> /* 128 */     Santak1Class.command[20] = "WH";
> /* 134 */     Santak1Class.command[21] = "Q2";
> /* 140 */     Santak1Class.command[22] = "WA";
> /* 145 */     Santak1Class.command[23] = "WH";
> /* 150 */     Santak1Class.command[24] = "QA";
> /* 156 */     Santak1Class.command[25] = "FLT";
> /* 162 */     Santak1Class.command[26] = "FLT,00";
> /* 170 */     Santak1Class.command[27] = "QS";
> /* 176 */     Santak1Class.command[28] = "CTL";
> /* 182 */     Santak1Class.command[29] = "LT?";
>
> A list of commands but no description. Interestingly, the Q7 which
> produces some output is not mentioned. .
>
> Due to my limited programming skills I was soon stuck, so I decided to
> look at Nut drivers source to find out if there are any that use
> similar commands. After a bit of experimenting I found that
> 'blazer_ser' pretty much does what it's supposed to do. Also most of
> the 'upsc' output looks reasonable:
>
> battery.voltage: 252.00
> battery.voltage.nominal: 240.0
> beeper.status: disabled
> device.type: ups
> driver.name: blazer_ser
> driver.parameter.cablepower: none
> driver.parameter.pollinterval: 2
> driver.parameter.port: /dev/ttyS0
> driver.version: 2.6.0
> driver.version.internal: 1.51
> input.current.nominal: 27.0
> input.frequency: 50.0
> input.frequency.nominal: 50
> input.voltage: 236.0
> input.voltage.fault: 140.0
> input.voltage.nominal: 220
> output.voltage: 220.0
> ups.delay.shutdown: 30
> ups.delay.start: 180
> ups.load: 1
> ups.status: OL
> ups.temperature: 31.5
> ups.type: online
>
>
>       Danilo
>
>
> _______________________________________________
> Nut-upsuser mailing list
> Nut-upsuser at lists.alioth.debian.org
> http://lists.alioth.debian.org/mailman/listinfo/nut-upsuser


-- 
Danilo Godec, sistemska podpora / system administration

Predlog! Obiscite prenovljeno spletno stran www.agenda.si 

ODPRTA KODA IN LINUX 
STORITVE : POSLOVNE RESITVE : UPRAVLJANJE IT : INFRASTRUKTURA IT : IZOBRAZEVANJE : PROGRAMSKA OPREMA 

Visit our updated web page at www.agenda.si 

OPEN SOURCE AND LINUX 
SERVICES : BUSINESS SOLUTIONS : IT MANAGEMENT : IT INFRASTRUCTURE : TRAINING : SOFTWARE 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/nut-upsuser/attachments/20110414/459f458b/attachment.htm>


More information about the Nut-upsuser mailing list