NModbus4.NetCore
3.0.0
dotnet add package NModbus4.NetCore --version 3.0.0
NuGet\Install-Package NModbus4.NetCore -Version 3.0.0
<PackageReference Include="NModbus4.NetCore" Version="3.0.0" />
paket add NModbus4.NetCore --version 3.0.0
#r "nuget: NModbus4.NetCore, 3.0.0"
// Install NModbus4.NetCore as a Cake Addin #addin nuget:?package=NModbus4.NetCore&version=3.0.0 // Install NModbus4.NetCore as a Cake Tool #tool nuget:?package=NModbus4.NetCore&version=3.0.0
What is NModbus4.NetCore?
Very simply, it is NModbus4 build for .NET (NOT .NET Framework)<br/>
Ok, so what is NModbus4 in the first place?
Here is the definition of NModbus4
NModbus4 is a C# implementation of the Modbus protocol.
Here is a snippet from NModbus4 documentation
NModbus is a C# implementation of the Modbus protocol. Provides connectivity to Modbus slave compatible devices and applications. Supports serial ASCII, serial RTU, TCP, and UDP protocols. NModbus4 it's a fork of NModbus(https://code.google.com/p/nmodbus). NModbus4 differs from the original NModbus in following:
- removed USB support(FtdAdapter.dll)
- removed log4net dependency
- removed Unme.Common.dll dependency
- assembly renamed to NModbus4.dll
- target framework changed to .NET 4
Why NModbus4.NetCore?
Because
- The original library NModbus4 is not under active development, the last commit is dated 5 years ago <br/>
- There is a need to use NModbus4 with .NET projects, but NModbus4 support only .NET Framework (Not .NET) <br/>
What is the differences between NModbus4 and NModbus4.NetCore?
NModbus4.NetCore is a copy of NModbus4 with the following differences
- As mention earlier, The main difference is the Target Framework.
- NModbus4.NetCore supports the SerialPort out-of-the-box. <br/> NModbus4 needs some configuration to support SerialPort that (by Defining the Compile-time constant).
- Supporting .NET with this library does NOT mean expanding the NModbus4 <br/> I mean NModbus4.NetCore will work only with .NET. <br/> if you want to use this library with .NET Framework you are in the wrong place, go to the original library then.<br/> .NET Standard is NOT supported, .NET Framework is NOT supported, JUST .NET AND ONLY .NET
Nuget Package<br/>
https://www.nuget.org/packages/NModbus4.NetCore
Install-Package NModbus4.NetCore
or
dotnet add package NModbus4.NetCore
or
<PackageReference Include="NModbus4.NetCore" Version="1.2.0" />
Roadmap
The followings are the enhancement that I plan to add Add Coverage badge and Nuget badge
Contributaions
- PRs is more than Welcome.
- I do not care about the style of commit message <br/> just describe what you did in a meaningful way, in the style you like.
- You do not have to format the code.<br/> I am obsessive with formatting the code, and I will format the whole solution when merging any PR.
- Do not worry if you code with other style, I will change the style to accomodate mine <br/> So you do not have to worry about changing your current style.
- If you can help with the CI/CD operations, it is more than welcome, I do not have that much experience with that.
- Any PR which downgrade the TFM or changing the C# code to make it use older C# constructs will be rejected
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net7.0
- System.IO.Ports (>= 7.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.