Describe the bug
When exporting an XDD project to EDS, CANopenEditor writes a RevisionNumber
value in the [DeviceInfo] section that does not match the default value of
the CANopen identity object 0x1018:03.
In the project, the default value of 0x1018:03 Revision number is:
However, the exported EDS contains:
[DeviceInfo]
RevisionNumber=0
while the same EDS contains:
[1018sub3]
ParameterName=Revision number
DefaultValue=0x00010000
The Device Info page in CANopenEditor v4.2.3-0-gc1071ab does not provide a
field for editing [DeviceInfo].RevisionNumber, so the mismatch cannot be
corrected through the GUI.
To reproduce
- Open or create an XDD project.
- Set object
0x1018:03 Revision number default value to 0x00010000.
- Open the Device Info page and note that there is no editable
Revision Number field.
- Export the project to EDS.
- Open the generated EDS file.
- Compare:
[DeviceInfo].RevisionNumber
[1018sub3].DefaultValue
- Optionally validate the EDS with Lely
dcf-tools 2.4.2:
dcfchk -n 1 -p project.eds
Actual behavior
The exported EDS contains inconsistent identity revision values:
[DeviceInfo]
RevisionNumber=0
[1018sub3]
DefaultValue=0x00010000
A strict EDS/DCF checker reports that the revision number in [DeviceInfo]
differs from the revision number in the identity object.
Expected behavior
One of the following behaviors would solve the issue:
- Automatically export
[DeviceInfo].RevisionNumber from the default value
of 0x1018:03; or
- Provide an editable
Revision Number field in the Device Info page and
keep it synchronized with 0x1018:03; or
- Report a validation error before export when the two values differ.
The preferred behavior is to keep the two values synchronized automatically,
because both fields describe the same device identity revision.
Environment
- CANopenEditor: v4.2.3-0-gc1071ab
- Project format: XDD
- Export format: EDS
0x1018:03 default value: 0x00010000
- Validation tool: Lely dcf-tools 2.4.2
Additional context
The MCU firmware generated from the same object dictionary also exposes
0x1018:03 = 0x00010000, so manually changing the object to zero would make
the EDS inconsistent with the actual device.
I can provide a minimal XDD/EDS pair if required.
Describe the bug
When exporting an XDD project to EDS, CANopenEditor writes a
RevisionNumbervalue in the
[DeviceInfo]section that does not match the default value ofthe CANopen identity object
0x1018:03.In the project, the default value of
0x1018:03 Revision numberis:However, the exported EDS contains:
while the same EDS contains:
The Device Info page in CANopenEditor v4.2.3-0-gc1071ab does not provide a
field for editing
[DeviceInfo].RevisionNumber, so the mismatch cannot becorrected through the GUI.
To reproduce
0x1018:03 Revision numberdefault value to0x00010000.Revision Numberfield.[DeviceInfo].RevisionNumber[1018sub3].DefaultValuedcf-tools 2.4.2:Actual behavior
The exported EDS contains inconsistent identity revision values:
A strict EDS/DCF checker reports that the revision number in
[DeviceInfo]differs from the revision number in the identity object.
Expected behavior
One of the following behaviors would solve the issue:
[DeviceInfo].RevisionNumberfrom the default valueof
0x1018:03; orRevision Numberfield in the Device Info page andkeep it synchronized with
0x1018:03; orThe preferred behavior is to keep the two values synchronized automatically,
because both fields describe the same device identity revision.
Environment
0x1018:03default value:0x00010000Additional context
The MCU firmware generated from the same object dictionary also exposes
0x1018:03 = 0x00010000, so manually changing the object to zero would makethe EDS inconsistent with the actual device.
I can provide a minimal XDD/EDS pair if required.