Licensing policy

With the release of version 3 of the REXYGEN system, REX Controls s.r.o. has introduced a new licensing system. We are moving away from the previous model, where licences were tied to specific hardware based on performance, to a more equitable system based on the complexity of the target application. From this version on, it no longer matters whether the application runs on a small and inexpensive computer (e.g., Raspberry Pi), a supported PLC family, an industrial PC, or a high-performance server. The type of processor or operating system (Linux, Windows, or no OS) is also irrelevant.

Flexible Licensing

You do not need to worry about additional licence costs when expanding your project. The new licensing system allows upgrades between different licence levels, with the upgrade price reflecting the difference in licence costs. This makes ongoing upgrades possible without extra fees.

Control System Components

The REXYGEN-based control system consists of the following components:

  • Development Environment – REXYGEN Studio
  • Control System Device/Platform – The target computer or PLC supported by REXYGEN
  • Runtime Environment Installation on hardware – RexCore (REXYGEN runtime core)
  • Sensors and Actuators  Physical devices communicating with REXYGEN using drivers
  • Additional services – HMI, data collection to database or cloud, etc.
  • REXYGEN System Licence

    REXYGEN Studio

    REXYGEN Studio is an advanced interactive development environment for creating control applications (projects) in the REXYGEN system, uploading them to target hardware, monitoring application execution, and making necessary adjustments and debugging. In the current version, REXYGEN Studio is available for free for application development on Windows and Linux. You can download REXYGEN Studio, along with other tools and application examples, from the REX Controls s.r.o. server.

    Control System Device

    When choosing the appropriate control system hardware, the following criteria are important:

    • Availability of a compiled REXYGEN runtime for the processor in the control unit. If unavailable, such hardware cannot yet be used with REXYGEN.
    • Availability of I/O drivers in REXYGEN for the physical inputs and outputs of the hardware, or the possibility of connecting remote inputs/outputs via a communication link with an existing driver.
    • Sufficient computational power of the hardware for the intended application.

    More information about available drivers can be found in the section “Input and Output Drivers”.

    RexCore - REXYGEN Runtime

    For the selected target device, download the appropriate runtime from REX Controls s.r.o. server. Install it according to the instructions in the "Getting Started..." guide. You can test the correct function of the runtime using installation examples with the free "DEMO" licence, which limits runtime to 2 hours per session.

    Licensing groups

    After installing the RexCore on your target device, you must activate a licence on your device. Please refer to the Licensing Manual for instructions. To verify the runtime's functionality, you can utilise the free "DEMO" licence. The "DEMO" licence allows runtime operation for up to 2 hours per session.

    To run the REXYGEN system permanently on the target device, a permanent licence is required. In terms of licensing, there are several versions of the RexCore runtime module that provide maximum flexibility for individual projects. The licence cost depends on the size and complexity of the developed application, determined by the following factors used in the application (specific REXYGEN project):

    • Function blocks
    • Input/output drivers
    • Application complexity
    • Visualization and operator control (Human-Machine Interface, HMI) complexity
    • Other tools

    These factors are explained in more detail in the following paragraphs. A detailed description of individual blocks, drivers, HMI creation, and other tools can be found in the REXYGEN system user documentation. During project compilation, all relevant factors are displayed in the compilation window, including the list of required licences for the permanent operation of the application.

    Function Blocks

    The extensive library of function blocks is divided into several licence groups:

    • STANDARD – common (mostly simple) function blocks available in all licence variants,
    • ADVANCED – advanced (mostly more complex) function blocks available in all licence variants except the Starter licence,
    • REXLANG – a programmable block in a language similar to C,
    • PYTHON – a programmable block in the Python language.

    Additional groups of function blocks have separate licences and function as optional libraries that can be purchased separately for Profi S, M, and L licences:

    • AUTOTUNING – controllers with automatic parameter tuning,
    • MOTION CONTROL – single-axis and multi-axis motion control,
    • COORDINATED MOTION – coordinated motion control (e.g., for robots),
    • MATRIX – advanced matrix function blocks based on orthogonal transformations,
    • OPTIM – optimization algorithms and solvers.

    The availability of individual groups of function blocks depends on the chosen licence. Table at the bottom of the page lists the function block groups and their availability in the licence variants.

    Input and Output Drivers

    Like function blocks, drivers are divided into several licence groups:

    • Basic – drivers for inputs and outputs native to the given hardware, direct input and output drivers (if available on given HW), and a 1Wire driver using OWFS,
    • IIoT – drivers for the Industrial Internet of Things (IIoT): MQTT, OPC UA driver, Database access (DbDrv, PqDrv),
    • Fieldbus – Modbus RTU/TCP (master and slave), CAN/CANopen,
    • Ethernet – EtherCAT, Siemens S7.

    Project Complexity

    Each licence variant has a limit on the maximum number of blocks and I/Os that a project can contain. Higher licence groups also support multi-core processor operation. 
    • Number of I/Os – Total number of inputs and outputs in the project.
    • Number of Blocks – Total number of function blocks in the project.
    • Multicore – Running on multiple processor cores.

    Visualization and Operator Control (Human-Machine Interface, HMI) Complexity

    In version 3 of the REXYGEN system, large visualizations are subject to fees. The complexity is assessed according to the so-called tags. Visualizations with up to 128 tags are free. Tags are counted as follows:

    • Each utilized value (input or display) counts as 1 tag.
    • Each allocated array element is 1 tag. E.g. an array allocated to 100 elements with dimensions of 3x4 counts as 100 tags. If such an array will permanently have dimensions of 3x4, it is sufficient that it be allocated to 12 elements.
    • Each signal displayed in a trend counts as 10 tags.

    If the number of tags exceeds the visualization licence limit, this is visibly indicated, but the visualization continues to work. Purchasing the necessary licence removes this indication.

    Other Tools

    The REXYGEN system also includes other tools that are free for small-scale use. For extensive use, a separate licence must be purchased:

    The complexity of use, like HMI, is determined by the number of tags. For the OPC UA Server, tags are counted the same as for HMI. For RexArcView, each displayed signal counts as 10 tags. The number of free tags for each tool and licence version is listed in the table at the bottom of the page.

    Licence Comparison