Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Implementation of Function Code FC23 (0x17) - Read/Write Multiple Registers #132

Open
wants to merge 125 commits into
base: main
Choose a base branch
from

Conversation

grewek
Copy link

@grewek grewek commented Feb 19, 2024

This pull request implements the MODBUS function code FC23 (Read/Write Multiple Registers) as specified in the MODBUS Application Protocol Specification V1.1b3 (Page 38, Section 6.17: "23 (0x17) Read/Write Multiple registers").

The Function Code 23 (Hex 0x17) performs a combination of one read operation and one write operation in a single MODBUS transaction. The write operation is performed before the read.

This implementation was done by Dominik Köhler in the name of Iniationware GmbH, initialized by Klaus Landsdorf - CEO of Iniationware GmbH.

Client and Server now have support for the aforementioned Read/Write Multiple Registers feature. The implemented functionality was tested with unit tests for parsing/serializing an FC23 request/response - and should work as expected. Let me know, if there are any issues when testing.

I've also compiled a basic feature documentation of the FC23 request, accessible under rodbus\WCFC_README.md, feel free to modify it in any way needed.

If you have any open questions, suggestions or notes about the FC23 feature implementation, do not hesitate to let me know. I am always happy to help where I can.

thr2240 and others added 30 commits December 6, 2023 21:46
feat: implement send/receive custom buffer
… the server-side request error (missing Copy trait)
dkoehler-dev and others added 28 commits February 2, 2024 20:18
…er for streamlined code and separate server request handling
…ple-registers

feat: Implementation of Function Code FC23 (0x17) - Read/Write Multiple Registers
@jadamcrain
Copy link
Member

@grewek So this PR is ready for review? I like the idea of getting this simpler feature merged before we tackle device identification stuff.

@grewek
Copy link
Author

grewek commented Mar 1, 2024

Yes, this PR should be in a reviewable state :)
If you find any issues please let us know

Regarding the Device Identification i will send you a different PR on our Review branch soon(ish)
i also tried to work on something called a "FrameRecorder" but more on that in the bespoken PR.

Anyway i wish you a nice weekend, hope to hear from you soon :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants