Skip to content

TyKonKet/ModbusLab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ModbusLab

A desktop Modbus TCP lab for simulation, diagnostics, debugging, and repeatable integration tests.

ModbusLab gives you a controllable Modbus TCP server workspace when the real device is unavailable, inconvenient, unsafe to modify, or too limited for the scenario you need to reproduce.

ModbusLab memory view

Why ModbusLab

  • Spin up one or more local Modbus TCP server instances.
  • Inspect and edit coils, discrete inputs, holding registers, and input registers.
  • Watch typed values such as booleans, integers, floats, doubles, and strings.
  • Simulate changing values with counters, toggles, sine waves, and random signals.
  • Inject delays, exception responses, and connection drops.
  • React to writes with automation rules.
  • Analyze connected clients, request blocks, logs, raw bytes, rates, and latency.
  • Persist server configuration, memory, UI layout, grid layout, and app settings.

Get Started

Official builds may be published through TyKonLab release channels. You can also build ModbusLab from source:

dotnet build .\ModbusLab.slnx

Run the app, start the default server on a test port such as 1502, and point your Modbus TCP client to 127.0.0.1:1502.

Documentation

The user manual is published with GitHub Pages:

https://tykonket.github.io/ModbusLab/

The documentation source lives under docs/.

Start here:

The GitHub Pages site is built with MkDocs and the built-in mkdocs theme.

.\scripts\build-docs.ps1 -Serve

Build From Source

Requirements:

  • Windows 10 or Windows 11.
  • .NET SDK 11.0 preview or newer compatible SDK.
  • An editor is optional when building from the command line.

The app targets net11.0-windows.

dotnet build .\ModbusLab.slnx

Build outputs are written under artifacts/bin and artifacts/obj.

Publish

Publish profiles create compressed, self-contained, single-file executables for Windows x64 and x86:

.\scripts\publish-windows.ps1

To publish one architecture directly:

dotnet publish .\ModbusLab\ModbusLab.csproj /p:PublishProfile=win-x64
dotnet publish .\ModbusLab\ModbusLab.csproj /p:PublishProfile=win-x86

Outputs:

artifacts/publish/ModbusLab/win-x64/ModbusLab.exe
artifacts/publish/ModbusLab/win-x86/ModbusLab.exe

License

ModbusLab is source-available under the ModbusLab Source Available License 1.0. This is not an OSI-approved Open Source license.

You may build ModbusLab from source and use it for free, including in production. TyKonLab controls the official ModbusLab distribution: only TyKonLab may distribute official builds, installers, store listings, update feeds, and release artifacts.

Third parties may distribute modified versions, but they must be clearly marked as unofficial, use distinguishable branding/package identities, preserve license notices, and describe their material changes. Redistributing the official ModbusLab distribution, or builds that are unmodified or substantially identical to it, is not permitted without written permission from TyKonLab.

TyKonLab may provide official prebuilt binaries for free, for a fee, or not at all. The source code remains buildable under the terms in LICENSE.

About

Modbus TCP server laboratory for simulation, diagnostics, and testing.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors