<div dir="ltr"><div>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 :)<br><br></div><div>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 ;)<br></div><div><br></div><div>Quoting from a recent post:<br><br>
<div>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">https://github.com/networkupstools/nut/issues/1690#issuecomment-1455206002</a></div><div><br></div><div>Can try a pre-built tarball from CI <a href="https://ci.appveyor.com/project/nut-travis/nut/history" target="_blank">https://ci.<span class="gmail-il">appveyor</span>.com/project/nut-travis/nut/history</a><br></div><div>e.g. for currently-latest master-branch build: <a href="https://ci.appveyor.com/project/nut-travis/nut/builds/48009107/artifacts" target="_blank">https://ci.<span class="gmail-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">https://ci.<span class="gmail-il">appveyor</span>.com/api/buildjobs/kn42sp8aek4md9va/artifacts/NUT-for-Windows-x86_64-SNAPSHOT-2.8.0.725-master.7z</a></div><div><br></div><div>Good luck,</div><div>Jim</div><div><br></div><div><br></div>

</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Sep 14, 2023 at 2:31 PM Alessandro Mandelli <<a href="mailto:mandelli.alessandro@ngi.it">mandelli.alessandro@ngi.it</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg-6542935067518974314"><div lang="IT" style="overflow-wrap: break-word;"><div class="m_-6542935067518974314WordSection1"><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.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">I’d like a native win64 app. <u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Anyway, thanks for your help<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-width:1pt medium medium;border-style:solid none none;border-color:rgb(225,225,225) currentcolor currentcolor;padding:3pt 0cm 0cm"><p class="MsoNormal"><b>Da:</b> Jim Klimov <<a href="mailto:jimklimov%2Bnut@gmail.com" target="_blank">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">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">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">mandelli.alessandro@ngi.it</a>> wrote:<u></u><u></u></p></div><blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm"><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-width:1pt medium medium;border-style:solid none none;border-color:rgb(225,225,225) currentcolor currentcolor;padding:3pt 0cm 0cm"><p class="MsoNormal"><b>Da:</b> Jim Klimov <<a href="mailto:jimklimov%2Bnut@gmail.com" target="_blank">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">mandelli.alessandro@ngi.it</a>><br><b>Cc:</b> <a href="mailto:nut-upsuser@alioth-lists.debian.net" target="_blank">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">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">nut-upsuser@alioth-lists.debian.net</a>> wrote:<u></u><u></u></p></div><blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt"><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">Nut-upsuser@alioth-lists.debian.net</a><br><a href="https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser" target="_blank">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>