<div dir="auto">I guess that issue can indeed get closed, especially as there was no pushback feature-wise about any DOA code. Usually there is an (un)weeding season in the issue tracker as a yet another release date comes up.<div dir="auto"><br></div><div dir="auto">I've added a cross-link to PR #2663 for posterity; I can't elaborate on why the author chose to pull it down - just don't know. Maybe he worked somewhere that partnered with APC or had an NDA, and that could be legally vulnerable compared to a random John Doe making a "more provably" clean-room implementation.<div dir="auto"><br></div><div dir="auto">BTW, I saw your great post summarizing APC models and protocols on apcupsd list recently - may I scrape that thread into NUT Wiki (or even ask you to do so more expertly)? :)</div><div dir="auto"><br></div><div dir="auto">Jim</div></div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Thu, Jul 9, 2026, 09:23 Ted Mittelstaedt via Nut-upsdev <<a href="mailto:nut-upsdev@alioth-lists.debian.net">nut-upsdev@alioth-lists.debian.net</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"><br>
Almost 2 years Oct 17 2024 ago a PR was proposed to add MicroLink to <br>
NUT. That was open for 1 week then closed with a cryptic comment that <br>
the proposer was talking to the NUT maintainers.<br>
<br>
Then a few months ago another PR was proposed with an experimental <br>
MicroLink driver which was merged:<br>
<br>
<a href="https://github.com/networkupstools/nut/pull/3406" rel="noreferrer noreferrer" target="_blank">https://github.com/networkupstools/nut/pull/3406</a><br>
<br>
My question to the list is why is the original PR 1426 still open?<br>
<br>
I put a reference to 3406 in 1426 so maybe that will help - but - am I <br>
correct in that we have so many open issues in NUT these days that <br>
people who open new issues are NOT bothering to verify if their issue <br>
was already opened?<br>
<br>
In a word, has the issues in NUT's github gotten ....completely overgrown?<br>
<br>
Take for an example, an issue that is 13 years old - still open:<br>
<br>
<a href="https://github.com/networkupstools/nut/issues/20" rel="noreferrer noreferrer" target="_blank">https://github.com/networkupstools/nut/issues/20</a><br>
<br>
Last touched by Jim 3 years ago and left open. But, isn't it completed?<br>
<br>
Other repo's have notifications that go out on PRs that go stale. If <br>
the original PR has no activity on it then it closes.<br>
<br>
I have a hard time believing there's over 900 unique issues in the NUT <br>
github.<br>
<br>
I'm familiar with common ways of coalescing PRs in repos - how would it <br>
be best done here?<br>
<br>
Ted<br>
<br>
On 5/20/2022 11:21 AM, Eetu Rasilainen via Nut-upsdev wrote:<br>
> Hi there,<br>
><br>
> I am the user who opened the GitHub issue regarding APC-MicroLink UPS <br>
> support.<br>
><br>
> On 5/14/2022 Ted Mittelstaedt wrote:<br>
><br>
> > I'll ask the obvious which is wouldn't it be easier to write a driver<br>
> > for NUT that would exec python code (or other scripting languages)<br>
> > that talked to the UPS?<br>
><br>
> official support for Python-based drivers sounds like a great idea. If <br>
> this was somehow supported I would instantly start working on a <br>
> MicroLink-driver based on the awesome reverse engineering work <br>
> provided by GitHub user klaasdc.<br>
><br>
> Shouldn't this be pretty straightforward? I have also tried to start <br>
> working on a C version, but I failed miserably. This is really not my <br>
> environment. I guess a good starting point could be Python's "ctypes" <br>
> module, which allows for calling C routines. Does anybody have any <br>
> experience with that?<br>
><br>
> And as Ted mentioned, Python bindings for drivers would open up the <br>
> world for web scrapers and all those fancy things. What are the <br>
> general thoughts about Python driver bindings?<br>
><br>
> On the other hand I can see that you guys want to keep NUT as small <br>
> and clean as possible. And especially APC's new MicroLink protocol is <br>
> rather trivial so technically there is no hard requirement to use a <br>
> full-blown scripting language for this. It's more of a strategic <br>
> question whether you'd like to encourage more users to write drivers <br>
> quickly.<br>
><br>
> So the questions are:<br>
><br>
> #1 Does anybody see Python drivers (or external drivers in general) as <br>
> a realistic option in the future?<br>
><br>
> #2 Or is anybody willing to work on a native MicroLink driver with my <br>
> assistance? As I have already mentioned I am not familiar with C, so <br>
> what I could do is rewrite the current Python MicroLink implementation <br>
> to match the data structures and data flows expected by NUT. This <br>
> means I could create a driver.py which contains Python functions like <br>
> "upsdrv_initinfo", "upsdrv_updateinfo", "instcmd", "setvar", etc. Then <br>
> somebody would only need to do the 1:1 porting to C.<br>
><br>
> #3 Or is there actually anybody who is accepting the challenge of <br>
> porting the current MicroLink Python implementation on his/her own? I <br>
> could still help with testing in that case of course.<br>
><br>
> I have also already thought of using "dummyups" with a file generated <br>
> by a standalone Python driver, which regularly writes values to a text <br>
> file. The issue with that is that NUT cannot send any commands to the <br>
> UPS that way. But the "dummyups" could probably also serve as a hook <br>
> for external drivers if only it would support setvar/instcmd hooks for <br>
> those external drivers.<br>
><br>
><br>
> Kind regards,<br>
> Eetu<br>
><br>
> _______________________________________________<br>
> Nut-upsdev mailing list<br>
> <a href="mailto:Nut-upsdev@alioth-lists.debian.net" target="_blank" rel="noreferrer">Nut-upsdev@alioth-lists.debian.net</a><br>
> <a href="https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsdev" rel="noreferrer noreferrer" target="_blank">https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsdev</a><br>
<br>
_______________________________________________<br>
Nut-upsdev mailing list<br>
<a href="mailto:Nut-upsdev@alioth-lists.debian.net" target="_blank" rel="noreferrer">Nut-upsdev@alioth-lists.debian.net</a><br>
<a href="https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsdev" rel="noreferrer noreferrer" target="_blank">https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsdev</a><br>
</blockquote></div>