Atom Modbus Library (atMb)
CODESYS library with a native C engine for Modbus TCP client, RTU client and TCP
slave operation. Public namespace: atMb. No ModbusFB dependency is required.
Use the library
Open library/CmpAtomModbus.library in CODESYS, or install it using Library
Repository and reference it from your application. Keep its project title and
external C interface settings intact. The development target is Raspberry Pi
64 SL (ARM64), using CODESYS 3.5 SP22; runtime/target compatibility must be checked
when changing platforms. Read the user guide for examples
and the API reference for members and methods.
Repository contents
| Path | Purpose |
|---|---|
library/CmpAtomModbus.library |
Working CODESYS library file; edit IEC code here |
component-source/src/ |
C protocol, client, serial and server implementation |
component-source/component/ |
Active component frame, ABI interface and makefile |
component-source/tests/ |
Host protocol and bridge tests |
ExtensionSDK/ |
Supplied SDK required for component builds |
artifacts/arm64/libCmpAtomModbus.so |
Supplied ARM64 native binary |
docs/BUILD-AND-USAGE.md |
Native build and deployment instructions |
docs/USER-GUIDE.md |
Calling patterns, configuration and diagnostics |
docs/API-REFERENCE.md |
Detailed IEC reference based on the last working export |
docs/CLEANUP.md |
Removed files, preservation checks and update workflow |
docs/VALIDATION.md |
Validation scope |
SHA256SUMS.txt |
Current working-file snapshot checksums, excluding Git metadata |
Build on the Pi
Run from the repository root:
sudo apt install build-essential m4 dos2unix python3
make -C component-source/component SDKDIR="$(realpath ExtensionSDK)" clean
make -C component-source/component SDKDIR="$(realpath ExtensionSDK)" all
make -C component-source test
Native output: component-source/component/out/libCmpAtomModbus.so.
See the build guide before updating the embedded component. An ARM64 binary
cannot run on ARM32 or x86-64; build for each architecture and verify the SDK/runtime
combination. The supplied binary has not been proven byte-equivalent to this source.
Update and review
Edit the IEC library in CODESYS. After significant IEC changes, export the current
objects and update the API reference against that export. Binary .library files
cannot be reviewed as ordinary text diffs. This snapshot intentionally contains no
old migration exports or generators that overwrite current IDE changes.
This ZIP retains the existing Git history and remote metadata. Cleanup changes
are uncommitted and unstaged. Review locally with git status and git diff,
then stage/commit when ready. No push is performed by this package.
Online-change qualification remains future work. Keep all native calls owned by one IEC task. No new license is assigned to the supplied SDK/source files.