Modsak - Modbus diagnostic program

Modsak is a versatile Modbus diagnostic program. It will be of interest to device manufacturers, software developers, system integrators and field service engineers. Modsak can be used to test or simulate almost any device or system that uses the Modbus protocol: slave devices, PLC's, HMI's, MMI's, DCS's, RTU's, SCADA systems, bridges, gateways, device servers, etc.

If you are a device manufacturer, you can connect Modsak to the device you are developing to test its handling of the Modbus protocol and also its general operation. Software developers can use Modsak to simulate the environment (Modbus masters, slaves and bridges) in which their software has to operate. System integrators can plug Modsak into a system to temporarily replace Modbus components they don't yet have; or when components refuse to talk to each other Modsak can be used to try out different configuration settings. Modsak running on a portable computer will be a valuable tool for field service engineers, enabling them to monitor the communications between system components, or to send their own requests to the Modbus slaves in the system.

Modsak's main features are:

  • Can be configured to run in one of four modes:
    • Manual master mode, where the user can send individual requests to a Modbus slave.
    • Automatic master mode, where it continually polls (sends read and write requests to) a Modbus slave.
    • Slave mode, where it simulates a Modbus device.
    • Monitor mode, where it relays messages between a Modbus master and a Modbus slave. In monitor mode, Modsak may be used like a breakout box or protocol analyzer to observe the messages being exchanged between a master and a slave. Monitor mode also allows Modsak to be used as a gateway or bridge.
  • Full support for coils, discrete inputs, input registers and holding registers, using commands 1, 2, 3, 4, 5, 6, 7, 8, 11, 15, 16, 17, 22 and 23.
  • Supports network and serial (RS232/RS422/RS485) interfaces using the following protocol variants:
    • Modbus TCP (also known as Modbus TCP/IP)
    • Modbus RTU
    • Modbus ASCII
    • Modbus RTU encapsulated in TCP
    • Modbus ASCII encapsulated in TCP
    • Modbus UDP (also known as Modbus TCP encapsulated in UDP)
    • Modbus RTU encapsulated in UDP
    • Modbus ASCII encapsulated in UDP
  • Cross-platform: runs on any system that supports Java 1.5 or later - including Windows, Linux, Solaris and AIX.
  • All known extensions of the Modbus protocol for handling 32-bit and 64-bit integers and floating-point numbers are supported (including Enron/Daniels Modbus).
  • Can transfer a mixture of integers and floats, of different sizes, in a single message.
  • Flexible address mapping allows separate or overlaid address spaces (for coils, discrete inputs, input registers, and holding registers) with arbitrary bases.
  • Registers are individually configurable for type (integer or float), size (8/16/32/64-bit), and radix (binary, octal, decimal, or hex).
  • Supports broadcast requests (slave ID 0) in both master and slave modes.
  • Full support for 0x0A ("Gateway Path Unavailable") and 0x0B ("Target Device Failed To Respond") exception responses.
  • Informative interpreted trace of all Modbus messages sent and received.
  • All configuration settings may be saved to and restored from a file, in XML format.
  • Online manual/troubleshooting/HOWTO facility.

Modsak main window

The Modsak demonstration lets you try out Modsak's user interface using your browser.

Better still, you can download the complete version of Modsak for a FREE 3-DAY EVALUATION PERIOD.