Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Object Dictionary Editor: TPDO 0x1A00,0x01: not mappable OD entry 0x6000,0x00 #47

Closed
ksdexory opened this issue Mar 6, 2023 · 6 comments

Comments

@ksdexory
Copy link

ksdexory commented Mar 6, 2023

Following the CANOpen Node STM32 example I am getting the following error:
TPDO 0x1A00,0x01: not mappable OD entry 0x6000,0x00
https://www.youtube.com/watch?v=R-r5qIOTjOo
(creating a TPDO section at 1:26)

@trojanobelix
Copy link
Collaborator

trojanobelix commented Mar 7, 2023

Which version do you use? Please use the latest release or the bugfix branch. Can you provide the xdd file, please.

@ksdexory
Copy link
Author

ksdexory commented Mar 7, 2023

I came across that in the latest binary version v4.0-104-g6f50f73. I found a workaround, when I give transmit/receive access to PDO under the object dictionary tab -> object settings (instead of transmit only as per video tutorial), the problem goes away. I was wondering if there is a bug on that field and the logic is the other way around (t gives access to receive and r gives access to transmit).
image

@trojanobelix
Copy link
Collaborator

trojanobelix commented Mar 7, 2023

@CANopenNode : Janez, we had a discussion about the PDO access types and whether they are consistent across all import/export options. I have a halfway overview of the V1.x (legacy mode) stuff with rww and so on, but with the new definitions (tr, etc) I lack the deeper insight. Do you have a feeling for whether everything is OK? If not, I will try to dive deeper, but it may take some time.

@CANopenNode
Copy link
Owner

Hi,

Clarifying Access PDO:

  • V1.x (legacy mode): optional, TPDO, RPDO, default
  • V4: no, t, r, tr is for: not mappable, mappaple to TPDO only, mappable to RPDO only, mappable to TPDO or RPDO

Then there are rww and similar, which is combination of SDO and PDO access. In V1options are unchanged.
In V4 I tried to make SDO and PDO access more clear and independent from each other, so I just removed confusing options. I think, the latest CANopen standards use the same approach.


Then I must say, I usually configure PDOs dinamically, directly on the running CANopen devices and then store parameters, not using OD editor at all.


The problem here is independent from legacy or V4 mode. There is problem inside "(T)X PDO mapping" tab. After I do a configuration and press the Save button, it generates all TPDO communication and mapping parameters, but: it generates only as much subindexes in mapping parameters as there are mapped variables. This is wrong. It must always generate 8 subindexes or at least leave number of subindexes unchanged. "Number of mapped objects" is correct. Unused mapping slots are necessary for dynamic PDO configuration.

@CANopenNode
Copy link
Owner

I clarified myself about "rww" and "rwr". This is from the standard:

The “rwr” indicates that the related object is read or is written using SDO, but is only mapped to TPDO.
The “rww” indicates that the related object is read and is written using SDO, but is only mapped to a RPDO.

I think, it is now correct in CANopenEditor.

@CANopenNode
Copy link
Owner

This should be fixed now.

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

No branches or pull requests

3 participants