Skip to main content

Support and license

Signal Processing is free and open source; help comes through GitHub issues, and Nedama Integrated Solutions offers integration work and commercial support.

Support​

License and credits​

  • Released under the Apache License 2.0: free to use, modify and distribute, including in commercial projects, without warranty.
  • The algorithms are Java ports of parts of SciPy, of the Cephes special functions SciPy ships, and of NumPy behavior, all under the BSD 3-Clause license; see THIRD_PARTY_NOTICES.md.
  • Ignition is a trademark of Inductive Automation. This module is not affiliated with or endorsed by Inductive Automation.

FAQ​

Do you need Python, numpy or SciPy on the gateway? No. The module is pure Java and runs inside Ignition; nothing else is installed.

Which scopes does it work in? All of them: gateway scripts, tag events, timers, Perspective, Vision clients and the Designer.

Why do you get ValueError with historian data? The historian returns None for gaps, and the module refuses None, NaN and infinity rather than spreading NaN through the result. Fill the gaps first, as shown in Quick start.

Can you filter a live value in real time? Yes: sosfilt or lfilter with zi, carrying the filter state between calls, as shown in Quick start. Zero-lag functions such as sosfiltfilt need later samples, so they suit history windows.

Is it safe to call from many scripts at once? Yes. The functions keep no shared state, and a concurrency test with 8 threads reproduces single-threaded results exactly.

How large can signals be? The tests run 1,000,000-point signals inside Ignition in about 0.1 s per call. Very large lists are limited by the gateway's memory, not by the module.

Should you use it for control? It suits monitoring, analytics, reporting and supervisory logic. Keep closed-loop control and safety functions in the PLC or controller.

Why does the gateway ask you to accept a certificate? The modules are signed by Nedama Integrated Solutions with its own certificate. Accept it once when installing.

Will your SciPy code work as it is? Usually, yes: names, parameters, defaults and results match SciPy 1.18.1. The few deliberate differences are listed in Differences from SciPy.

Which file do you install? The .modl for your Ignition version: the 8.1 build for 8.1.33 or newer, the 8.3 build for 8.3.3 or newer.