ModRTU InjectX Software

Image

Given the continued prevalence of the Modbus protocol in both industrial and experimental communication systems, a tool capable of intelligently monitoring, injecting, and logging Modbus traffic could play a pivotal role in developing AI-based anomaly detection and predictive control frameworks.


ModRTU InjectX Software

The effectiveness of AI-driven data processing is critically dependent on the quality and precision of the input data supplied to learning models.
Given the continued prevalence of the Modbus protocol in both industrial and experimental communication systems, a tool capable of intelligently monitoring, injecting, and logging Modbus traffic could play a pivotal role in developing AI-based anomaly detection and predictive control frameworks.

To address this need, ModRTU InjectX was developed as a specialized Modbus communication framework, designed by Zoltán Dobrády at the Industrial Lab and Research for Cybersecurity (cyberseclab.eu), to support controlled injection, traffic analysis, and machine-learning-oriented data acquisition.

 

ModRTU InjectX is designed to:

  • enable fine-grained monitoring of Modbus RTU traffic,
  • inject custom-defined Modbus frames under controlled conditions, and
  • facilitate structured logging for the creation of machine learning training datasets.

The system is fully customisable, operates at the protocol level, and takes into account the strict requirements for compatibility with industrial devices.

 

Main features

  1. Serial port-based connection
    The user can select the desired COM port, set the required parameters (baud rate, data bit, stop bit), and then activate the connection by clicking on the "Connect" button.
  2. Monitoring of unique packets – "Start Unique Packets"
    One of the most important functions triggered by this button is to automatically detect Modbus packets whose format has not previously been observed within the communication stream.
    The "Auto-scroll" checkbox in the display controls visual tracking—if turned off, the text box will not scroll automatically.
  3. Injection Block Configuration
    Up to 10 independent injection blocks can be configured, each comprising user-defined fields for the header, payload, frame termination, and transmission repetition count.
    The system automatically generates a CRC for each packet, ensuring standard Modbus compatibility.
  4. Trigger-based injection control
    Injections are not timed, but triggered based on an intelligent condition: if two matching incoming packets are received within a specified time interval ("Trigger time (ms)"), the assigned block is activated.
    Echoed responses are programmatically identified and excluded from analysis to ensure the integrity of collected response data.
  5. Traffic logging and export
    All incoming and outgoing traffic is logged. The log can be saved, deleted, and exported to machine learning or statistical analysis tools (e.g., Python, MATLAB, R).

 

Example use: machine learning-based failure detection
ModRTU InjectX is well-suited for research settings where AI models are trained to detect faults, system overloads, or protocol anomalies based on real-time Modbus RTU traffic.
The Unique Packets feature helps to isolate anomalies so that the training set becomes truly informative and representative.

Who is it recommended for?

  • Industrial researchers
  • AI developers
  • SCADA and ICS system safety testers
  • Developers of predictive maintenance systems

 

Contact

The development and testing of the software are currently ongoing within the Industrial Lab and Research for Cybersecurity (cyberseclab.eu) research group.
The aim of the project is to create an open, research-oriented platform that supports the data requirements of machine learning systems starting from the lowest communication layer.

standalone executable version (.exe) is also available for Windows systems, which runs without installation and is intended for immediate use in experimental and academic environments.
The software can be downloaded from the official GitHub repository:
https://github.com/Dobrady/ModRTU_InjectX_distributions

We welcome feedback, suggestions for improvement, and bug reports, and we sincerely appreciate any efforts to help test the application.
Your contributions are highly valuable and will help enhance the research utility of the platform.