CANopenNode / CANopenEditor

CANopen Object Dictionary Editor
GNU General Public License v3.0
115 stars 57 forks source link

Change RevisionNumber to string and implemented relative TextBox #113

Closed temi54c1l8 closed 1 month ago

temi54c1l8 commented 1 month ago

…evice Info

CANopenNode commented 1 month ago

The xsd has been removed from CiA for some reason 😑

@nimrof, what do you mean by that?

nimrof commented 1 month ago

the xml schemas https://www.can-cia.org/xml/1.0 https://www.can-cia.org/xml/1.1

CANopenNode commented 1 month ago

Interesting. I think, http://www.canopen.org/xml/1.1 is just a namespace for xml schema, actual schema does not need to be there. However, there are still technical documents and schemas are there. Also for new CAN FD standard, there is only a standard for XDD (CiA1311) and not for EDS.

CANopenNode commented 1 month ago

FileRevision is part of EDS specification and is type of UNSIGNED8. xml specification only has fileVersion, both 1.0 and 1.1.

libEDSsharp/CanOpenXSD_1_1.cs is auto generated from official schema. We can not add non standard elements here.

nimrof commented 1 month ago

Interesting. I think, http://www.canopen.org/xml/1.1 is just a namespace for xml schema, actual schema does not need to be there.

Not sure what the xml standards says, but in this case the files used to be there. https://web.archive.org/web/20240207232553/https://www.can-cia.org/xml/1.0/

However, there are still technical documents and schemas are there. Also for new CAN FD standard, there is only a standard for XDD (CiA1311) and not for EDS.

Yes, but it is currently for paying members only, so out of reach for me at the moment😶

CANopenNode commented 1 month ago

I'm a member, if you need some information I can look into the standards.

CANopenNode commented 1 month ago

RevisionNumber could be added into XDD into one of the existing properties under DeviceIdentity class somehow. libEDSsharp/CanOpenXDD_1_1.cs could be edited for that.

trojanobelix commented 1 month ago

I do not have access to the CiA DS311. But in 306 (EDS) and 301 RevisionNumber and ProductNuber are unsigned32. So I assume in DS311 it would be unsigned32, too.

temi54c1l8 commented 1 month ago

I changed the RevisionNumber back to UInt32 as requested, I set the display to hexadecimal to better differentiate the major and minor revision. I also implemented the OrderCode in string as indicated in the CiA 306 1.4.0 specification.

CANopenNode commented 1 month ago

We can not add additional fields into XSD file, because it is not according to the standard. You can put new fields into the standard fields somehow.

device_identity_XDD

temi54c1l8 commented 1 month ago

RevisionNumber and OrderCode are in the [DeviceInfo] section. I am not an expert in the graphics part, I close this pull request