Skip to content

Conversation

@thesummer
Copy link
Contributor

@thesummer thesummer commented Mar 14, 2023

Hi,

When creating a RemoteNode from the objectdictionary, like

node = canopen.RemoteNode(None, object_dictionary=config_file)

then the variables relative to the NODEID are not resolved properly, because the None value in node_id is not updated before build_variable is called.

This should fix that and still keep the user provided node_id, if provided.

@thesummer
Copy link
Contributor Author

Any chance to merge this into the official sources or is there something missing?

Copy link
Member

@acolomb acolomb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The case change here seems to be related to your PR #347, but the discussion there wasn't finished IIRC. If the parser really is case-sensitive, this has the potential to break people's code. So can we implement a backwards-compatible solution? Given that the EDS spec seems to be case-insensitive anyway.

The node ID change seems fine.

@thesummer
Copy link
Contributor Author

My bad. I only wanted to fix the node_id thing. Must have messed up the commit. I will update it in the coming days.

@acolomb
Copy link
Member

acolomb commented Apr 25, 2024

@thesummer Are you still going to work on this? Seems like a worthwhile improvement, just got hung up on minor details.

@acolomb acolomb changed the title objectdictionary: Use node_id from DCF if ot provided objectdictionary: Use node_id from DCF if not provided Jun 4, 2024
@acolomb acolomb merged commit 5367d83 into canopen-python:master Jun 4, 2024
@acolomb acolomb added this to the v2.3.0 milestone Jun 11, 2024
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.

2 participants