Skip to content

fix(bacnet): discover large object lists without segmentation - #2752

Open
RevanthMeda wants to merge 1 commit into
frangoteam:masterfrom
RevanthMeda:fix/bacnet-object-list-segmentation
Open

RevanthMeda wants to merge 1 commit into
frangoteam:masterfrom
RevanthMeda:fix/bacnet-object-list-segmentation

Conversation

@RevanthMeda

Copy link
Copy Markdown
Collaborator

Description

Fixes #1228.

BACnet devices without segmented-response support can abort a complete Object List read when the response exceeds one APDU. Discovery now retains the existing complete-list request first, then falls back to reading the array length and individual entries by array index.

Indexed reads are issued in bounded batches. Devices that support the original complete response continue using the existing single-request path.

Type

  • Bug fix
  • Device driver
  • Regression coverage

Artifacts

  • server/runtime/devices/bacnet/index.js
  • server/test/devices/bacnetObjectList.test.js
  • Commit: c599ee8628cce829e29e05df4ef91c59f9d7e35d

Checklist

  • Added a focused regression that failed before the fix
  • Verified indexed fallback behavior
  • Verified the existing complete-list path remains unchanged
  • Ran BACnet compatibility tests: 27 passed
  • Ran the full server suite: 1010 passed
  • Ran the TypeScript build
  • No dependency, lockfile, schema, workflow, or deployment changes

Documentation

No user-facing documentation changes are required. The fallback is internal to BACnet object discovery.

Additional Notes

The full local suite had one environment-only failure: uv_interface_addresses returned Unknown system error 1 in the network-interface sandbox test. No physical BACnet hardware was available for validation.

AI assistance was used to inspect the existing driver flow, construct the regression, and review the resulting patch; the behavior and test results were verified locally.

This branch has not been deployed

No deployments
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.

Bacnet Segmentation not supported error

1 participant