Repository navigation
Releases: CommunicationTools/ModbusScop-Slave
Release list
ModbusScop Slave 2.8 - last standalone release
This is the last standalone release of ModbusScop Slave. The standalone tools are frozen: new features are developed in SCADAScop, which contains this tool together with all the others (and adds HMI displays, a Watch window, windows on several monitors and the scopctl terminal client). The standalone tool stays available and keeps receiving fixes.
What's new
- RTU scripting (Lua 5.4). Right-click an RTU > Script... Points take part through an opt-in Tag column (a checkbox + a name per point). Handlers decide commands and setpoints -
return ACCEPT/return REJECT(code), answered with the protocol's own refusal (Modbus exception), optionally after a delay (return ACCEPT, 1500) - react to value changes, timers and master on-line / off-line, and drive the simulation through a standard library (Breaker, Bay, Signal, TapChanger, LoadProfile, bit helpers;help()in the console). Each RTU runs its own sandboxed Lua state (noio/os/require); a runaway handler is stopped without stopping the script. Editor with Lua colouring, line numbers and the last error marked on its line; a Library viewer. Scripts are stored in the workspace ([Script]under the[Rtu]) or bound to a.luafile reloaded when it changes. Manual chapters RTU scripting and Script API. [verify: the Script window opens and runs in the standalone build] - Value lists - enumerations and bit names. The RTU's Lists tab holds named lists (an enumeration names values, bit names name the bits of a word). Assigned to a point or a PLC cell from its right-click menu, the cell shows
Closed (1)orRUN | TRIPinstead of the number and, when you change it, offers the names to pick from (or a typed value). Lists move between RTUs and from / to ModbusScop Master with Copy / Paste, Export / Import (.mbvl) or with the RTU itself. Workspace:[ValueList]sub-blocks of the[Rtu],List=<i> <name>on the point. - Command maps: FC05 / FC06 / FC15 / FC16 blocks. New Block > Table also offers the four write codes. A block in one of them accepts that write code for its range - no coil / holding block needed - unless the map is disabled (its Test behaviour applies too), and its window shows the last values a master wrote, read-only, with the usual per-cell display formats (FC06 / 16) and aliases. A coil / holding block at the same address is updated as before. Workspace:
Table=4..7in[Block]. - On coil write (store in FC01 / FC02 or discard) beside the existing FC06 / FC16 choice; the PLC memory window has a Words / Bits view.
- A first RTU with the channel. New Channel gains a "First RTU" section: RTU-style (blocks per table) or PLC-style (one memory) with its unit id - stepping per channel with Count > 1 like the other tools - or None for an empty channel as before.
- Fix: the About text printed
%APPDATA%through a printf format (garbled on screen).
Compatibility
- Workspaces of every previous version open unchanged. The new blocks are written only when used, and an older version ignores them.
- Settings stay in
%APPDATA%\CommunicationTools(Linux:~/.config/CommunicationTools), as since the previous release. - A block with
Table=4..7(command map) is read by 2.7 as a holding block.
Downloads
| File | Platform |
|---|---|
ModbusScopSlave-2.8-win64.zip |
Windows 10 / 11 |
ModbusScopSlave-2.8-win7.zip |
Windows 7 SP1 (MSVC 14.39 toolset) |
ModbusScopSlave-2.8-linux-x86_64.tar.gz |
Linux x86_64 (glibc 2.28+), nothing to install |
SHA256SUMS.txt |
checksums |
"Check for updates" picks the archive of the running build; keep the file names when uploading.
ModbusScop Slave v2.7
Version 2.7
-
Multiplatform binaries: Available for Windows 7 SPI, Windows 10/11 and Linux x86_64 Desktop
-
Check for update: Each tool checks for it's own platform
-
Online Manual: General updates.
-
Settings in the user folder: settings, window layout, recent-files lists and the shared colors file are now kept in
%APPDATA%\CommunicationTools(Linux:~/.config/CommunicationTools) -
Linux desktop integration: Updates in order to enable better Linux integration
-
Frame pacing:* Some functionalities where separated in its own thread to avoid any locks cause by the GUI.
-
FC06 / FC16 write target (per RTU): RTU Settings gains Register writes (FC06 / FC16) ? On write: Update Holding map (FC03) (default, unchanged), Update Input map (FC04), or Discard (no map).
ModbusScop Slave v2.6
Version 2.6
-
Help > About now links to the online manual.
-
GUI Updates
-
Zip packaged include certificates for testing of TLS IP channels.
Version 2.5 (not published)
-
Channel / RTU Duplication, Copy and Past of RTU across different channels. Export / Import RTU and Channels.
-
Check for updates: asks GitHub for the latest SCADAScop release, shows its notes and opens the download page;
-
GUI Updates
ModbusScop Slave v2.2
ModbusScop Slave v2.2
- Ready for SCADAScop: the Slave can now run embedded in the multiprotocol shell (shared channel tree, status log and dashboard) with per-channel accent colors on its map windows
- Shared Asio transport core with the rest of the Scop family
- Layout and stability fixes
(v2.1: tabbed Points windows — one window per device with a tab per table)
ModbusScop Slave 2.0
ModbusScop Slave v2.0
- Layout updates
- Added Support to UDP and Serial Communication
- Modbus RTU over TCP/UDP
ModbusScop Slave 1.1
ModbusScop Slave v1.1
Support for CPU rendering (64Bits)
Layout updates
CPU Rendering libraries can be found here -> Mesa 21.0.3
ModbusScop Slave 1.0
ModbusScop Slave v1.0
- Multi-device, multi-master simulation — many channels, each with many
devices, each answering on its own unit ID, serving multiple masters
concurrently. - RTU and PLC data models — overlap-checked RTU blocks (FC 01–04) or a full
64K PLC memory with bit/word aliasing and selectable bit order (LSB / MSB). - Editable map windows — a Master-style grid with per-cell datatype
(16 / 32 / 64-bit signed, unsigned, hex, binary, float, double), selectable
byte order, per-cell aliases, Base-1 register numbering, configurable
rows-per-column, and a per-bit editor. Cells flash green when a master writes
them (FC 05 / 06 / 15 / 16). - Per-cell simulation — drive individual cells with Increment, Random, or
Sine (words) and Toggle / Random (bits), datatype-aware and paced by a
per-cell period. - Request behavior / fault injection — per-map response delay, forced
exception code, and no-reply (silent drop); disabled regions answer
Illegal Data Address (Exc 02). - Communication Monitor — a timestamped, filterable log of every request and
response frame (by device and by master), with an enable toggle, optional
log-to-file with size-based rotation, and a line counter. - Status Messages — a scrolling, timestamped log of channel start/stop,
master connect/disconnect, workspace and map I/O events. - Dashboard — live per-channel traffic counters (Rx / Tx / exceptions /
bytes), connected-master count, and uptime, with a totals row. - Workspaces — save and reload your entire setup: channels, devices, RTU
blocks and PLC memory, values, per-cell formats, aliases, simulations, and test
behaviors. Individual maps can also be exported and imported on their own. - Themes — dark / light / classic with a customizable accent color; layout
and preferences are remembered between runs.