Now, setNodeId does change TPDO and RPDO CobId without testing previous CobId in order to avoid confusion. Standard does not says when 'default value' should be applied. See DS301 - Object 1400h - 15FFh: Receive PDO Communication Parameter page 108.
authoretisserant
Thu, 12 Apr 2007 16:14:07 +0200
changeset 152 5e14844e5756
parent 151 ebf4bd44f282
child 153 1c1ad874fe8f
Now, setNodeId does change TPDO and RPDO CobId without testing previous CobId in order to avoid confusion. Standard does not says when 'default value' should be applied. See DS301 - Object 1400h - 15FFh: Receive PDO Communication Parameter page 108.
src/states.c
--- a/src/states.c	Wed Apr 11 07:50:34 2007 +0200
+++ b/src/states.c	Thu Apr 12 16:14:07 2007 +0200
@@ -184,7 +184,7 @@
     UNS16 lastIndex = d->lastIndex->PDO_RCV;
     UNS32 cobID[] = {0x200, 0x300, 0x400, 0x500};
     if( offset ) while( (offset <= lastIndex) && (i < 4)) {
-      if(*(UNS32*)d->objdict[offset].pSubindex[1].pObject == cobID[i] + *d->bDeviceNodeId)
+      //if(*(UNS32*)d->objdict[offset].pSubindex[1].pObject == cobID[i] + *d->bDeviceNodeId)
 	      *(UNS32*)d->objdict[offset].pSubindex[1].pObject = cobID[i] + nodeId;
       i ++;
       offset ++;
@@ -198,7 +198,7 @@
     UNS32 cobID[] = {0x180, 0x280, 0x380, 0x480};
     i = 0;
     if( offset ) while ((offset <= lastIndex) && (i < 4)) {
-      if(*(UNS32*)d->objdict[offset].pSubindex[1].pObject == cobID[i] + *d->bDeviceNodeId)
+      //if(*(UNS32*)d->objdict[offset].pSubindex[1].pObject == cobID[i] + *d->bDeviceNodeId)
 	      *(UNS32*)d->objdict[offset].pSubindex[1].pObject = cobID[i] + nodeId;
       i ++;
       offset ++;