<div dir="auto">One tool for one job :)<div dir="auto"><br></div><div dir="auto">You can have another protocol client with GUI. NUT includes a python (qt5 or gtk) set of UI clients.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Sep 14, 2023, 17:06 Alessandro Mandelli <<a href="mailto:mandelli.alessandro@ngi.it">mandelli.alessandro@ngi.it</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="IT" link="blue" vlink="purple" style="word-wrap:break-word"><div class="m_-246365564742731861WordSection1"><p class="MsoNormal"><span lang="EN-US">It works, but I got an allergy for CLI<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">PS C:\Program Files (x86)\NUT\bin> .\upsc.exe UPS<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">device.mfr: Richcomm dry-contact to USB solution<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">device.model: UPS USB MON V1.4<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">device.serial: unknown<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">device.type: ups<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">driver.debug: 0<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">driver.flag.allow_killpower: 0<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><a href="http://driver.name" target="_blank" rel="noreferrer">driver.name</a>: richcomm_usb<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">driver.parameter.pollinterval: 2<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">driver.parameter.port: auto<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">driver.parameter.synchronous: auto<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">driver.state: quiet<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">driver.version: 2.8.0-2350-g9c6b22e61<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">driver.version.internal: 0.12<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">ups.mfr: Richcomm dry-contact to USB solution<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">ups.model: UPS USB MON V1.4<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">ups.productid: 1234<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">ups.serial: unknown<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">ups.status: OL<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">ups.vendorid: 0925<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm 0cm 0cm"><p class="MsoNormal"><b>Da:</b> Jim Klimov <<a href="mailto:jimklimov%2Bnut@gmail.com" target="_blank" rel="noreferrer">jimklimov+nut@gmail.com</a>> <br><b>Inviato:</b> giovedì 14 settembre 2023 15:21<br><b>A:</b> Alessandro Mandelli <<a href="mailto:mandelli.alessandro@ngi.it" target="_blank" rel="noreferrer">mandelli.alessandro@ngi.it</a>><br><b>Cc:</b> Arnaud Quette via Nut-upsuser <<a href="mailto:nut-upsuser@alioth-lists.debian.net" target="_blank" rel="noreferrer">nut-upsuser@alioth-lists.debian.net</a>><br><b>Oggetto:</b> Re: [Nut-upsuser] Info for decoding report from UPS<u></u><u></u></p></div><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal" style="margin-bottom:12.0pt">Ah, I see. My take is that using or adapting something that exists is easier than starting from scratch - but to each their own. Surely you'll learn a lot :)<u></u><u></u></p></div><div><p class="MsoNormal">Still, just to clarify: after the NUT v2.8.0 release I began a slow revival of old NUT for Windows effort (abandoned a decade ago at 2.6.5-8 based branch), so now there are regular native win64 (CLI) builds regularly produced by CI, as a tarball of a result of `make install` area (plus the dependency DLLs). They can run in-place and do work for testing NUT behaviors on the platform, but are not "properly packaged" yet, have no installer, and indeed may need fiddling with USB libraries in particular (so that Windows "HID Battery" driver won't get in the way and would let libusb handle that node for NUT), but still sounds easier to give this a shot before constructing something new. This OS integration bit may have worked in that older 2.6.5 codebase, just I had no time to look hard at this recently, and nobody else stepped up either. PRs to complete this part are welcome, so fiddling would not be needed ;)<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal" style="margin-bottom:12.0pt">Quoting from a recent post:<u></u><u></u></p><div><p class="MsoNormal">For kicks, you can try starting different drivers from a NUT for Windows build - I'd be interested to know if it actually picks up a serial port device (with nutdrv_qx as a  first stop, to test for Megatec Qx protocol family). Getting USB handled directly may be quite a hassle currently (without a proper elevated installer), but may be doable too: <a href="https://github.com/networkupstools/nut/issues/1690#issuecomment-1455206002" target="_blank" rel="noreferrer">https://github.com/networkupstools/nut/issues/1690#issuecomment-1455206002</a><u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Can try a pre-built tarball from CI <a href="https://ci.appveyor.com/project/nut-travis/nut/history" target="_blank" rel="noreferrer">https://ci.<span class="m_-246365564742731861gmail-il">appveyor</span>.com/project/nut-travis/nut/history</a><u></u><u></u></p></div><div><p class="MsoNormal">e.g. for currently-latest master-branch build: <a href="https://ci.appveyor.com/project/nut-travis/nut/builds/48009107/artifacts" target="_blank" rel="noreferrer">https://ci.<span class="m_-246365564742731861gmail-il">appveyor</span>.com/project/nut-travis/nut/builds/48009107/artifacts</a> => <a href="https://ci.appveyor.com/api/buildjobs/kn42sp8aek4md9va/artifacts/NUT-for-Windows-x86_64-SNAPSHOT-2.8.0.725-master.7z" target="_blank" rel="noreferrer">https://ci.<span class="m_-246365564742731861gmail-il">appveyor</span>.com/api/buildjobs/kn42sp8aek4md9va/artifacts/NUT-for-Windows-x86_64-SNAPSHOT-2.8.0.725-master.7z</a><u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Good luck,<u></u><u></u></p></div><div><p class="MsoNormal">Jim<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div></div></div><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal">On Thu, Sep 14, 2023 at 2:31 PM Alessandro Mandelli <<a href="mailto:mandelli.alessandro@ngi.it" target="_blank" rel="noreferrer">mandelli.alessandro@ngi.it</a>> wrote:<u></u><u></u></p></div><blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm"><div><div><div><p class="MsoNormal"><span lang="EN-US">Yeah, existing packages and libraries don’t work for me, introduce overhead and require fiddling well beyond the capabilities of a standard user.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">I’d like a native win64 app. </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">Anyway, thanks for your help</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p><div style="border:none;border-top:solid windowtext 1.0pt;padding:3.0pt 0cm 0cm 0cm;border-color:currentcolor currentcolor"><p class="MsoNormal"><b>Da:</b> Jim Klimov <<a href="mailto:jimklimov%2Bnut@gmail.com" target="_blank" rel="noreferrer">jimklimov+nut@gmail.com</a>> <br><b>Inviato:</b> giovedì 14 settembre 2023 13:17<br><b>A:</b> Alessandro Mandelli <<a href="mailto:mandelli.alessandro@ngi.it" target="_blank" rel="noreferrer">mandelli.alessandro@ngi.it</a>><br><b>Cc:</b> Arnaud Quette via Nut-upsuser <<a href="mailto:nut-upsuser@alioth-lists.debian.net" target="_blank" rel="noreferrer">nut-upsuser@alioth-lists.debian.net</a>><br><b>Oggetto:</b> Re: [Nut-upsuser] Info for decoding report from UPS<u></u><u></u></p></div><p class="MsoNormal"> <u></u><u></u></p><div><p class="MsoNormal">So, do you plan to write some new program for that UPS instead of trying to use NUT? (Note there are also regular Windows builds on CI - with some caveats so far).<u></u><u></u></p><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">I'm commuting now so can't find links easily, but can suggest you to peruse the issue/PR tracker, there's a discussion about an SMS Brazil device with links to PoC Python "driver" that's relatively straightforward. Or read up NUT drivers, nutdrv_qx, blazer, and some others for megatec protocol dialects. NUT website should have a protocol library with formal definitions for some of those.<u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">But really, not reinventing the wheel (at least, checking if ours does roll) might be the faster option ;)<u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">Jim<u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div></div><p class="MsoNormal"> <u></u><u></u></p><div><div><p class="MsoNormal">On Thu, Sep 14, 2023, 13:07 Alessandro Mandelli <<a href="mailto:mandelli.alessandro@ngi.it" target="_blank" rel="noreferrer">mandelli.alessandro@ngi.it</a>> wrote:<u></u><u></u></p></div><blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)"><div><div><p class="MsoNormal"><span lang="EN-US">Thanks. I forgot to mention I am developing in c# for Windows.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">Porting or using existing ports seems like an effort with swinging results.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">My prototype is working, at least as proof of concept. I’d just like some directions to decode the raw reports.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">Thanks for your help.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p><div style="border:none;border-top:solid windowtext 1.0pt;padding:3.0pt 0cm 0cm 0cm;border-color:currentcolor currentcolor"><p class="MsoNormal"><b>Da:</b> Jim Klimov <<a href="mailto:jimklimov%2Bnut@gmail.com" target="_blank" rel="noreferrer">jimklimov+nut@gmail.com</a>> <br><b>Inviato:</b> giovedì 14 settembre 2023 11:48<br><b>A:</b> Alessandro Mandelli <<a href="mailto:mandelli.alessandro@ngi.it" target="_blank" rel="noreferrer">mandelli.alessandro@ngi.it</a>><br><b>Cc:</b> <a href="mailto:nut-upsuser@alioth-lists.debian.net" target="_blank" rel="noreferrer">nut-upsuser@alioth-lists.debian.net</a><br><b>Oggetto:</b> Re: [Nut-upsuser] Info for decoding report from UPS<u></u><u></u></p></div><p class="MsoNormal"> <u></u><u></u></p><div><div><p class="MsoNormal">Seems like recent work on nutdrv_qx subdriver armac (merged to master last month) could handle it, or some older QX drivers like richcomm if it is a different brew of a loosely similar product. <u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">Try following <a href="https://github.com/networkupstools/nut/wiki/Building-NUT-for-in%E2%80%90place-upgrades-or-non%E2%80%90disruptive-tests" target="_blank" rel="noreferrer">https://github.com/networkupstools/nut/wiki/Building-NUT-for-in%E2%80%90place-upgrades-or-non%E2%80%90disruptive-tests</a> for example, to check if it would "just work" now?<u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">Jim<u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div></div><p class="MsoNormal"> <u></u><u></u></p><div><div><p class="MsoNormal">On Thu, Sep 14, 2023 at 9:40 AM Alessandro Mandelli via Nut-upsuser <<a href="mailto:nut-upsuser@alioth-lists.debian.net" target="_blank" rel="noreferrer">nut-upsuser@alioth-lists.debian.net</a>> wrote:<u></u><u></u></p></div><blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)"><div><div><div><p class="MsoNormal"><span lang="EN-US">Hi, everybody, I just subscribed, though I’ve been lurking around for some time. </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">I searched for my question in the archive, but I wasn’t able to find an answer.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">Sorry if this question has been asked before.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">I am in the process of writing an interfacing software.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">After some trial and error, I was able to query the UPS and receive an answer, though I am not sure how to decode the report.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">The UPS is generic, non branded with VID/PID 0925/1234.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">The report is 6 bytes long and raw data look like “0x01 0x04 0x02 0xDE 0xFE 0xFF”. (The fifth byte changes now and then).</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">Any help pointing me to the right decoding table would be much appreciated.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">Cheers</span><u></u><u></u></p></div></div><p class="MsoNormal">_______________________________________________<br>Nut-upsuser mailing list<br><a href="mailto:Nut-upsuser@alioth-lists.debian.net" target="_blank" rel="noreferrer">Nut-upsuser@alioth-lists.debian.net</a><br><a href="https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser" target="_blank" rel="noreferrer">https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser</a><u></u><u></u></p></div></blockquote></div></div></div></blockquote></div></div></div></div></blockquote></div></div></div></blockquote></div>