Skip to content

Auto-detect Desoutter controllers during the handshake - #6

Open
iitalics wants to merge 1 commit into
hal2from
desoutter-fix
Open

Auto-detect Desoutter controllers during the handshake#6
iitalics wants to merge 1 commit into
hal2from
desoutter-fix

Conversation

@iitalics

Copy link
Copy Markdown

Desoutter controllers reject any stationID/spindleID other than blanks. The serializer could already blank them out, but only via a constructor option decided before we know what we're talking to.

Make the mode settable at runtime through the whole stack (SessionControlClient -> LinkLayer -> OpenProtocolSerializer), and turn it on automatically when the MID 2 reply of the handshake reports a supplier code starting with "DE". Detection only ever enables the mode, and is skipped entirely when the caller passed an explicit value, so other controllers keep their current behavior. Note that MID 2 revision 1 carries no supplier code, so detection needs revision 2 or higher.

Desoutter controllers reject any stationID/spindleID other than blanks.
The serializer could already blank them out, but only via a constructor
option decided before we know what we're talking to.

Make the mode settable at runtime through the whole stack
(SessionControlClient -> LinkLayer -> OpenProtocolSerializer), and turn
it on automatically when the MID 2 reply of the handshake reports a
supplier code starting with "DE". Detection only ever enables the mode,
and is skipped entirely when the caller passed an explicit value, so
other controllers keep their current behavior. Note that MID 2 revision
1 carries no supplier code, so detection needs revision 2 or higher.

Co-Authored-By: Claude Opus 5 (1M context) <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