Skip to content

WIP: Support for Voltronic Axpert P30 protocol inverters (main)#1407

Merged
jimklimov merged 38 commits intonetworkupstools:masterfrom
minfrin:voltronics-axpert
Jul 30, 2025
Merged

WIP: Support for Voltronic Axpert P30 protocol inverters (main)#1407
jimklimov merged 38 commits intonetworkupstools:masterfrom
minfrin:voltronics-axpert

Conversation

@minfrin
Copy link
Copy Markdown
Contributor

@minfrin minfrin commented Apr 27, 2022

Adds support for the Voltronic Axpert inverters based on the P30 protocol.

Updated the nutdrv_qx driver to support the optional sending of commands
protected by CRC.

Initial support for query commands. Based on work done in the Voltronic
Sunny driver in https://github.com/nickma82/nut/tree/nutdrv_qx_voltronic-sunny_rebased+command

Still TODO:

Implement commands to write to the inverter.
Remove commented code originating from sunny driver.
Further testing.
Update docs (manpages, acknowledgements, NEWS.adoc...)

Adds support for the Voltronic Axpert inverters based on the P30 protocol.

Updated the nutdrv_qx driver to support the optional sending of commands
protected by CRC.

Initial support for query commands. Based on work done in the Voltronic
Sunny driver in https://github.com/nickma82/nut/tree/nutdrv_qx_voltronic-sunny_rebased+command

Still TODO:

Implement commands to write to the inverter.
Remove commented code originating from sunny driver.
Further testing.
Update docs (manpages, acknowledgements...)
@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Apr 27, 2022

This pull request introduces 1 alert when merging 5375524 into 9cb8de6 - view on LGTM.com

new alerts:

  • 1 for Comparison of narrow type with wide type in loop condition

@jimklimov jimklimov marked this pull request as draft August 10, 2022 16:32
@jimklimov
Copy link
Copy Markdown
Member

@minfrin : I marked the PR as draft for now, so it would not burden CI with failing code to build ephemeral merges as master branch marches on. Feel free to un-set draft mode when needed to test fixes to broken builds.

@minfrin
Copy link
Copy Markdown
Contributor Author

minfrin commented Aug 10, 2022

Thanks for this.

All the parameters being read are working well, and it's doing the job.

Testing the write functions is tricky, as the inverter is powering the machine it was developed on, so options are limited. Lining up a time to do safe testing.

@jimklimov
Copy link
Copy Markdown
Member

Cheers! Wondering if you have any updates on this? :)

@jimklimov
Copy link
Copy Markdown
Member

Resyncing with main NUT code base after v2.8.3 release.

@jimklimov jimklimov marked this pull request as ready for review April 25, 2025 08:40
@AppVeyorBot
Copy link
Copy Markdown

…ck along the way [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…nity-check along the way [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…n arg vs. strlen(cmd) content [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…n) in some methods [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…e NUT_UNUSED_VARIABLE(item) [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…it [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…and float [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…o check dynamic formating string sanity at run-time [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…oggle

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
… the mapping table as such; comment a few of them [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
@jimklimov jimklimov added Qx protocol driver Driver based on Megatec Q<number> such as new nutdrv_qx, or obsoleted blazer and some others Voltronic labels Apr 26, 2025
@jimklimov jimklimov added this to the 2.8.4 milestone Apr 26, 2025
@jimklimov jimklimov added the experimental-namespace This PR or issue deals with names not standardized in nut-names.txt and code would need to change label Apr 26, 2025
@jimklimov jimklimov mentioned this pull request Apr 26, 2025
@jimklimov
Copy link
Copy Markdown
Member

Proposed a NEWS.adoc entry usable in case of immediate merge (as an experimental driver at least, potentially for NUT community to share on further completion).

…etermined

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…trs in git

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…ING_AXPERT* macros [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…PERT* macro definitions for better visibility [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…arm[LARGEBUF] so that item->value[SMALLBUF] can fit with added markup [networkupstools#1407]

...not that we expect problems with this, but compiler warns they are feasible:
    error: '%s' directive output may be truncated writing up to 511 bytes
           into a region of size 497 [-Werror=format-truncation=]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…art) [networkupstools#1407]

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
networkupstools#1407]

Help with ChangeLog entry for an old URL buried in commit message years ago,
from a branch getting merged just now.

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
@jimklimov
Copy link
Copy Markdown
Member

@minfrin : I've updated this PR branch to the extent that I think the code is mergeable "quality-wise": there are changes to news and man pages, the questionable data points and related methods are hidden with #ifdef as "unmapped" items in some other drivers (and whatever concept names did not fit existing NUT standards, were renamed to the experimental.* namespace).

In your original post you've had plans for further work, and named this PR as a "WIP"... do you have any reservations (like this code is only a boilerplate and not really functional with the devices), or can it be merged as it is now and continued in later PRs? Do you see yourself doing that in short term, BTW? :)

jimklimov added a commit to jimklimov/nut that referenced this pull request Apr 30, 2025
jimklimov added a commit to jimklimov/nut that referenced this pull request Apr 30, 2025
jimklimov added a commit to jimklimov/nut that referenced this pull request Apr 30, 2025
networkupstools#1407]

Help with ChangeLog entry for an old URL buried in commit message years ago,
from a branch getting merged just now.

Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
@jimklimov
Copy link
Copy Markdown
Member

jimklimov commented Jul 29, 2025

I suppose this can be merged to have something available, and then criticized and fixed for missing features by actual users scratching their own itches in future PRs. This is the way of open source :)

@AppVeyorBot
Copy link
Copy Markdown

@jimklimov jimklimov merged commit 90b0476 into networkupstools:master Jul 30, 2025
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

experimental-namespace This PR or issue deals with names not standardized in nut-names.txt and code would need to change Qx protocol driver Driver based on Megatec Q<number> such as new nutdrv_qx, or obsoleted blazer and some others Voltronic

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants