Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Discussion options

I have a real CAN-network with one device connected. This device tries to interact with another node that I want to simulate by a LocalNode object, which workds fine. I created an object dictionary with one ODVariable with the particular index and subindex on which the real device tries to perform an SDO Download (e.g. 0x1F51, 0x01) and assigned it to the LocalNode object.
The SDO Download completes successfully what I can observe via candump. However, when I try to access the value via the object dictionary from the local node, I can't see the updated value but the default one from the initialization. The only way I can access the updated value is via "node.sdo[0x1F51].raw", which is an SdoVariable and not the original ODVariable. At this point, I can not provide any subindex and when a second ODVariable got assigned before with the same index but different subindex, I only can check the updated value from the most recently added Variable.

I don't know if I understand wrong the concept of the different variable classes, but my guess was that the object dictionary of the LocalNode gets updated when another Node performs SDO Downloads.

If not, how can I access an Variable with index and subindex?

You must be logged in to vote

Replies: 1 comment

Comment options

Sorry for not answering your question earlier. It seems to have slipped under my radar. Is this still relevant or have you figured out the proper usage by now?

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
🙏
Q&A
Labels
None yet
2 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.