<div dir="ltr"><div>Hello,</div><div><br></div><div>I have a UPS branded as "Energit MXE II" that comes with the infamous Winpower software (as already discussed <a href="http://nut-upsdev.alioth.debian.narkive.com/m0FWk43o/blazer-usb-compatibility-with-ippon-backpro-upses-phoenix-power-co-ltd-usb-to-serial-controller">in this old thread</a>). This same UPS appears to be sold as "Centralion Titan Elite" and maybe other names too.</div><div><br></div><div>My system runs Kubuntu 14.04 LTS, and I got some recent NUT version from <a href="https://launchpad.net/~dobey/+archive/ubuntu/systools/+sourcepub/6062635/+listing-archive-extra">this ppa</a> so I currently have a package called nut-server_2.7.3.1+r2547.1~ubuntu14.04.1_amd64.deb . The official one from Ubuntu doesn't work with my UPS.<br></div><div><br></div><div>Now, this version almost works. The problem is that it's constantly losing connection with the UPS because it keeps falling off the bus and coming back immediately (under a different device number). On /var/log/syslog I have block after block of this, each precisely separated by the same time interval (which gets longer if pollinterval grows):</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><br>Feb 17 06:12:52 myhost kernel: [322433.317805] usb 3-7: USB disconnect, device number 40<br>Feb 17 06:12:52 myhost kernel: [322433.797116] usb 3-7: new low-speed USB device number 41 using xhci_hcd<br>Feb 17 06:12:52 myhost kernel: [322433.825669] usb 3-7: New USB device found, idVendor=06da, idProduct=0201<br>Feb 17 06:12:52 myhost kernel: [322433.825675] usb 3-7: New USB device strings: Mfr=3, Product=1, SerialNumber=0<br>Feb 17 06:12:52 myhost kernel: [322433.825679] usb 3-7: Product: USB Card<br>Feb 17 06:12:52 myhost kernel: [322433.825681] usb 3-7: Manufacturer: PPC<br>Feb 17 06:12:52 myhost kernel: [322433.825849] usb 3-7: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes<br>Feb 17 06:12:52 myhost kernel: [322433.833433] hid-generic 0003:06DA:0201.011E: hiddev0,hidraw0: USB HID v1.11 Device [PPC USB Card] on usb-0000:00:14.0-7/input0<br>Feb 17 06:12:52 myhost mtp-probe: checking bus 3, device 41: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-7"<br>Feb 17 06:12:52 myhost mtp-probe: bus: 3, device: 41 was not an MTP device</blockquote><div><br></div><div>I tried using the synchronous, novendor and norating settings, to no avail. I also tried a longer pollinterval but that just makes it take longer to reconnect. Here's my ups.conf:</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><br><br>[energit]<br>       driver = blazer_usb<br>       port = auto<br>       desc = "Energit MXE II (Centralion Titan Elite)"<br>       vendorid = "06da"<br>       productid = "0201"<br>       subdriver = "phoenix"<br>       protocol = "megatec"<br>       synchronous = yes<br>       novendor = enabled<br>       norating = enabled<br>       pollinterval = "10"</blockquote><div><br></div><div><br></div><div>I tried all the available protocols and subdrivers, and this combination seems to be the one that gets more values.</div><div><br></div><div>Here's the driver's debuging output:</div><div><br></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div># /lib/nut/blazer_usb -u nut -DDDDDDDDD -a energit </div><div>Network UPS Tools - Megatec/Q1 protocol USB driver 0.12 (2.7.3.1)</div><div>   0.000000     send_to_all: SETINFO driver.parameter.port "auto"</div><div>   0.000077     send_to_all: SETINFO driver.parameter.vendorid "06da"</div><div>   0.000100     send_to_all: SETINFO driver.parameter.productid "0201"</div><div>   0.000118     send_to_all: SETINFO driver.parameter.subdriver "phoenix"</div><div>   0.000135     send_to_all: SETINFO driver.parameter.protocol "megatec"</div><div>   0.000154     send_to_all: SETINFO driver.parameter.novendor "enabled"</div><div>   0.000170     send_to_all: SETINFO driver.parameter.norating "enabled"</div><div>   0.000209     debug level is '9'</div><div>   0.300282     Checking device (1D6B/0003) (004/001)</div><div>   0.300432     - VendorID: 1d6b</div><div>   0.300450     - ProductID: 0003</div><div>   0.300461     - Manufacturer: unknown</div><div>   0.300472     - Product: unknown</div><div>   0.300485     - Serial Number: unknown</div><div>   0.300497     - Bus: 004</div><div>   0.300508     - Device release number: 0313</div><div>   0.300519     Trying to match device</div><div>   0.300542     Device does not match - skipping</div><div>   0.300653     Checking device (06DA/0201) (003/104)</div><div>   0.308983     - VendorID: 06da</div><div>   0.309018     - ProductID: 0201</div><div>   0.309031     - Manufacturer: PPC</div><div>   0.309043     - Product: USB Card</div><div>   0.309055     - Serial Number: unknown</div><div>   0.309066     - Bus: 003</div><div>   0.309078     - Device release number: 0000</div><div>   0.309089     Trying to match device</div><div>   0.309153     Device matches</div><div>   0.309177     failed to claim USB device: could not claim interface 0: Device or resource busy</div><div>   0.309465     detached kernel driver from USB device...</div><div>   0.309504     nut_usb_set_altinterface: skipped usb_set_altinterface(udev, 0)</div><div>   0.309525     send_to_all: SETINFO ups.vendorid "06da"</div><div>   0.309540     send_to_all: SETINFO ups.productid "0201"</div><div>   0.309558     send_to_all: SETINFO device.type "ups"</div><div>   0.309573     send_to_all: SETINFO driver.version "2.7.3.1"</div><div>   0.309589     send_to_all: SETINFO driver.version.internal "0.12"</div><div>   0.309603     send_to_all: SETINFO <a href="http://driver.name">driver.name</a> "blazer_usb"</div><div>   0.309640     Trying megatec protocol...</div><div>   1.310743     flush: could not claim interface 0: Device or resource busy</div><div>   1.312141     send: Q1</div><div>   1.532991     read: (226.5 223.7 221.0 021 50.0 2.25 41.5 00000001</div><div>   1.533075     send_to_all: SETINFO input.voltage "226.5"</div><div>   1.533097     send_to_all: SETINFO input.voltage.fault "223.7"</div><div>   1.533115     send_to_all: SETINFO output.voltage "221.0"</div><div>   1.533149     send_to_all: SETINFO ups.load "21"</div><div>   1.533164     send_to_all: SETINFO input.frequency "50.0"</div><div>   1.533184     send_to_all: SETINFO battery.voltage "2.25"</div><div>   1.533199     send_to_all: SETINFO ups.temperature "41.5"</div><div>   1.533213     send_to_all: SETINFO ups.beeper.status "enabled"</div><div>   1.533227     send_to_all: SETINFO ups.type "online"</div><div>   1.533245     send_to_all: SETINFO ups.status "OL"</div><div>   1.533258     Status read in 1 tries</div><div>   1.533270     Supported UPS detected with megatec protocol</div><div>   1.533283     No values provided for battery high/low voltages in ups.conf</div><div><br></div><div>   1.533298     send_to_all: SETINFO battery.voltage.low "-0.87"</div><div>   1.533313     send_to_all: SETINFO battery.voltage.high "-1.08"</div><div>   1.533326     Using 'guestimation' (low: -0.866667, high: -1.083333)!</div><div>   1.533339     Battery runtime will not be calculated (runtimecal not set)</div><div>   1.533354     send_to_all: SETINFO ups.delay.start "180"</div><div>   1.533368     send_to_all: SETINFO ups.delay.shutdown "30"</div><div>   1.533381     send_to_all: ADDCMD beeper.toggle</div><div>   1.533394     send_to_all: ADDCMD load.off</div><div>   1.533406     send_to_all: ADDCMD load.on</div><div>   1.533418     send_to_all: ADDCMD shutdown.return</div><div>   1.533431     send_to_all: ADDCMD shutdown.stayoff</div><div>   1.533443     send_to_all: ADDCMD shutdown.stop</div><div>   1.533476     send_to_all: ADDCMD test.battery.start</div><div>   1.533495     send_to_all: ADDCMD test.battery.start.deep</div><div>   1.533509     send_to_all: ADDCMD test.battery.start.quick</div><div>   1.533521     send_to_all: ADDCMD test.battery.stop</div><div>   1.541014     dump: (8 bytes) => 00 00 00 00 00 00 00 00</div><div>   1.548963     dump: (8 bytes) => 00 00 00 00 00 00 00 00</div><div>   1.556983     dump: (8 bytes) => 00 00 00 00 00 00 00 00</div><div>   1.564983     dump: (8 bytes) => 00 00 00 00 00 00 00 00</div><div>   1.572975     dump: (8 bytes) => 00 00 00 00 00 00 00 00</div><div>   1.580992     dump: (8 bytes) => 00 00 00 00 00 00 00 00</div><div>   1.588977     dump: (8 bytes) => 00 00 00 00 00 00 00 00</div><div>   1.597008     dump: (8 bytes) => 00 00 00 00 00 00 00 00</div><div><font color="#ff0000">   2.596779     send: error sending control message: Connection timed out</font></div><div><font color="#ff0000">   2.596828     blazer_status: short reply</font></div><div><font color="#ff0000">   2.596834     Communications with UPS lost: status read failed!</font></div><div>   2.596895     dstate_init: sock /var/run/nut/blazer_usb-energit open on fd 5</div><div>   2.596907     send_to_all: SETINFO driver.parameter.pollinterval "10"</div><div>   2.596914     send_to_all: SETINFO driver.parameter.synchronous "yes"</div><div>   <font color="#ff0000">2.604987     dump: (8 bytes) => 00 00 00 00 00 00 00 00</font></div><div>   2.614581     flush: error sending control message: Connection timed out</div><div>   2.614646     send: error sending control message: No such device</div><div>   2.614679     blazer_status: short reply</div><div>   2.614693     Communications with UPS lost: status read failed!</div></blockquote><div><br></div><div>So it seems to be able to read eight 8-bytes blocks but then fails to read the ninth block (not that this data makes sense to me, since it gets all zeroes). Now, I'm not sure I understand what was discussed in the old thread I referenced above, but there seemed to be some issue with trying to read more than 64 bytes, which seems suspicious because that's the same thing happening here.</div><div><br></div><div>Any help would be appreciated. Thanks.</div><div><br></div><div><br></div><div>LT</div></div>