canopennode / canopeneditor Goto Github PK
View Code? Open in Web Editor NEWThis project forked from robincornelius/libedssharp
CANopen Object Dictionary Editor
License: GNU General Public License v3.0
This project forked from robincornelius/libedssharp
CANopen Object Dictionary Editor
License: GNU General Public License v3.0
Hi @CANopenNode ,
I was wondering how active this library is and if there is still some discussion going on. How would you see the evolution of the library
Cheers
I want to define the object dictionary for firmware upgrade, but I don't know how to choose the data type. Should I use the domain type?
Using v4.0-51
Byte 7 in RX TX Mapping does not leave edit mode on focus change (e.g. double click other Byte)
When dragging and dropping objects onto a field (byte 0...7), the objects are reordered (sequence changes)
Mappable TX Objects 2800h Sub 1...8
E.g.:
Drop the 2800,1 to Byte 0
Drop the 2800,2 to Byte 1
...
Drop the 2800,8 to Byte 7
Mapping is other than
1, 188, 1400, 2800.1, ..., 2800.8
That happens, when you drop in field byte 7
before dropping field byte 7 (3. PDO)
after
$NODEID should not be case sensitive
Convert to uppercase on loading or do not create warning
EDS Checker is fine with "$NodeID"
DS306 does not prohibit mixed case explicite:
For entries of one of the integer types it is allowed to use a formula. This gives the chance to describe values, that depend on other values. For example, the COB-ID of the default PDOs depend on the Node-ID of the device.
The syntax of the formula is given by the following EBNF description:
IntEntryValue = $NODEID { Ó+Ó number }
For concrete devices, $NODEID will be replaced by the actual Node-ID of the device. The $NODEID must appear at the beginning of the expression. Otherwise the line is interpreted as without a formula. Actually it is only possible to use an offset to this NodeID in the formula. More complex expressions are not allowed.
Hello. It is possible to save network file once, but then opening it and saving will crash (seems like getting current directory path and normalizing it throws).
Windows 10.
Hi,
Thanks for all your efforts on this repo.
I just noticed that I couldn't get couple of subobjects of a record to show up in the OD.h and .c, after a debugging for a while I figured that if you have not provided a default value, those subobjects wouldn't appear in the OD files. I believe there should be sort of warning in that case to remind the user about that.
Here is the code line that checks for default value I believe.
Hello,
I used the CANopenEditor version 4.0-104-g6f50f73 to configure some nodes and generate a coresponding DCF.
In the DCF I noticed that the block with the general device setup is generated as [DeviceComissioning]
while it should be [DeviceCommissioning]
(with "mm").
It's a small type, but it prevents for example https://canopen.readthedocs.io/en/latest/ to read in the generated DCF.
I looked for the string in the source code and fix it myself, but couldn't find it.
Do you have any suggestions? It seems to be one of the few parts where it is not possible to rename the field through the GUI.
The issue is clearly visible in the following video:
https://youtu.be/V2HeW5CfOvE
The new project is created and multiple fields are changed in 'Device info' area.
After saving the project using File->Save Project As or File->Save Project all the data fields are reverted to factory values before save and the file is saved with reverted data.
It is not possible to save the Project anyhow.
It works the same when running native on Windows, Linux on Mono and Linux on Wine.
I was running binary version available here:
https://github.com/CANopenNode/CANopenEditor/archive/refs/heads/build.zip
Am I doing something wrong?
Hi,
I've been trying to re-map some PDOs using CANopenEdtior, but for some reason, the generated OD.h and OD.c seem to fail when trying to compile with the rest of my source code. After some trial and error, I figured that this occurs only after editing a PDO. The error log is shown in the image. Any advice or assistance on resolving this issue would be greatly appreciated!
I have another problem/question. But this is better placed in a new issue.
When I try to set up more than 3 TPDOs, it works in the editor. But the device makes an error when it tries to send this last PDO. As EMCY message comes "CO_EMC_CAN_OVERRUN" together with "CO_EM_EMERGENCY_BUFFER_FULL".
As soon as I delete the TPDO, the configuration works as planned.
If anyone knows advice, I have uploaded the xdd files and the OD files.
3PDOs.xdd: https://filehorst.de/d/eazcilwe
4PDOs.xdd: https://filehorst.de/d/eiFsCFgu
OD_3PDOs.c: https://filehorst.de/d/efxqekDa
OD_3PDOs.h: https://filehorst.de/d/eBJdufbz
OD_4PDOs.c: https://filehorst.de/d/enkgGsiJ
OD_4PDOs.h: https://filehorst.de/d/eevfnJEb
Hello there, I would like to create an ODS from an EDS.
However, I'm unable to compile the EDSEditor.sln with msbuild (I'm not really good in Linux), nor make
Could you please help me? 😞
The errors I get are something like this: (are you missing a using directive or an assembly reference?)
Btw, I'm on Ubuntu 22
Thanks in advance
I have a EDS with 40 writeable analog outputs. I'm trying to map these on the RX PDO Mapping screen, but running into issues.
It seems the Getbase(string defaultvalue) function is returning the wrong fromBase number for different values.
For example 0c will return base 10 instead of 16 and 08 will return base 8 instead of 10.
So it's impossible to map these outputs to the PDO.
I think the list items should have the 0x in front of the sub entry. It's even mentioned in code in the file DevicePDOView2.cs :
UInt16 newindex = EDSsharp.ConvertToUInt16(bits[0]);
//warning if the subindex is still hex the converter will not know about it
//we may need to append 0x to keep it correct
UInt16 newsubindex = EDSsharp.ConvertToUInt16(bits[1]);
I started getting a strange runtime error after adding a new object. The error I get is this:
System.ArgumentException: Grid has only 67 columns, you tried to insert cell into position 2;67.You should probably call Redim on grid to increase it's column size
at SourceGrid.Grid.DirectSetCell(Position position, ICell cell)
at SourceGrid.Grid.InsertCell(Int32 row, Int32 col, ICell p_cell)
at SourceGrid.Grid.set_Item(Position position, ICell value)
at SourceGrid.Grid.set_Item(Int32 row, Int32 col, ICell value)
at ODEditor.DevicePDOView2.UpdatePDOinfo(Boolean updatechoices) in Z:\CANopen\CANopenEditor\EDSEditorGUI\DevicePDOView2.cs:line 462
at ODEditor.DeviceView.dispatch_updatePDOinfo() in Z:\CANopen\CANopenEditor\EDSEditorGUI\DeviceView.cs:line 80
at ODEditor.MyTabUserControl.doUpdatePDOs() in Z:\CANopen\CANopenEditor\EDSEditorGUI\MyTabUserControl.cs:line 44
at ODEditor.DeviceODView.PopulateObjectLists(EDSsharp eds_target) in Z:\CANopen\CANopenEditor\EDSEditorGUI\DeviceODView.cs:line 162
at ODEditor.DeviceView.dispatch_updateOD() in Z:\CANopen\CANopenEditor\EDSEditorGUI\DeviceView.cs:line 92
at ODEditor.ODEditor_MainForm.openXDDfile(String path) in Z:\CANopen\CANopenEditor\EDSEditorGUI\Form1.cs:line 345
System.ArgumentException: Grid has only 67 columns, you tried to insert cell into position 2;67.You should probably call Redim on grid to increase it's column size
at SourceGrid.Grid.DirectSetCell(Position position, ICell cell)
at SourceGrid.Grid.InsertCell(Int32 row, Int32 col, ICell p_cell)
at SourceGrid.Grid.set_Item(Position position, ICell value)
at SourceGrid.Grid.set_Item(Int32 row, Int32 col, ICell value)
at ODEditor.DevicePDOView2.UpdatePDOinfo(Boolean updatechoices) in Z:\CANopen\CANopenEditor\EDSEditorGUI\DevicePDOView2.cs:line 462
at ODEditor.DeviceView.dispatch_updatePDOinfo() in Z:\CANopen\CANopenEditor\EDSEditorGUI\DeviceView.cs:line 80
at ODEditor.MyTabUserControl.doUpdatePDOs() in Z:\CANopen\CANopenEditor\EDSEditorGUI\MyTabUserControl.cs:line 44
at ODEditor.DeviceODView.PopulateObjectLists(EDSsharp eds_target) in Z:\CANopen\CANopenEditor\EDSEditorGUI\DeviceODView.cs:line 162
at ODEditor.DeviceView.dispatch_updateOD() in Z:\CANopen\CANopenEditor\EDSEditorGUI\DeviceView.cs:line 92
at ODEditor.ODEditor_MainForm.openXDDfile(String path) in Z:\CANopen\CANopenEditor\EDSEditorGUI\Form1.cs:line 345
The issue can be duplicated when opening this file: ds402_ort-bldc.zip
After switching the "LSS Master" or "LSS Slave" under Device Info->General and Master Features and generating the OD.c/h does not change the CNT_LSS_MST / CNT_LSS_SLV value in OD.h. It is always equal to zero as in below example:
(config).CNT_LSS_SLV = 0;\
(config).CNT_LSS_MST = 0;\
Hello,
I am using CanopenEditor on windows 11. I have downloaded files from ABB using this link. I have only tried files related to the ACS880 drive.
The EDS files for the FCAN-01 and ACS880 open in the editor no problem.
The .xml files for FECA-01 adapter for the ACS880 drive, give the following error:
System.InvalidOperationException: There is an error in XML document (2, 2). ---> System.InvalidOperationException: was not expected.
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderDevice.Read24_device()
The FENA-21 .eds files for the acs880 drive give the following error:
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
Hope you all can fix this issue or let me know what if there is something I missed. I have attached a file for each adapter I mention above.
Thanks!
Example: The selected item (0x1801) in the PDOview list the COB_ID been changed to "180". In the textbox has still the old value of 180.
Example:
If you change the COB-ID in the PDOview list and in the textBox from 280 to 180 after pressing the "Save" button both values are changed to the old value of 280 instead of saving the new value (180)
Before ( COB ID of 1801 is 280 ):
If there are two (different) objects with the same name only one will be created in sCO_OD_RAM
Without any error/warning.
Alternitives:
@CANopenNode : What do you think is best?
`/*2002 */
#define OD_2002_stringTest 0x2002
#define OD_2002_0_stringTest_maxSubIndex 0
#define OD_2002_1_stringTest_subObject1 1
#define OD_2002_2_stringTest_subObject1 2
#define OD_2002_3_stringTest_subObject1 3
#define OD_2002_4_stringTest_subObject1 4
#define OD_2002_5_stringTest_subObject1 5
#define OD_2002_6_stringTest_subObject1 6
#define OD_2002_7_stringTest_subObject1 7
/*******************************************************************************
STRUCTURES FOR VARIABLES IN DIFFERENT MEMORY LOCATIONS
*******************************************************************************/
#define CO_OD_FIRST_LAST_WORD 0x55 //Any value from 0x01 to 0xFE. If changed, EEPROM will be reinitialized.
/***** Structure for RAM variables ********************************************/
struct sCO_OD_RAM{
UNSIGNED32 FirstWord;
/*2000 */ VISIBLE_STRING stringTest[2];
/*2001 */ UNSIGNED32 newObject[5];
UNSIGNED32 LastWord;
};`
Whenever I press the Add new PDO in the TX PDO Mapping tab I get an Unhandled exception!
This error occurs with any file, be it a new EMPTY project or when editing one of the example ones (demoDevice from CANopenNode or the DS301_profile).
I'm using the latest Windows build
Here is the details from the exception:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentNullException: Value cannot be null.
Parameter name: value
at System.Windows.Forms.ComboBox.ObjectCollection.IndexOf(Object value)
at ODEditor.DeviceODView.PopulateObjectLists(EDSsharp eds_target) in Z:\CANopen\CANopenEditor\EDSEditorGUI\DeviceODView.cs:line 197
at ODEditor.DeviceView.dispatch_updateOD() in Z:\CANopen\CANopenEditor\EDSEditorGUI\DeviceView.cs:line 92
at ODEditor.MyTabUserControl.doUpdateOD() in Z:\CANopen\CANopenEditor\EDSEditorGUI\MyTabUserControl.cs:line 62
at ODEditor.DevicePDOView2.addnewPDO() in Z:\CANopen\CANopenEditor\EDSEditorGUI\DevicePDOView2.cs:line 719
at ODEditor.DevicePDOView2.button_addPDO_Click(Object sender, EventArgs e) in Z:\CANopen\CANopenEditor\EDSEditorGUI\DevicePDOView2.cs:line 709
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4420.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
EDSEditor
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/WDavi/Desktop/Repos/CANopenEditor-build/CANopenEditor-build/EDSEditor.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4400.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4360.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
libEDSsharp
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/WDavi/Desktop/Repos/CANopenEditor-build/CANopenEditor-build/libEDSsharp.DLL
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
SourceGrid
Assembly Version: 4.40.4580.29115
Win32 Version: 4.40.4580.29115
CodeBase: file:///C:/Users/WDavi/Desktop/Repos/CANopenEditor-build/CANopenEditor-build/SourceGrid.DLL
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
The DSP302 (V3.2.1) stated:
Device Configuration File
Configuration tools have to know, which device in the network is the CANopen Manager. For
the purpose of designating this manufacturer independent, this information is written into the
DCF files of the project. The section DeviceComissioning of each device contains the boolean entry CANopenManager. If the entry is missing, the described device is not the CANopen
Manager.
Some tools (eg. EDSchecker from Vector) use the DSP302 definition [DeviceComissioning]
but some others (e.g. HMS/Ixxat CanAnalyser) use right spelling: [DeviceCommissioning]
The CANopenEditor uses DeviceCommissioning, which satisfied just one variant.
How to make it compatible for both?
See: robincornelius#220
The ranges and logical operators are suspicious:
It should be
if (kvp.Key>=0x1600 && kvp.Key<0x1800) // inspect range 0x1600...0x17FF (RPDO communication parameter)
{
//change the OD entry to the largest one
od = maxRXmappingsOD;
}
if (kvp.Key >= 0x1A00 && kvp.Key < 0x1C00) // inspect range 0x1A00...0x1BFF (TPDO communication parameter)
{
//set the OD entry to the largest one
od = maxTXmappingsOD;
}
instead of
if (kvp.Key > 0x1600 || kvp.Key < 0x1800) // why OR? This takes all numbers 0...0xFFFF
{
//change the OD entry to the largest one
od = maxRXmappingsOD;
}
if (kvp.Key > 0x1A00 || kvp.Key < 0x1C00)
{
//change the OD entry to the largest one
od = maxTXmappingsOD;
}
And it's good to search the mappings to find the largest one, but setting the "od" variable to maxXXmappingsOD, e.g.
od = maxRXmappingsOD;
doesn't work because the member list creation still uses kvp.Value.subobjects, which is not the maximum number of members.
so instead using
foreach (KeyValuePair<UInt16, ODentry> kvp2 in kvp.Value.subobjects)
it should be something like
foreach (KeyValuePair<UInt16, ODentry> kvp2 in od.subobjects)
Because "od" is set to the max[TX/RX]mappingsOD
On v4.0-51-g2d9b1ad binaries:
When in DevicePDOview (RX/ TX PDO Mapping) the PDOs are stored, the SDO Access-type is set to "access-no" and displayed in the object dictionary with "UNKNOWN".
Very frustrating!
You have to touch all objects and subs and change the SDO Access-type manually, or edit the XDD.
The editor still needs some fine tuning in many places, but especially the mapping is still quite buggy.
there is
if( (configindex<0x1400) || (configindex >= 0x1a00) || ((configindex>=1600) && (configindex<0x1800)))
1600 in decimal. Must be in hex:
if( (configindex<0x1400) || (configindex >= 0x1a00) || ((configindex>=0x1600) && (configindex<0x1800)))
Hi!
I worked with this tool a few months ago and now I need to use it again but the files it generates have been updated and I would not like to update my project.
Does anyone have the previous executable?
Thanks you!
With new release v4.0-102-g634dee9 i have a problem with "ODT_RECORD" and "ODT_ARRAY", because in CANopenNode/301/CO_ODinterface.c it's called "ODT_REC" and "ODT_ARR".
I have compiled the latest version. Now when saving or exporting a node, a window comes up with a warning that my PDOs are not mappable.
The same file was saveable by an older version of the Editor.
The OD exported by nevertheless is compilerable and seems to work.
The only difference I see at first sight is that in OD.h four entries are missing. but I don't know their purpose.
Please don't be surprised, the pictures are from different devices. If you compare the new OD.h and the old OD.h of the same device, exactly the 4 marked entries are different.
It seems to depend per software stack whether or not the generated files are also subject to the same (L)GPL license.
Since I can't find any example output files in this repository, could you confirm or deny whether the output files are licensed, and if yes, by which license?
With each and every OD entry (Index and subindex) combination, there are additional attributes which can be set by the user.
What is the significance and need of these additional object settings?
For example, we have tried to set high and low limit on one OD entry and when we are trying to generate OD.c/OD.h from it, this information is not associated with the OD entry at all !!
XDD file has these values as
Do we have corresponding structures in CANOpenNode to ingest and validate while doing SDO/PDO transactions wrt min and maximum value?
The .exe binaries files are missing in 4.0.104 last delivery.
I need the issue #40 fix ! :)
Thanks
I'm using Turkish language settings. When I try to export CanOpenNode command, it exports "identitiy" as "ıdentity". I can correct this with a simple find/replace, but it will be better corrected in the source code.
Here is the output in OD.h file:
struct {
uint8_t highestSub_indexSupported;
uint32_t vendor_ID;
uint32_t productCode;
uint32_t revisionNumber;
uint32_t serialNumber;
} x1018_ıdentity;
when using the standard Canopennode example DS301_profile.eds file with the editor and export canopen OD.h/c, i get compile errors.
This also happened when modifying things in my project.
So, editor not usable!
I am new to canopen,An error occurred when I exported the .c.h file, how can I solve it, thanks!
I'm wondering why there is no issue about this exception on loading a xdd file into the editor:
the line is already marked as #WTF ;)
Changing the subindex to zero get's the editor to work, but don't get the proof that everything else works correct.
Tested with generated xdd files from Kickdrive and Systec tools.
Hi, When i import an eds file for the maxon epos4 controller and export the CANopenNode OD.h & OD.c, i receive the following errors:
Error in 0x1000: 'Count Label' must be 'NMT'
Error in 0x1001: 'Count Label' must be 'EM'
Error in 0x1005: 'Count Label' must be 'SYNC'
Error in 0x1010: 'Count Label' must be 'STORAGE'
Error in 0x1011: SubIndexes in ARRAY must be in sequence!
Error in 0x1014: 'Count Label' must be 'EM_PROD'
Error in 0x1016: 'Count Label' must be 'HB_CONS'
Error in 0x1017: 'Count Label' must be 'HB_PROD'
Error in 0x1200: 'Count Label' must be 'SDO_SRV'
Error in 0x1400: 'Count Label' must be 'RPDO'
Error in 0x1401: 'Count Label' must be 'RPDO'
Error in 0x1402: 'Count Label' must be 'RPDO'
Error in 0x1403: 'Count Label' must be 'RPDO'
Error in 0x1800: 'Count Label' must be 'TPDO'
Error in 0x1801: 'Count Label' must be 'TPDO'
Error in 0x1802: 'Count Label' must be 'TPDO'
Error in 0x1803: 'Count Label' must be 'TPDO'
Error in 0x3000: Default value must be defined on all ARRAY elements or must be undefined on all ARRAY elements!
Error in 0x3000: Attributes of elements in ARRAY must be equal
Error in 0x3000: Default value must be defined on all ARRAY elements or must be undefined on all ARRAY elements!
Error in 0x3000: Attributes of elements in ARRAY must be equal
Error in 0x301A: Default value must be defined on all ARRAY elements or must be undefined on all ARRAY elements!
Error in 0x301A: Attributes of elements in ARRAY must be equal
Error in 0x3141: Default value must be defined on all ARRAY elements or must be undefined on all ARRAY elements!
Error in 0x3141: Attributes of elements in ARRAY must be equal
Error in 0x3150: Default value must be defined on all ARRAY elements or must be undefined on all ARRAY elements!
Error in 0x3150: Attributes of elements in ARRAY must be equal
Error in 0x31E4: Default value must be defined on all ARRAY elements or must be undefined on all ARRAY elements!
Error in 0x31E4: Attributes of elements in ARRAY must be equal
Error in 0x3248: Default value must be defined on all ARRAY elements or must be undefined on all ARRAY elements!
Error in 0x3248: Attributes of elements in ARRAY must be equal
Error in 0x60E5: SubIndexes in ARRAY must be in sequence!
Error in 0x60E5: SubIndexes in ARRAY must be in sequence!
Error in 0x60E5: SubIndexes in ARRAY must be in sequence!
What could be the problem and how can i fix it?
When I press the Add new PDO in the RX PDO Mapping nothing happens.
The only change is that the Available Objects for PDO gets a slide bar.
I'm using the latest Windows build.
This happens in any project, be it a new empty one or a populated one like demoDevice from CANopenDemo
I use the version 4.0.103.
Create a new project.
Go to "TX PDO mapping" tab.
Click the button "Add new PDO"Add a new TPDO,.
Click the TPDO line to select it.
Click the button "Delete PDO" and confirm the action.
The TPDO is not removed.
Same thing for RPDO.
Thanks.
Hi,
I have some strange issues with the Object Dictionary Editor v4.0-51. When I insert a new DS301_profile and
then go to the TX PDO Mapping section and place for example the rror register on index 1800 and click on save, the rpdo communication parameters are destroyed. They look like this:
Further, I also cannot change the inhibit time, the event timer etc. in this the TX PDO Mapping section, it overwrites the values. When I export the OD files I get the following warnings:
I'm using the latest build of the CanOpenEditor
Hi! @robincornelius I want to export the EDS file of the object dictionary, but I don't see where the interface is?
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)
Are there any build and run instructions for this targeting ubuntu/linux?
thanks.
I reported the same problem to the CANopen Node project, a related project to this application. Since I haven't received an answer yet, I would also like to get information from here.
High/Low limit values for objects have no effect on the output of the object dictionary. In other words, the min/max values I entered do not cause the objects to be limited in any way. Is there a solution to this or will it be fixed if it is a bug?
It caused confusion when we were reviewing the generated OD files even though it isn't used with the multi-od approach. Thoughts on a checkbox to not include things that you'd not use for a multi-od setup?
When running the latest build v4.0-51-g2d9b1ad exe file on Linux (Lubuntu 20.04 or Debian 11) with mono 6.8.0.105, I get the following error when trying to export Documentation (Ctrl-P), even with a new default OD file:
System.ComponentModel.Win32Exception (0x80004005): Cannot find the specified file
at System.Diagnostics.Process.StartWithShellExecuteEx (System.Diagnostics.ProcessStartInfo startInfo) [0x00129] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0
at System.Diagnostics.Process.Start () [0x00038] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0
at (wrapper remoting-invoke-with-check) System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start (System.Diagnostics.ProcessStartInfo startInfo) [0x0001e] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0
at System.Diagnostics.Process.Start (System.String fileName) [0x00006] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0
at ODEditor.ODEditor_MainForm.documentationToolStripMenuItem_Click (System.Object sender, System.EventArgs e) [0x00111] in <430ff197535c448e93032a5323a38e45>:0
This used to work for me on Linux a while back. I don't know if it was a change to CANopenEditor or an update to mono that broke things. Thanks for any help.
There is out of index fault when exporting OD to CanOpenNode V4. Error is in Make_cname function and happen when parameter name starts with single letter followed by white space (for example "X axis"), at code line 694 ( else if (Char.IsLower(tok[1])) access out of string length.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.