<div dir="ltr">Hi,
<div><br></div><div style>I have a bunch of UPSs, most connected to pcs with Linux working 100% with NUT.</div><div style>The only one I have a problem with, is connected to Windows 7 64bit, and I used the straight MSI installed from the website named NUT-Installer-2.6.5-4.msi</div>
<div style><br></div><div style>Took me a while to find a way to get it to work, but it is ugly for now. Just starting up the service results in a NUT not working at all, and I tracked it down to the blazer_ser driver not finding the UPS. Debugging shows some problem with the communication on my serial-usb port. What I have found is, that it doesn't work until I add 4x debug flags. eg: -DDDD</div>
<div style><br></div><div style>Here is a copy of my ups.conf:</div><div style><br></div><div style><div>[myups]</div><div><span class="" style="white-space:pre">    </span>driver = blazer_ser</div><div><span class="" style="white-space:pre">        </span>port = com6</div>
<div><span class="" style="white-space:pre">    </span>desc = "Proline UPS"</div><div><br></div><div><br></div><div style>Here is the output from blazer_ser not working:</div><div style><br></div><div style><div>C:\Program Files (x86)\NUT\bin>blazer_ser -ups <b>-DDD</b> -a myups</div>
<div>Network UPS Tools - Megatec/Q1 protocol serial driver 1.55 (2.6.5-3780M)</div><div>   0.000000     debug level is '3'</div><div>   0.002000     w32_serial_open (com6)</div><div>   0.177010     setting initial state on com6</div>
<div>   0.231013     00000050 = w32_serial_open (com6)</div><div>   0.236014     Warning: no locking method is available: No error [The operation completed successfully. ]</div><div>   0.244014     vmin_ 0, vtime_ 0</div>
<div>   0.346020     action 0</div><div>   0.398023     vtime 0, vmin 1</div><div>   0.401023     ReadTotalTimeoutConstant -2, ReadIntervalTimeout -1, ReadTotalTimeoutMultiplier -1</div><div>   0.408024     vmin_ 1, vtime_ 0</div>
<div>   0.410024     action 0</div><div>   0.412024     vtime 0, vmin -1</div><div>   0.414024     ReadTotalTimeoutConstant -2, ReadIntervalTimeout -1, ReadTotalTimeoutMultiplier -1</div><div>   0.521030     Trying megatec protocol...</div>
<div>   0.624036     send: 'Q1'</div><div>   1.874107     read: Input/output error</div><div>   1.876108     blazer_status: short reply</div><div>   1.878108     Status read 1 failed</div><div>   1.980113     send: 'Q1'</div>
<div>   3.226185     read: Input/output error</div><div>   3.229185     blazer_status: short reply</div><div>   3.232185     Status read 2 failed</div><div>   3.334191     send: 'Q1'</div><div>   4.579262     read: Input/output error</div>
<div>   4.581262     blazer_status: short reply</div><div>   4.584262     Status read 3 failed</div><div>   4.586263     Trying mustek protocol...</div><div>   4.688268     send: 'QS'</div><div>   5.716327     read: Input/output error</div>
<div>   5.719327     blazer_status: short reply</div><div>   5.722328     Status read 1 failed</div><div>   5.825333     send: 'QS'</div><div>   6.851392     read: Input/output error</div><div>   6.854392     blazer_status: short reply</div>
<div>   6.857392     Status read 2 failed</div><div>   6.959398     send: 'QS'</div><div>   7.987457     read: Input/output error</div><div>   7.990457     blazer_status: short reply</div><div>   7.993457     Status read 3 failed</div>
<div>   7.995458     Trying megatec/old protocol...</div><div>   8.098463     send: 'D'</div><div>   9.116522     read: Input/output error</div><div>   9.119522     blazer_status: short reply</div><div>   9.121522     Status read 1 failed</div>
<div>   9.224528     send: 'D'</div><div>  10.242586     read: Input/output error</div><div>  10.245586     blazer_status: short reply</div><div>  10.247586     Status read 2 failed</div><div>  10.349592     send: 'D'</div>
<div>  11.368650     read: Input/output error</div><div>  11.371651     blazer_status: short reply</div><div>  11.374651     Status read 3 failed</div><div>  11.376651     Trying zinto protocol...</div><div>  11.479657     send: 'Q1'</div>
<div>  12.727728     read: Input/output error</div><div>  12.730728     blazer_status: short reply</div><div>  12.733729     Status read 1 failed</div><div>  12.836734     send: 'Q1'</div><div>  14.081806     read: Input/output error</div>
<div>  14.084806     blazer_status: short reply</div><div>  14.086806     Status read 2 failed</div><div>  14.188812     send: 'Q1'</div><div>  15.435883     read: Input/output error</div><div>  15.438883     blazer_status: short reply</div>
<div>  15.441883     Status read 3 failed</div><div>  15.443884     No supported UPS detected</div><div><br></div><div><br></div><div style>And here is the output when it works with the 4x -DDDD flag:</div><div style><br>
</div><div style><div>C:\Program Files (x86)\NUT\bin>blazer_ser -ups <b>-DDDD</b> -a myups</div><div>Network UPS Tools - Megatec/Q1 protocol serial driver 1.55 (2.6.5-3780M)</div><div>   0.000000     debug level is '4'</div>
<div>   0.002000     w32_serial_open (com6)</div><div>   0.177010     setting initial state on com6</div><div>   0.231014     00000050 = w32_serial_open (com6)</div><div>   0.236014     Warning: no locking method is available: No error [The operation completed successfully. ]</div>
<div>   0.244014     vmin_ 0, vtime_ 0</div><div>   0.346020     action 0</div><div>   0.398023     vtime 0, vmin 1</div><div>   0.401023     ReadTotalTimeoutConstant -2, ReadIntervalTimeout -1, ReadTotalTimeoutMultiplier -1</div>
<div>   0.408024     vmin_ 1, vtime_ 0</div><div>   0.410024     action 0</div><div>   0.412024     vtime 0, vmin -1</div><div>   0.414024     ReadTotalTimeoutConstant -2, ReadIntervalTimeout -1, ReadTotalTimeoutMultiplier -1</div>
<div>   0.521030     Trying megatec protocol...</div><div>   0.625036     send: 'Q1'</div><div>   0.627036     w32_serial_read : ulen 512, vmin_ -1, vtime_ 0, hEvent 00000054</div><div>   0.642037     w32_serial_read : characters are available on input buffer</div>
<div>   0.647037     w32_serial_read : Reading 1 characters</div><div>   0.651038     w32_serial_read : total characters read = 1</div><div>   0.654038     w32_serial_read : Reading 2 characters</div><div>   0.658038     w32_serial_read : total characters read = 3</div>
<div>   0.661038     w32_serial_read : Reading 1 characters</div><div>   0.664038     w32_serial_read : total characters read = 4</div><div>   0.668039     w32_serial_read : Reading 2 characters</div><div>   0.670039     w32_serial_read : total characters read = 6</div>
<div>   0.673039     w32_serial_read : Reading 1 characters</div><div>   0.676039     w32_serial_read : total characters read = 7</div><div>   0.679039     w32_serial_read : Reading 1 characters</div><div>   0.682039     w32_serial_read : total characters read = 8</div>
<div>   0.685040     w32_serial_read : Reading 1 characters</div><div>   0.687040     w32_serial_read : total characters read = 9</div><div>   0.690040     w32_serial_read : Reading 1 characters</div><div>   0.693040     w32_serial_read : total characters read = 10</div>
<div>   0.696040     w32_serial_read : Reading 1 characters</div><div>   0.698040     w32_serial_read : total characters read = 11</div><div>   0.700040     w32_serial_read : Reading 1 characters</div><div>   0.702040     w32_serial_read : total characters read = 12</div>
<div>   0.703041     w32_serial_read : Reading 1 characters</div><div>   0.705041     w32_serial_read : total characters read = 13</div><div>   0.707041     w32_serial_read : Reading 1 characters</div><div>   0.709041     w32_serial_read : total characters read = 14</div>
<div>   0.710041     w32_serial_read : characters are available on input buffer</div><div>   0.713041     w32_serial_read : Reading 1 characters</div><div>   0.715041     w32_serial_read : total characters read = 15</div>
<div>   0.716041     w32_serial_read : characters are available on input buffer</div><div>   0.719041     w32_serial_read : Reading 1 characters</div><div>   0.721042     w32_serial_read : total characters read = 16</div>
<div>   0.723042     w32_serial_read : Reading 1 characters</div><div>   0.724042     w32_serial_read : total characters read = 17</div><div>   0.726042     w32_serial_read : Reading 1 characters</div><div>   0.728042     w32_serial_read : total characters read = 18</div>
<div>   0.730042     w32_serial_read : characters are available on input buffer</div><div>   0.732042     w32_serial_read : Reading 1 characters</div><div>   0.734042     w32_serial_read : total characters read = 19</div>
<div>   0.736042     w32_serial_read : Reading 1 characters</div><div>   0.738043     w32_serial_read : total characters read = 20</div><div>   0.739043     w32_serial_read : characters are available on input buffer</div>
<div>   0.742043     w32_serial_read : Reading 1 characters</div><div>   0.744043     w32_serial_read : total characters read = 21</div><div>   0.745043     w32_serial_read : characters are available on input buffer</div>
<div>   0.748043     w32_serial_read : Reading 1 characters</div><div>   0.750043     w32_serial_read : total characters read = 22</div><div>   0.752043     w32_serial_read : Reading 1 characters</div><div>   0.753043     w32_serial_read : total characters read = 23</div>
<div>   0.755044     w32_serial_read : characters are available on input buffer</div><div>   0.757044     w32_serial_read : Reading 1 characters</div><div>   0.759044     w32_serial_read : total characters read = 24</div>
<div>   0.761044     w32_serial_read : Reading 1 characters</div><div>   0.763044     w32_serial_read : total characters read = 25</div><div>   0.765044     w32_serial_read : characters are available on input buffer</div>
<div>   0.767044     w32_serial_read : Reading 1 characters</div><div>   0.769044     w32_serial_read : total characters read = 26</div><div>   0.771044     w32_serial_read : characters are available on input buffer</div>
<div>   0.773045     w32_serial_read : Reading 1 characters</div><div>   0.775045     w32_serial_read : total characters read = 27</div><div>   0.777045     w32_serial_read : Reading 1 characters</div><div>   0.779045     w32_serial_read : total characters read = 28</div>
<div>   0.781045     w32_serial_read : characters are available on input buffer</div><div>   0.783045     w32_serial_read : Reading 1 characters</div><div>   0.785045     w32_serial_read : total characters read = 29</div>
<div>   0.787045     w32_serial_read : Reading 1 characters</div><div>   0.789045     w32_serial_read : total characters read = 30</div><div>   0.790046     w32_serial_read : characters are available on input buffer</div>
<div>   0.793046     w32_serial_read : Reading 1 characters</div><div>   0.794046     w32_serial_read : total characters read = 31</div><div>   0.796046     w32_serial_read : Reading 1 characters</div><div>   0.798046     w32_serial_read : total characters read = 32</div>
<div>   0.800046     w32_serial_read : characters are available on input buffer</div><div>   0.802046     w32_serial_read : Reading 1 characters</div><div>   0.804046     w32_serial_read : total characters read = 33</div>
<div>   0.806046     w32_serial_read : Reading 1 characters</div><div>   0.807047     w32_serial_read : total characters read = 34</div><div>   0.809047     w32_serial_read : characters are available on input buffer</div>
<div>   0.812047     w32_serial_read : Reading 1 characters</div><div>   0.813047     w32_serial_read : total characters read = 35</div><div>   0.815047     w32_serial_read : characters are available on input buffer</div>
<div>   0.818047     w32_serial_read : Reading 1 characters</div><div>   0.819047     w32_serial_read : total characters read = 36</div><div>   0.821047     w32_serial_read : Reading 1 characters</div><div>   0.823047     w32_serial_read : total characters read = 37</div>
<div>   0.825048     w32_serial_read : characters are available on input buffer</div><div>   0.827048     w32_serial_read : Reading 1 characters</div><div>   0.829048     w32_serial_read : total characters read = 38</div>
<div>   0.831048     w32_serial_read : Reading 1 characters</div><div>   0.833048     w32_serial_read : total characters read = 39</div><div>   0.834048     w32_serial_read : characters are available on input buffer</div>
<div>   0.837048     w32_serial_read : Reading 1 characters</div><div>   0.839048     w32_serial_read : total characters read = 40</div><div>   0.841048     w32_serial_read : Reading 1 characters</div><div>   0.842049     w32_serial_read : total characters read = 41</div>
<div>   0.844049     w32_serial_read : characters are available on input buffer</div><div>   0.846049     w32_serial_read : Reading 1 characters</div><div>   0.848049     w32_serial_read : total characters read = 42</div>
<div>   0.850049     w32_serial_read : characters are available on input buffer</div><div>   0.853049     w32_serial_read : Reading 1 characters</div><div>   0.855049     w32_serial_read : total characters read = 43</div>
<div>   0.856049     w32_serial_read : Reading 1 characters</div><div>   0.858049     w32_serial_read : total characters read = 44</div><div>   0.860050     w32_serial_read : characters are available on input buffer</div>
<div>   0.863050     w32_serial_read : Reading 1 characters</div><div>   0.864050     w32_serial_read : total characters read = 45</div><div>   0.866050     w32_serial_read : Reading 1 characters</div><div>   0.868050     w32_serial_read : total characters read = 46</div>
<div>   0.870050     w32_serial_read : characters are available on input buffer</div><div>   0.872050     w32_serial_read : Reading 1 characters</div><div>   0.874050     w32_serial_read : total characters read = 47</div>
<div>   0.875050     w32_serial_read : characters are available on input buffer</div><div>   0.878051     w32_serial_read : Reading 1 characters</div><div>   1.879108     w32_serial_read : total characters read = 47</div>
<div>   1.884108     read: '(227.0 227.0 227.0 029 51.0 14.0 41.0 00001001'</div><div>   1.889108     Status read in 1 tries</div><div><b>   1.891109     Supported UPS detected with megatec protocol</b></div><div>
   1.996115     send: 'F'</div><div>   1.997115     w32_serial_read : ulen 512, vmin_ -1, vtime_ 0, hEvent 00000054</div><div>   2.009115     w32_serial_read : characters are available on input buffer</div><div>   2.014116     w32_serial_read : Reading 1 characters</div>
<div>   2.017116     w32_serial_read : total characters read = 1</div><div>   2.020116     w32_serial_read : Reading 2 characters</div><div>   2.022116     w32_serial_read : total characters read = 3</div><div>   2.024116     w32_serial_read : Reading 1 characters</div>
<div>   2.026116     w32_serial_read : total characters read = 4</div><div>   2.028116     w32_serial_read : Reading 1 characters</div><div>   2.030116     w32_serial_read : total characters read = 5</div><div>   2.033117     w32_serial_read : characters are available on input buffer</div>
<div>   2.035117     w32_serial_read : Reading 1 characters</div><div>   2.037117     w32_serial_read : total characters read = 6</div><div>   2.040117     w32_serial_read : Reading 1 characters</div><div>   2.042117     w32_serial_read : total characters read = 7</div>
<div>   2.044117     w32_serial_read : characters are available on input buffer</div><div>   2.047117     w32_serial_read : Reading 1 characters</div><div>   2.049118     w32_serial_read : total characters read = 8</div><div>
   2.051118     w32_serial_read : Reading 1 characters</div><div>   2.053118     w32_serial_read : total characters read = 9</div><div>   2.055118     w32_serial_read : Reading 1 characters</div><div>   2.056118     w32_serial_read : total characters read = 10</div>
<div>   2.058118     w32_serial_read : characters are available on input buffer</div><div>   2.061118     w32_serial_read : Reading 1 characters</div><div>   2.062118     w32_serial_read : total characters read = 11</div>
<div>   2.064118     w32_serial_read : characters are available on input buffer</div><div>   2.067119     w32_serial_read : Reading 1 characters</div><div>   2.068119     w32_serial_read : total characters read = 12</div>
<div>   2.070119     w32_serial_read : Reading 1 characters</div><div>   2.072119     w32_serial_read : total characters read = 13</div><div>   2.074119     w32_serial_read : characters are available on input buffer</div>
<div>   2.076119     w32_serial_read : Reading 1 characters</div><div>   2.078119     w32_serial_read : total characters read = 14</div><div>   2.080119     w32_serial_read : Reading 1 characters</div><div>   2.082119     w32_serial_read : total characters read = 15</div>
<div>   2.084120     w32_serial_read : characters are available on input buffer</div><div>   2.086120     w32_serial_read : Reading 1 characters</div><div>   2.088120     w32_serial_read : total characters read = 16</div>
<div>   2.090120     w32_serial_read : Reading 1 characters</div><div>   2.091120     w32_serial_read : total characters read = 17</div><div>   2.093120     w32_serial_read : characters are available on input buffer</div>
<div>   2.096120     w32_serial_read : Reading 1 characters</div><div>   2.097120     w32_serial_read : total characters read = 18</div><div>   2.099120     w32_serial_read : characters are available on input buffer</div>
<div>   2.102121     w32_serial_read : Reading 1 characters</div><div>   2.103121     w32_serial_read : total characters read = 19</div><div>   2.105121     w32_serial_read : characters are available on input buffer</div>
<div>   2.108121     w32_serial_read : Reading 1 characters</div><div>   2.109121     w32_serial_read : total characters read = 20</div><div>   2.111121     w32_serial_read : Reading 1 characters</div><div>   2.113121     w32_serial_read : total characters read = 21</div>
<div>   2.115121     w32_serial_read : characters are available on input buffer</div><div>   2.117121     w32_serial_read : Reading 1 characters</div><div>   2.119122     w32_serial_read : total characters read = 22</div>
<div>   2.121122     w32_serial_read : characters are available on input buffer</div><div>   2.123122     w32_serial_read : Reading 1 characters</div><div><br></div><div style>At this point I can start upsd manually and then finally it works:</div>
<div style><br></div><div style><div>C:\Program Files (x86)\NUT\sbin>upsd -D -4 -q</div><div>Network UPS Tools upsd 2.6.5-3780M</div><div>   0.000000     listening on 127.0.0.1 port 3493</div><div>   2.003114     Connected to UPS [myups]: blazer_ser-myups</div>
<div>   2.650151     User <a href="mailto:upsmon@127.0.0.1">upsmon@127.0.0.1</a> logged into UPS [myups]</div><div><br></div><div><br></div><div style>And the output from upsc:</div><div style><br></div><div style><div>C:\Program Files (x86)\NUT\bin>upsc myups</div>
<div>upscli not initialized, force initialisation without SSL configuration</div><div>Init SSL without certificate database</div><div>Can not connect to localhost in SSL, continue uncrypted</div><div>battery.charge: 100</div>
<div>battery.voltage: 13.90</div><div>battery.voltage.high: 13.00</div><div>battery.voltage.low: 10.40</div><div>battery.voltage.nominal: 12.0</div><div>device.mfr:</div><div>device.model: PCSTAR-PRO</div><div>device.type: ups</div>
<div><a href="http://driver.name">driver.name</a>: blazer_ser</div><div>driver.parameter.pollinterval: 2</div><div>driver.parameter.port: com6</div><div>driver.version: 2.6.5-3780M</div><div>driver.version.internal: 1.55</div>
<div>input.current.nominal: 3.0</div><div>input.frequency: 50.0</div><div>input.frequency.nominal: 50</div><div>input.voltage: 227.0</div><div>input.voltage.fault: 227.0</div><div>input.voltage.nominal: 230</div><div>output.voltage: 227.0</div>
<div>ups.beeper.status: enabled</div><div>ups.delay.shutdown: 30</div><div>ups.delay.start: 180</div><div>ups.firmware: V1.02-1211</div><div>ups.load: 36</div><div>ups.mfr:</div><div>ups.model: PCSTAR-PRO</div><div>ups.status: OL</div>
<div>ups.temperature: 41.0</div><div>ups.type: offline / line interactive</div><div><br></div><div><br></div><div><br></div><div><br></div><div style>What I don't understand is, what the driver does different with -DDDD vs -DDD or less D flags. But I am pretty certain that small difference in the code could fix this driver working for me in Windows without debugging, like it does on Linux (Ubuntu).</div>
<div style><br></div><div style><br></div><div style>Thank you in advance,</div><div style>David Bezuidenhout</div></div><div><br></div><div><br></div></div></div></div></div></div>