Skip to content

Fix db_get/db_fill failing on S7-1200 PLCs with incorrect MC7Size#608

Open
gijzelaerr wants to merge 1 commit intomasterfrom
fix/db-get-incorrect-mc7size
Open

Fix db_get/db_fill failing on S7-1200 PLCs with incorrect MC7Size#608
gijzelaerr wants to merge 1 commit intomasterfrom
fix/db-get-incorrect-mc7size

Conversation

@gijzelaerr
Copy link
Owner

Some PLCs (e.g. S7-1200) report MC7Size as the load memory allocation (1024) rather than the actual data area size (e.g. 37 bytes) in block info responses. This caused db_get() to attempt reading more bytes than exist, resulting in "No data in response" errors.

Wrap the auto-sized read/write in db_get and db_fill with error handling that provides a clear message suggesting the user pass the size parameter explicitly. Also update the e2e test to skip gracefully on affected PLCs.

Fixes #569 (comment by @razour08)

Some PLCs (e.g. S7-1200) report MC7Size as the load memory allocation
(1024) rather than the actual data area size (e.g. 37 bytes) in block
info responses. This caused db_get() to attempt reading more bytes than
exist, resulting in "No data in response" errors.

Wrap the auto-sized read/write in db_get and db_fill with error handling
that provides a clear message suggesting the user pass the size parameter
explicitly. Also update the e2e test to skip gracefully on affected PLCs.

Fixes #569 (comment by @razour08)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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.

1 participant