]> rtime.felk.cvut.cz Git - CanFestival-3.git/commitdiff
Better EMCY support. Now EMCY COB-ID depend on OD 1014h entry, as told in DS-301.
authoretisserant <etisserant>
Mon, 12 Nov 2007 13:38:33 +0000 (13:38 +0000)
committeretisserant <etisserant>
Mon, 12 Nov 2007 13:38:33 +0000 (13:38 +0000)
13 files changed:
examples/DS401_Master/TestMaster.c
examples/DS401_Slave_Gui/ObjDict.c
examples/TestMasterMicroMod/TestMaster.c
examples/TestMasterSlave/TestMaster.c
examples/TestMasterSlave/TestMaster.od
examples/TestMasterSlave/TestSlave.c
examples/TestMasterSlave/TestSlave.od
include/can_driver.h
include/data.h
objdictgen/commondialogs.py
objdictgen/gen_cfile.py
src/emcy.c
src/states.c

index 686c2c3203cb71dd3b77ca507c558a4ea886da8b..8c62878937e3c991bf3168032846484c7295b91f 100644 (file)
@@ -117,6 +117,9 @@ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        { RW, uint32, sizeof (UNS32), (void*)&TestMaster_obj1006 }
                      };
 
+/* index 0x1014 :   Emergency COB ID */
+                    UNS32 TestMaster_obj1014 = 0x0;   /* 0 */
+
 /* index 0x1016 :   Consumer Heartbeat Time. */
                     UNS8 TestMaster_highestSubIndex_obj1016 = 1; /* number of subindex - 1*/
                     UNS32 TestMaster_obj1016[] = 
index 95c956a8cf97463da460dfca8c2fc70e0e0962a5..9b56fcd385ce8e4b4c10f2f6f41d2480629c8eeb 100644 (file)
@@ -216,6 +216,9 @@ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        { RW, uint32, sizeof (UNS32), (void*)&ObjDict_obj1011_Restore_All_Default_Parameters }
                      };
 
+/* index 0x1014 :   Emergency COB ID */
+                    UNS32 ObjDict_obj1014 = 0x0;   /* 0 */
+
 /* index 0x1016 :   Consumer Heartbeat Time. */
                     UNS8 ObjDict_highestSubIndex_obj1016 = 3; /* number of subindex - 1*/
                     UNS32 ObjDict_obj1016[] = 
index 6dc4b86155d5a4cfa70d43d6fbcf4d84119acebb..c0717b528d6058e9f6c49235ef31286bc03b3f71 100644 (file)
@@ -105,6 +105,9 @@ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        { RW, uint32, sizeof (UNS32), (void*)&TestMaster_obj1006 }
                      };
 
+/* index 0x1014 :   Emergency COB ID */
+                    UNS32 TestMaster_obj1014 = 0x0;   /* 0 */
+
 /* index 0x1016 :   Consumer Heartbeat Time. */
                     UNS8 TestMaster_highestSubIndex_obj1016 = 1; /* number of subindex - 1*/
                     UNS32 TestMaster_obj1016[] = 
index 1113bb3ee1415c6c9326993319882babee66ace3..f845db92a335d9ec68154698cd7074095db56c3e 100644 (file)
@@ -139,6 +139,13 @@ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        { RW, uint32, sizeof (UNS32), (void*)&TestMaster_obj1011_Restore_Manufacturer_Default_Parameters }
                      };
 
+/* index 0x1014 :   Emergency COB ID. */
+                    UNS32 TestMaster_obj1014 = 0x80;   /* 128 */
+                    subindex TestMaster_Index1014[] = 
+                     {
+                       { RW, uint32, sizeof (UNS32), (void*)&TestMaster_obj1014 }
+                     };
+
 /* index 0x1016 :   Consumer Heartbeat Time. */
                     UNS8 TestMaster_highestSubIndex_obj1016 = 1; /* number of subindex - 1*/
                     UNS32 TestMaster_obj1016[] = 
@@ -416,6 +423,7 @@ const indextable TestMaster_objdict[] =
   { (subindex*)TestMaster_Index1006,sizeof(TestMaster_Index1006)/sizeof(TestMaster_Index1006[0]), 0x1006},
   { (subindex*)TestMaster_Index1010,sizeof(TestMaster_Index1010)/sizeof(TestMaster_Index1010[0]), 0x1010},
   { (subindex*)TestMaster_Index1011,sizeof(TestMaster_Index1011)/sizeof(TestMaster_Index1011[0]), 0x1011},
+  { (subindex*)TestMaster_Index1014,sizeof(TestMaster_Index1014)/sizeof(TestMaster_Index1014[0]), 0x1014},
   { (subindex*)TestMaster_Index1016,sizeof(TestMaster_Index1016)/sizeof(TestMaster_Index1016[0]), 0x1016},
   { (subindex*)TestMaster_Index1018,sizeof(TestMaster_Index1018)/sizeof(TestMaster_Index1018[0]), 0x1018},
   { (subindex*)TestMaster_Index1280,sizeof(TestMaster_Index1280)/sizeof(TestMaster_Index1280[0]), 0x1280},
@@ -454,31 +462,32 @@ const indextable * TestMaster_scanIndexOD (UNS16 wIndex, UNS32 * errorCode, ODCa
                case 0x1006: i = 3;*callbacks = TestMaster_Index1006_callbacks; break;
                case 0x1010: i = 4;break;
                case 0x1011: i = 5;break;
-               case 0x1016: i = 6;break;
-               case 0x1018: i = 7;break;
-               case 0x1280: i = 8;break;
-               case 0x1400: i = 9;break;
-               case 0x1401: i = 10;break;
-               case 0x1402: i = 11;break;
-               case 0x1403: i = 12;break;
-               case 0x1600: i = 13;break;
-               case 0x1601: i = 14;break;
-               case 0x1602: i = 15;break;
-               case 0x1603: i = 16;break;
-               case 0x1F22: i = 17;break;
-               case 0x2000: i = 18;break;
-               case 0x2001: i = 19;break;
-               case 0x2002: i = 20;break;
-               case 0x2003: i = 21;break;
-               case 0x2004: i = 22;break;
-               case 0x2005: i = 23;break;
-               case 0x2006: i = 24;break;
-               case 0x2007: i = 25;break;
-               case 0x2008: i = 26;break;
-               case 0x2009: i = 27;break;
-               case 0x200A: i = 28;break;
-               case 0x200B: i = 29;break;
-               case 0x200C: i = 30;break;
+               case 0x1014: i = 6;break;
+               case 0x1016: i = 7;break;
+               case 0x1018: i = 8;break;
+               case 0x1280: i = 9;break;
+               case 0x1400: i = 10;break;
+               case 0x1401: i = 11;break;
+               case 0x1402: i = 12;break;
+               case 0x1403: i = 13;break;
+               case 0x1600: i = 14;break;
+               case 0x1601: i = 15;break;
+               case 0x1602: i = 16;break;
+               case 0x1603: i = 17;break;
+               case 0x1F22: i = 18;break;
+               case 0x2000: i = 19;break;
+               case 0x2001: i = 20;break;
+               case 0x2002: i = 21;break;
+               case 0x2003: i = 22;break;
+               case 0x2004: i = 23;break;
+               case 0x2005: i = 24;break;
+               case 0x2006: i = 25;break;
+               case 0x2007: i = 26;break;
+               case 0x2008: i = 27;break;
+               case 0x2009: i = 28;break;
+               case 0x200A: i = 29;break;
+               case 0x200B: i = 30;break;
+               case 0x200C: i = 31;break;
                default:
                        *errorCode = OD_NO_SUCH_OBJECT;
                        return NULL;
@@ -496,18 +505,18 @@ s_PDO_status TestMaster_PDO_status[1] = {s_PDO_staus_Initializer};
 
 quick_index TestMaster_firstIndex = {
   0, /* SDO_SVR */
-  8, /* SDO_CLT */
-  9, /* PDO_RCV */
-  13, /* PDO_RCV_MAP */
+  9, /* SDO_CLT */
+  10, /* PDO_RCV */
+  14, /* PDO_RCV_MAP */
   0, /* PDO_TRS */
   0 /* PDO_TRS_MAP */
 };
 
 quick_index TestMaster_lastIndex = {
   0, /* SDO_SVR */
-  8, /* SDO_CLT */
-  12, /* PDO_RCV */
-  16, /* PDO_RCV_MAP */
+  9, /* SDO_CLT */
+  13, /* PDO_RCV */
+  17, /* PDO_RCV_MAP */
   0, /* PDO_TRS */
   0 /* PDO_TRS_MAP */
 };
index e7f78027d88553510d61da6106ba058d8c408b23..779f0340fb0c63af8dc9a5ddb2fd027f625f81cd 100644 (file)
@@ -1,18 +1,18 @@
 <?xml version="1.0"?>
 <!DOCTYPE PyObject SYSTEM "PyObjects.dtd">
-<PyObject module="node" class="Node" id="40515488">
-<attr name="Profile" type="dict" id="19894016" >
+<PyObject module="node" class="Node" id="38397928">
+<attr name="Profile" type="dict" id="40412192" >
   <entry>
     <key type="numeric" value="24576" />
-    <val type="dict" id="19798352" >
+    <val type="dict" id="40412480" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40479704" >
-          <item type="dict" id="19922256" >
+        <val type="list" id="38397496" >
+          <item type="dict" id="40413552" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
@@ -30,7 +30,7 @@
               <val type="string" value="Number of Input 8 bit" />
             </entry>
           </item>
-          <item type="dict" id="40963504" >
+          <item type="dict" id="40413984" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
   </entry>
   <entry>
     <key type="numeric" value="24832" />
-    <val type="dict" id="19797296" >
+    <val type="dict" id="40414272" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40515632" >
-          <item type="dict" id="19973776" >
+        <val type="list" id="38398000" >
+          <item type="dict" id="40412768" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
@@ -92,7 +92,7 @@
               <val type="string" value="Number of Input 16 bit" />
             </entry>
           </item>
-          <item type="dict" id="19814032" >
+          <item type="dict" id="40413104" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
   </entry>
   <entry>
     <key type="numeric" value="24578" />
-    <val type="dict" id="19809920" >
+    <val type="dict" id="40417648" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40515416" >
-          <item type="dict" id="40946800" >
+        <val type="list" id="38398072" >
+          <item type="dict" id="40417936" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 8 bit" />
             </entry>
           </item>
-          <item type="dict" id="19783424" >
+          <item type="dict" id="40418224" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24579" />
-    <val type="dict" id="40419920" >
+    <val type="dict" id="40418512" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40439888" >
-          <item type="dict" id="40874800" >
+        <val type="list" id="38398144" >
+          <item type="dict" id="40418800" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 8 bit" />
             </entry>
           </item>
-          <item type="dict" id="40952384" >
+          <item type="dict" id="40419088" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25604" />
-    <val type="dict" id="19877440" >
+    <val type="dict" id="40419376" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40515056" >
-          <item type="dict" id="19867680" >
+        <val type="list" id="38398216" >
+          <item type="dict" id="40419664" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Input" />
             </entry>
           </item>
-          <item type="dict" id="19868112" >
+          <item type="dict" id="40419952" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
   </entry>
   <entry>
     <key type="numeric" value="24581" />
-    <val type="dict" id="19745648" >
+    <val type="dict" id="40420240" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40515272" >
-          <item type="dict" id="19829520" >
+        <val type="list" id="38398360" >
+          <item type="dict" id="40420528" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24582" />
-    <val type="dict" id="19829808" >
+    <val type="dict" id="40421696" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40515704" >
-          <item type="dict" id="20008208" >
+        <val type="list" id="38398504" >
+          <item type="dict" id="40421984" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 8 bit" />
             </entry>
           </item>
-          <item type="dict" id="20008496" >
+          <item type="dict" id="40422272" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24583" />
-    <val type="dict" id="19886416" >
+    <val type="dict" id="40422608" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40515560" >
-          <item type="dict" id="19886704" >
+        <val type="list" id="38398648" >
+          <item type="dict" id="40422896" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 8 bit" />
             </entry>
           </item>
-          <item type="dict" id="19938336" >
+          <item type="dict" id="40423184" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24584" />
-    <val type="dict" id="19938672" >
+    <val type="dict" id="40423520" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40516064" >
-          <item type="dict" id="41071184" >
+        <val type="list" id="38398792" >
+          <item type="dict" id="40423808" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 8 bit" />
             </entry>
           </item>
-          <item type="dict" id="41071472" >
+          <item type="dict" id="40424096" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24834" />
-    <val type="dict" id="40968448" >
+    <val type="dict" id="40424432" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40516208" >
-          <item type="dict" id="40968736" >
+        <val type="list" id="38398936" >
+          <item type="dict" id="40424720" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 16 bit" />
             </entry>
           </item>
-          <item type="dict" id="40969024" >
+          <item type="dict" id="40425008" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25616" />
-    <val type="dict" id="40969360" >
+    <val type="dict" id="40425344" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40516352" >
-          <item type="dict" id="40969648" >
+        <val type="list" id="38399080" >
+          <item type="dict" id="40425632" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Input 8 Bit" />
             </entry>
           </item>
-          <item type="dict" id="40965360" >
+          <item type="dict" id="40414560" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25617" />
-    <val type="dict" id="40965696" >
+    <val type="dict" id="40414896" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40516496" >
-          <item type="dict" id="40965984" >
+        <val type="list" id="38399224" >
+          <item type="dict" id="40415184" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Input 16 Bit" />
             </entry>
           </item>
-          <item type="dict" id="40966272" >
+          <item type="dict" id="40415472" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25618" />
-    <val type="dict" id="40966608" >
+    <val type="dict" id="40415808" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40516712" >
-          <item type="dict" id="40966896" >
+        <val type="list" id="38399440" >
+          <item type="dict" id="40416096" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs 32 Bit" />
             </entry>
           </item>
-          <item type="dict" id="40967184" >
+          <item type="dict" id="40416384" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24835" />
-    <val type="dict" id="40967520" >
+    <val type="dict" id="40416720" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40516928" >
-          <item type="dict" id="40967808" >
+        <val type="list" id="38399656" >
+          <item type="dict" id="40417008" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 16 bit" />
             </entry>
           </item>
-          <item type="dict" id="40968096" >
+          <item type="dict" id="40417296" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25620" />
-    <val type="dict" id="40969936" >
+    <val type="dict" id="40438304" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40517144" >
-          <item type="dict" id="40970224" >
+        <val type="list" id="38399872" >
+          <item type="dict" id="40438592" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="40970560" >
+          <item type="dict" id="40438880" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25088" />
-    <val type="dict" id="40970896" >
+    <val type="dict" id="40439168" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40517360" >
-          <item type="dict" id="40971184" >
+        <val type="list" id="38391960" >
+          <item type="dict" id="40439456" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 8 Bit" />
             </entry>
           </item>
-          <item type="dict" id="40971472" >
+          <item type="dict" id="40439792" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25603" />
-    <val type="dict" id="40971760" >
+    <val type="dict" id="40440080" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40517504" >
-          <item type="dict" id="40972048" >
+        <val type="list" id="38392104" >
+          <item type="dict" id="40440368" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Input Float" />
             </entry>
           </item>
-          <item type="dict" id="40972384" >
+          <item type="dict" id="40440704" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
       </entry>
     </val>
   </entry>
+  <entry>
+    <key type="numeric" value="25378" />
+    <val type="dict" id="40431440" >
+      <entry>
+        <key type="string" value="need" />
+        <val type="False" value="" />
+      </entry>
+      <entry>
+        <key type="string" value="values" />
+        <val type="list" id="38405976" >
+          <item type="dict" id="40431728" >
+            <entry>
+              <key type="string" value="access" />
+              <val type="string" value="ro" />
+            </entry>
+            <entry>
+              <key type="string" value="pdo" />
+              <val type="False" value="" />
+            </entry>
+            <entry>
+              <key type="string" value="type" />
+              <val type="numeric" value="5" />
+            </entry>
+            <entry>
+              <key type="string" value="name" />
+              <val type="string" value="Number of Output 32 Bit" />
+            </entry>
+          </item>
+          <item type="dict" id="40432016" >
+            <entry>
+              <key type="string" value="access" />
+              <val type="string" value="rw" />
+            </entry>
+            <entry>
+              <key type="string" value="pdo" />
+              <val type="True" value="" />
+            </entry>
+            <entry>
+              <key type="string" value="type" />
+              <val type="numeric" value="7" />
+            </entry>
+            <entry>
+              <key type="string" value="name" />
+              <val type="string" value="Polarity Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]" />
+            </entry>
+            <entry>
+              <key type="string" value="nbmax" />
+              <val type="numeric" value="254" />
+            </entry>
+          </item>
+        </val>
+      </entry>
+      <entry>
+        <key type="string" value="name" />
+        <val type="string" value="Change Polarity Outputs 32 Bit" />
+      </entry>
+      <entry>
+        <key type="string" value="struct" />
+        <val type="numeric" value="7" />
+      </entry>
+    </val>
+  </entry>
   <entry>
     <key type="numeric" value="25344" />
-    <val type="dict" id="40973632" >
+    <val type="dict" id="40441040" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40526048" >
-          <item type="dict" id="40973920" >
+        <val type="list" id="38392248" >
+          <item type="dict" id="40441328" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 16 Bit" />
             </entry>
           </item>
-          <item type="dict" id="40974208" >
+          <item type="dict" id="40441616" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24608" />
-    <val type="dict" id="40974496" >
+    <val type="dict" id="40441904" >
       <entry>
         <key type="string" value="incr" />
         <val type="numeric" value="1" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40526192" >
-          <item type="dict" id="40974784" >
+        <val type="list" id="38392392" >
+          <item type="dict" id="40442192" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 1 bit" />
             </entry>
           </item>
-          <item type="dict" id="40975120" >
+          <item type="dict" id="40442528" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25633" />
-    <val type="dict" id="40976192" >
+    <val type="dict" id="40443600" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40526264" >
-          <item type="dict" id="40976480" >
+        <val type="list" id="38392464" >
+          <item type="dict" id="40443888" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="40976816" >
+          <item type="dict" id="40444224" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24866" />
-    <val type="dict" id="40977152" >
+    <val type="dict" id="40444560" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40526408" >
-          <item type="dict" id="40977440" >
+        <val type="list" id="38392608" >
+          <item type="dict" id="40444848" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 32 bit" />
             </entry>
           </item>
-          <item type="dict" id="40977728" >
+          <item type="dict" id="40445136" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24867" />
-    <val type="dict" id="40981104" >
+    <val type="dict" id="40445472" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40526624" >
-          <item type="dict" id="40981392" >
+        <val type="list" id="38392824" >
+          <item type="dict" id="40445760" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 32 bit" />
             </entry>
           </item>
-          <item type="dict" id="19971520" >
+          <item type="dict" id="40446048" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25636" />
-    <val type="dict" id="19971856" >
+    <val type="dict" id="40420912" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40526696" >
-          <item type="dict" id="41084496" >
+        <val type="list" id="38392896" >
+          <item type="dict" id="40421200" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41084784" >
+          <item type="dict" id="40449424" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24838" />
-    <val type="dict" id="41085120" >
+    <val type="dict" id="40449712" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40526912" >
-          <item type="dict" id="41085408" >
+        <val type="list" id="38393112" >
+          <item type="dict" id="40450000" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 16 bit" />
             </entry>
           </item>
-          <item type="dict" id="41085696" >
+          <item type="dict" id="40450288" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25638" />
-    <val type="dict" id="41086112" >
+    <val type="dict" id="40450576" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40526984" >
-          <item type="dict" id="41086400" >
+        <val type="list" id="38393184" >
+          <item type="dict" id="40450864" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41086688" >
+          <item type="dict" id="40451152" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25383" />
-    <val type="dict" id="41087024" >
+    <val type="dict" id="40451440" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40527128" >
-          <item type="dict" id="41087312" >
+        <val type="list" id="38393328" >
+          <item type="dict" id="40451728" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 32 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41087600" >
+          <item type="dict" id="40452016" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25640" />
-    <val type="dict" id="41087936" >
+    <val type="dict" id="40452304" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40527200" >
-          <item type="dict" id="41088224" >
+        <val type="list" id="38393400" >
+          <item type="dict" id="40452592" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41088512" >
+          <item type="dict" id="40452928" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25641" />
-    <val type="dict" id="41088848" >
+    <val type="dict" id="40453264" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40527416" >
-          <item type="dict" id="41089136" >
+        <val type="list" id="38393616" >
+          <item type="dict" id="40453552" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41089424" >
+          <item type="dict" id="40453840" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25642" />
-    <val type="dict" id="41089760" >
+    <val type="dict" id="40454176" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40527560" >
-          <item type="dict" id="41090048" >
+        <val type="list" id="38393760" >
+          <item type="dict" id="40454464" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41090336" >
+          <item type="dict" id="40454752" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25643" />
-    <val type="dict" id="41090672" >
+    <val type="dict" id="40455088" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40527704" >
-          <item type="dict" id="41090960" >
+        <val type="list" id="38393904" >
+          <item type="dict" id="40455376" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41091248" >
+          <item type="dict" id="40455664" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25644" />
-    <val type="dict" id="41091584" >
+    <val type="dict" id="40456000" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40527848" >
-          <item type="dict" id="41091872" >
+        <val type="list" id="38394048" >
+          <item type="dict" id="40456288" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41092160" >
+          <item type="dict" id="40456576" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25645" />
-    <val type="dict" id="41092496" >
+    <val type="dict" id="40456912" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40527992" >
-          <item type="dict" id="41092784" >
+        <val type="list" id="38394192" >
+          <item type="dict" id="40457200" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41093072" >
+          <item type="dict" id="40457488" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25646" />
-    <val type="dict" id="41093408" >
+    <val type="dict" id="40457824" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40528136" >
-          <item type="dict" id="41093696" >
+        <val type="list" id="38394336" >
+          <item type="dict" id="40458112" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41093984" >
+          <item type="dict" id="40458400" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25647" />
-    <val type="dict" id="41094320" >
+    <val type="dict" id="40458736" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40528280" >
-          <item type="dict" id="41094608" >
+        <val type="list" id="38394480" >
+          <item type="dict" id="40459024" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41094896" >
+          <item type="dict" id="40459312" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24624" />
-    <val type="dict" id="41095232" >
+    <val type="dict" id="40459648" >
       <entry>
         <key type="string" value="incr" />
         <val type="numeric" value="1" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40528496" >
-          <item type="dict" id="41095520" >
+        <val type="list" id="38394696" >
+          <item type="dict" id="40459936" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 1 bit" />
             </entry>
           </item>
-          <item type="dict" id="41095808" >
+          <item type="dict" id="40460224" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25352" />
-    <val type="dict" id="41096880" >
+    <val type="dict" id="40461296" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40528640" >
-          <item type="dict" id="41097168" >
+        <val type="list" id="38394840" >
+          <item type="dict" id="40461584" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 16 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41097504" >
+          <item type="dict" id="40461920" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25650" />
-    <val type="dict" id="41097840" >
+    <val type="dict" id="40462256" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40528712" >
-          <item type="dict" id="41098128" >
+        <val type="list" id="38394912" >
+          <item type="dict" id="40462544" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41098416" >
+          <item type="dict" id="40462832" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25350" />
-    <val type="dict" id="41075600" >
+    <key type="numeric" value="25090" />
+    <val type="dict" id="40434080" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40539992" >
-          <item type="dict" id="41075888" >
+        <val type="list" id="38406192" >
+          <item type="dict" id="40434368" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Output 16 Bit" />
+              <val type="string" value="Number of Output 8 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41076176" >
+          <item type="dict" id="40434704" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="type" />
-              <val type="numeric" value="6" />
+              <val type="numeric" value="5" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Error Mode Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]" />
+              <val type="string" value="Change Polarity Outputs 0x%X to 0x%X[(sub*8-7,sub*8)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Error Mode Outputs 16 Bit" />
+        <val type="string" value="Change Polarity Outputs 8 Bit" />
       </entry>
       <entry>
         <key type="string" value="struct" />
       </entry>
     </val>
   </entry>
-  <entry>
-    <key type="numeric" value="25200" />
-    <val type="dict" id="41237824" >
-      <entry>
-        <key type="string" value="incr" />
-        <val type="numeric" value="1" />
-      </entry>
-      <entry>
-        <key type="string" value="struct" />
-        <val type="numeric" value="15" />
-      </entry>
-      <entry>
-        <key type="string" value="nbmax" />
-        <val type="numeric" value="8" />
-      </entry>
-      <entry>
-        <key type="string" value="values" />
-        <val type="list" id="40542432" >
-          <item type="dict" id="41238112" >
-            <entry>
-              <key type="string" value="access" />
-              <val type="string" value="ro" />
-            </entry>
-            <entry>
-              <key type="string" value="pdo" />
-              <val type="False" value="" />
-            </entry>
-            <entry>
-              <key type="string" value="type" />
-              <val type="numeric" value="5" />
-            </entry>
-            <entry>
-              <key type="string" value="name" />
-              <val type="string" value="Number of Output 1 Bit" />
-            </entry>
-          </item>
-          <item type="dict" id="41238400" >
-            <entry>
-              <key type="string" value="access" />
-              <val type="string" value="rw" />
-            </entry>
-            <entry>
-              <key type="string" value="pdo" />
-              <val type="True" value="" />
-            </entry>
-            <entry>
-              <key type="string" value="type" />
-              <val type="numeric" value="1" />
-            </entry>
-            <entry>
-              <key type="string" value="name" />
-              <val type="string" value="Filter Constant Outputs 0x%X[((idx-1)*128+sub)]" />
-            </entry>
-            <entry>
-              <key type="string" value="nbmax" />
-              <val type="numeric" value="128" />
-            </entry>
-          </item>
-        </val>
-      </entry>
-      <entry>
-        <key type="string" value="need" />
-        <val type="False" value="" />
-      </entry>
-      <entry>
-        <key type="string" value="name" />
-        <val type="string" value="Filter Constant Outputs Lines %d to %d[(idx*128-127,idx*128)]" />
-      </entry>
-    </val>
-  </entry>
   <entry>
     <key type="numeric" value="25096" />
-    <val type="dict" id="41099664" >
+    <val type="dict" id="40465728" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40529072" >
-          <item type="dict" id="41099952" >
+        <val type="list" id="38395416" >
+          <item type="dict" id="40466016" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 8 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41100240" >
+          <item type="dict" id="40466352" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24632" />
-    <val type="dict" id="41100576" >
+    <val type="dict" id="40466688" >
       <entry>
         <key type="string" value="incr" />
         <val type="numeric" value="1" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40529216" >
-          <item type="dict" id="41100864" >
+        <val type="list" id="38395488" >
+          <item type="dict" id="40466976" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 1 bit" />
             </entry>
           </item>
-          <item type="dict" id="41101152" >
+          <item type="dict" id="40467264" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25639" />
-    <val type="dict" id="41236096" >
+    <key type="numeric" value="24871" />
+    <val type="dict" id="40536032" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40542080" >
-          <item type="dict" id="41236384" >
+        <val type="list" id="38416464" >
+          <item type="dict" id="40536320" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Analogue Inputs" />
+              <val type="string" value="Number of Input 32 bit" />
             </entry>
           </item>
-          <item type="dict" id="41236672" >
+          <item type="dict" id="40536656" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Analogue Input %d[(sub)]" />
+              <val type="string" value="Interrupt Low to High Input  0x%X to 0x%X[(sub*32-31,sub*32)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Analogue Input Interrupt Negative Delta Unsigned" />
+        <val type="string" value="Interrupt Mask Input Low to High 32 Bit" />
       </entry>
       <entry>
         <key type="string" value="struct" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="24872" />
-    <val type="dict" id="41239472" >
+    <key type="numeric" value="24656" />
+    <val type="dict" id="40534384" >
       <entry>
-        <key type="string" value="need" />
-        <val type="False" value="" />
+        <key type="string" value="incr" />
+        <val type="numeric" value="1" />
+      </entry>
+      <entry>
+        <key type="string" value="struct" />
+        <val type="numeric" value="15" />
+      </entry>
+      <entry>
+        <key type="string" value="nbmax" />
+        <val type="numeric" value="8" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40542504" >
-          <item type="dict" id="41239760" >
+        <val type="list" id="38408064" >
+          <item type="dict" id="40534672" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Input 32 bit" />
+              <val type="string" value="Number of Input 1 bit" />
             </entry>
           </item>
-          <item type="dict" id="41240048" >
+          <item type="dict" id="40534960" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="type" />
-              <val type="numeric" value="7" />
+              <val type="numeric" value="1" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Interrupt High to Low Input 0x%X to 0x%X[(sub*32-31,sub*32)]" />
+              <val type="string" value="Interrupt Mask Any Change Input bit 0x%X[((idx-1)*128+sub)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
-              <val type="numeric" value="254" />
+              <val type="numeric" value="128" />
             </entry>
           </item>
         </val>
       </entry>
       <entry>
-        <key type="string" value="name" />
-        <val type="string" value="Interrupt Mask Input High to Low 32 Bit" />
+        <key type="string" value="need" />
+        <val type="False" value="" />
       </entry>
       <entry>
-        <key type="string" value="struct" />
-        <val type="numeric" value="7" />
+        <key type="string" value="name" />
+        <val type="string" value="Interrupt Mask Input Any Change Bit 0x%X to 0x%X[(idx*128-127,idx*128)]" />
       </entry>
     </val>
   </entry>
   <entry>
     <key type="numeric" value="25152" />
-    <val type="dict" id="41104096" >
+    <val type="dict" id="40470208" >
       <entry>
         <key type="string" value="incr" />
         <val type="numeric" value="1" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40529504" >
-          <item type="dict" id="41104384" >
+        <val type="list" id="38395848" >
+          <item type="dict" id="40470496" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 1 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41104672" >
+          <item type="dict" id="40470784" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24864" />
-    <val type="dict" id="41105744" >
+    <val type="dict" id="40471856" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40529648" >
-          <item type="dict" id="41106032" >
+        <val type="list" id="38404248" >
+          <item type="dict" id="40472144" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 32 bit" />
             </entry>
           </item>
-          <item type="dict" id="41106368" >
+          <item type="dict" id="40472480" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25666" />
-    <val type="dict" id="41106656" >
+    <val type="dict" id="40472768" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40529720" >
-          <item type="dict" id="41106944" >
+        <val type="list" id="38404320" >
+          <item type="dict" id="40473056" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="41107280" >
+          <item type="dict" id="40473392" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25667" />
-    <val type="dict" id="41107616" >
+    <val type="dict" id="40473728" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40529864" >
-          <item type="dict" id="41107904" >
+        <val type="list" id="38404464" >
+          <item type="dict" id="40474016" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="41108192" >
+          <item type="dict" id="40474304" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25668" />
-    <val type="dict" id="41108480" >
+    <val type="dict" id="40425920" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40538408" >
-          <item type="dict" id="41108768" >
+        <val type="list" id="38404752" >
+          <item type="dict" id="40426208" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="41109104" >
+          <item type="dict" id="40426544" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25669" />
-    <val type="dict" id="41109440" >
+    <val type="dict" id="40426880" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40538624" >
-          <item type="dict" id="41109728" >
+        <val type="list" id="38404968" >
+          <item type="dict" id="40427168" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="41110016" >
+          <item type="dict" id="40427456" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25665" />
-    <val type="dict" id="41110352" >
+    <val type="dict" id="40427792" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40538840" >
-          <item type="dict" id="41110640" >
+        <val type="list" id="38405184" >
+          <item type="dict" id="40428080" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="41110928" >
+          <item type="dict" id="40428368" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25648" />
-    <val type="dict" id="41111264" >
+    <val type="dict" id="40428704" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40539056" >
-          <item type="dict" id="41111552" >
+        <val type="list" id="38405400" >
+          <item type="dict" id="40428992" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41111840" >
+          <item type="dict" id="40429280" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25634" />
-    <val type="dict" id="41072864" >
+    <key type="numeric" value="24672" />
+    <val type="dict" id="40529008" >
       <entry>
-        <key type="string" value="need" />
-        <val type="False" value="" />
+        <key type="string" value="incr" />
+        <val type="numeric" value="1" />
+      </entry>
+      <entry>
+        <key type="string" value="struct" />
+        <val type="numeric" value="15" />
+      </entry>
+      <entry>
+        <key type="string" value="nbmax" />
+        <val type="numeric" value="8" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40539488" >
-          <item type="dict" id="41073152" >
+        <val type="list" id="38407344" >
+          <item type="dict" id="40529296" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Interrupt Source Bank" />
+              <val type="string" value="Number of Input 1 bit" />
             </entry>
           </item>
-          <item type="dict" id="41073440" >
+          <item type="dict" id="40529632" >
             <entry>
               <key type="string" value="access" />
-              <val type="string" value="ro" />
+              <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="pdo" />
             </entry>
             <entry>
               <key type="string" value="type" />
-              <val type="numeric" value="7" />
+              <val type="numeric" value="1" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Interrupt Source Bank 0x%X[(sub)]" />
+              <val type="string" value="Interrupt Mask Any Change Input bit 0x%X[((idx-1)*128+sub)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
-              <val type="numeric" value="254" />
+              <val type="numeric" value="128" />
             </entry>
           </item>
         </val>
       </entry>
       <entry>
-        <key type="string" value="name" />
-        <val type="string" value="Analogue Input Interrupt Source" />
+        <key type="string" value="need" />
+        <val type="False" value="" />
       </entry>
       <entry>
-        <key type="string" value="struct" />
-        <val type="numeric" value="7" />
+        <key type="string" value="name" />
+        <val type="string" value="Interrupt Mask Input Low to High Bit 0x%X to 0x%X[(idx*128-127,idx*128)]" />
       </entry>
     </val>
   </entry>
   <entry>
     <key type="numeric" value="25094" />
-    <val type="dict" id="41113824" >
+    <val type="dict" id="40430528" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40539416" >
-          <item type="dict" id="41072192" >
+        <val type="list" id="38405832" >
+          <item type="dict" id="40430816" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 8 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41072528" >
+          <item type="dict" id="40431104" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25378" />
-    <val type="dict" id="40972720" >
+    <key type="numeric" value="25634" />
+    <val type="dict" id="40429616" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40525904" >
-          <item type="dict" id="40973008" >
+        <val type="list" id="38405688" >
+          <item type="dict" id="40429904" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Output 32 Bit" />
+              <val type="string" value="Number of Interrupt Source Bank" />
             </entry>
           </item>
-          <item type="dict" id="40973296" >
+          <item type="dict" id="40430192" >
             <entry>
               <key type="string" value="access" />
-              <val type="string" value="rw" />
+              <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="pdo" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Polarity Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]" />
+              <val type="string" value="Interrupt Source Bank 0x%X[(sub)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Change Polarity Outputs 32 Bit" />
+        <val type="string" value="Analogue Input Interrupt Source" />
       </entry>
       <entry>
         <key type="string" value="struct" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25680" />
-    <val type="dict" id="41074688" >
+    <key type="numeric" value="25384" />
+    <val type="dict" id="40538816" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40539776" >
-          <item type="dict" id="41074976" >
+        <val type="list" id="38416824" >
+          <item type="dict" id="40539104" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Analogue Outputs" />
+              <val type="string" value="Number of Output 32 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41075264" >
+          <item type="dict" id="40539392" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Analogue Output %d[(sub)]" />
+              <val type="string" value="Filter Mask Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Analogue Output SI Unit" />
+        <val type="string" value="Filter Mask Outputs 32 Bit" />
       </entry>
       <entry>
         <key type="string" value="struct" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25090" />
-    <val type="dict" id="41098752" >
+    <key type="numeric" value="25168" />
+    <val type="dict" id="40432352" >
+      <entry>
+        <key type="string" value="incr" />
+        <val type="numeric" value="1" />
+      </entry>
+      <entry>
+        <key type="string" value="struct" />
+        <val type="numeric" value="15" />
+      </entry>
+      <entry>
+        <key type="string" value="nbmax" />
+        <val type="numeric" value="8" />
+      </entry>
+      <entry>
+        <key type="string" value="values" />
+        <val type="list" id="38406048" >
+          <item type="dict" id="40432640" >
+            <entry>
+              <key type="string" value="access" />
+              <val type="string" value="ro" />
+            </entry>
+            <entry>
+              <key type="string" value="pdo" />
+              <val type="False" value="" />
+            </entry>
+            <entry>
+              <key type="string" value="type" />
+              <val type="numeric" value="5" />
+            </entry>
+            <entry>
+              <key type="string" value="name" />
+              <val type="string" value="Number of Output 1 Bit" />
+            </entry>
+          </item>
+          <item type="dict" id="40432928" >
+            <entry>
+              <key type="string" value="access" />
+              <val type="string" value="rw" />
+            </entry>
+            <entry>
+              <key type="string" value="pdo" />
+              <val type="True" value="" />
+            </entry>
+            <entry>
+              <key type="string" value="type" />
+              <val type="numeric" value="1" />
+            </entry>
+            <entry>
+              <key type="string" value="name" />
+              <val type="string" value="Error Mode Outputs 0x%X[((idx-1)*128+sub)]" />
+            </entry>
+            <entry>
+              <key type="string" value="nbmax" />
+              <val type="numeric" value="128" />
+            </entry>
+          </item>
+        </val>
+      </entry>
+      <entry>
+        <key type="string" value="need" />
+        <val type="False" value="" />
+      </entry>
+      <entry>
+        <key type="string" value="name" />
+        <val type="string" value="Error Mode Outputs Lines %d to %d[(idx*128-127,idx*128)]" />
+      </entry>
+    </val>
+  </entry>
+  <entry>
+    <key type="numeric" value="25350" />
+    <val type="dict" id="40463168" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40528928" >
-          <item type="dict" id="41099040" >
+        <val type="list" id="38395128" >
+          <item type="dict" id="40463456" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Output 8 Bit" />
+              <val type="string" value="Number of Output 16 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41099328" >
+          <item type="dict" id="40463744" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="type" />
-              <val type="numeric" value="5" />
+              <val type="numeric" value="6" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Change Polarity Outputs 0x%X to 0x%X[(sub*8-7,sub*8)]" />
+              <val type="string" value="Error Mode Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Change Polarity Outputs 8 Bit" />
+        <val type="string" value="Error Mode Outputs 16 Bit" />
       </entry>
       <entry>
         <key type="string" value="struct" />
   </entry>
   <entry>
     <key type="numeric" value="25635" />
-    <val type="dict" id="41076512" >
+    <val type="dict" id="40435040" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40540136" >
-          <item type="dict" id="41076800" >
+        <val type="list" id="38406264" >
+          <item type="dict" id="40435328" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="24870" />
-    <val type="dict" id="41236960" >
+    <key type="numeric" value="25351" />
+    <val type="dict" id="40537904" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40542360" >
-          <item type="dict" id="41237248" >
+        <val type="list" id="38416680" >
+          <item type="dict" id="40538192" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Input 32 bit" />
+              <val type="string" value="Number of Output 16 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41237536" >
+          <item type="dict" id="40538480" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="type" />
-              <val type="numeric" value="7" />
+              <val type="numeric" value="6" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Interrupt Any Change Input 0x%X to 0x%X[(sub*32-31,sub*32)]" />
+              <val type="string" value="Error Value Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Interrupt Mask Input Any Change 32 Bit" />
+        <val type="string" value="Error Value Outputs 16 Bit" />
       </entry>
       <entry>
         <key type="string" value="struct" />
   </entry>
   <entry>
     <key type="numeric" value="25120" />
-    <val type="dict" id="41078048" >
+    <val type="dict" id="40436528" >
       <entry>
         <key type="string" value="incr" />
         <val type="numeric" value="1" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40540424" >
-          <item type="dict" id="41078336" >
+        <val type="list" id="38406480" >
+          <item type="dict" id="40436816" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 1 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41078624" >
+          <item type="dict" id="40437152" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25600" />
-    <val type="dict" id="41079696" >
+    <val type="dict" id="40523760" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40540568" >
-          <item type="dict" id="41079984" >
+        <val type="list" id="38406552" >
+          <item type="dict" id="40524048" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Input 8 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41080320" >
+          <item type="dict" id="40524336" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
       </entry>
     </val>
   </entry>
-  <entry>
-    <key type="numeric" value="25184" />
-    <val type="dict" id="41083344" >
-      <entry>
-        <key type="string" value="incr" />
-        <val type="numeric" value="1" />
-      </entry>
-      <entry>
-        <key type="string" value="struct" />
-        <val type="numeric" value="15" />
-      </entry>
-      <entry>
-        <key type="string" value="nbmax" />
-        <val type="numeric" value="8" />
-      </entry>
-      <entry>
-        <key type="string" value="values" />
-        <val type="list" id="40541288" >
-          <item type="dict" id="41083632" >
-            <entry>
-              <key type="string" value="access" />
-              <val type="string" value="ro" />
-            </entry>
-            <entry>
-              <key type="string" value="pdo" />
-              <val type="False" value="" />
-            </entry>
-            <entry>
-              <key type="string" value="type" />
-              <val type="numeric" value="5" />
-            </entry>
-            <entry>
-              <key type="string" value="name" />
-              <val type="string" value="Number of Output 1 Bit" />
-            </entry>
-          </item>
-          <item type="dict" id="41083968" >
-            <entry>
-              <key type="string" value="access" />
-              <val type="string" value="rw" />
-            </entry>
-            <entry>
-              <key type="string" value="pdo" />
-              <val type="True" value="" />
-            </entry>
-            <entry>
-              <key type="string" value="type" />
-              <val type="numeric" value="1" />
-            </entry>
-            <entry>
-              <key type="string" value="name" />
-              <val type="string" value="Error Value Outputs 0x%X[((idx-1)*128+sub)]" />
-            </entry>
-            <entry>
-              <key type="string" value="nbmax" />
-              <val type="numeric" value="128" />
-            </entry>
-          </item>
-        </val>
-      </entry>
-      <entry>
-        <key type="string" value="need" />
-        <val type="False" value="" />
-      </entry>
-      <entry>
-        <key type="string" value="name" />
-        <val type="string" value="Error Value Outputs Lines %d to %d[(idx*128-127,idx*128)]" />
-      </entry>
-    </val>
-  </entry>
   <entry>
     <key type="numeric" value="25346" />
-    <val type="dict" id="41080656" >
+    <val type="dict" id="40526272" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40540712" >
-          <item type="dict" id="41080944" >
+        <val type="list" id="38406840" >
+          <item type="dict" id="40526560" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 16 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41081232" >
+          <item type="dict" id="40526896" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25670" />
-    <val type="dict" id="41081568" >
+    <val type="dict" id="40527232" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40540856" >
-          <item type="dict" id="41081856" >
+        <val type="list" id="38406912" >
+          <item type="dict" id="40527520" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="41082144" >
+          <item type="dict" id="40527808" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25376" />
-    <val type="dict" id="41082480" >
+    <val type="dict" id="40528144" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40541072" >
-          <item type="dict" id="41082768" >
+        <val type="list" id="38407128" >
+          <item type="dict" id="40528432" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 32 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41083056" >
+          <item type="dict" id="40528720" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="24672" />
-    <val type="dict" id="41112176" >
+    <key type="numeric" value="25184" />
+    <val type="dict" id="40524624" >
       <entry>
         <key type="string" value="incr" />
         <val type="numeric" value="1" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40539344" >
-          <item type="dict" id="41112464" >
+        <val type="list" id="38406696" >
+          <item type="dict" id="40524912" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Input 1 bit" />
+              <val type="string" value="Number of Output 1 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41112752" >
+          <item type="dict" id="40525200" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Interrupt Mask Any Change Input bit 0x%X[((idx-1)*128+sub)]" />
+              <val type="string" value="Error Value Outputs 0x%X[((idx-1)*128+sub)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Interrupt Mask Input Low to High Bit 0x%X to 0x%X[(idx*128-127,idx*128)]" />
+        <val type="string" value="Error Value Outputs Lines %d to %d[(idx*128-127,idx*128)]" />
       </entry>
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="24656" />
-    <val type="dict" id="41230992" >
-      <entry>
-        <key type="string" value="incr" />
-        <val type="numeric" value="1" />
-      </entry>
-      <entry>
-        <key type="string" value="struct" />
-        <val type="numeric" value="15" />
-      </entry>
+    <key type="numeric" value="25680" />
+    <val type="dict" id="40530704" >
       <entry>
-        <key type="string" value="nbmax" />
-        <val type="numeric" value="8" />
+        <key type="string" value="need" />
+        <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40541360" >
-          <item type="dict" id="41231280" >
+        <val type="list" id="38407416" >
+          <item type="dict" id="40530992" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Input 1 bit" />
+              <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="41231568" >
+          <item type="dict" id="40531280" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="type" />
-              <val type="numeric" value="1" />
+              <val type="numeric" value="7" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Interrupt Mask Any Change Input bit 0x%X[((idx-1)*128+sub)]" />
+              <val type="string" value="Analogue Output %d[(sub)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
-              <val type="numeric" value="128" />
+              <val type="numeric" value="254" />
             </entry>
           </item>
         </val>
       </entry>
       <entry>
-        <key type="string" value="need" />
-        <val type="False" value="" />
+        <key type="string" value="name" />
+        <val type="string" value="Analogue Output SI Unit" />
       </entry>
       <entry>
-        <key type="string" value="name" />
-        <val type="string" value="Interrupt Mask Input Any Change Bit 0x%X to 0x%X[(idx*128-127,idx*128)]" />
+        <key type="string" value="struct" />
+        <val type="numeric" value="7" />
       </entry>
     </val>
   </entry>
   <entry>
     <key type="numeric" value="25602" />
-    <val type="dict" id="41232640" >
+    <val type="dict" id="40531568" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40541432" >
-          <item type="dict" id="41232928" >
+        <val type="list" id="38407560" >
+          <item type="dict" id="40531856" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Input 32 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41233216" >
+          <item type="dict" id="40532144" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25382" />
-    <val type="dict" id="41233504" >
+    <key type="numeric" value="24870" />
+    <val type="dict" id="40532480" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40541576" >
-          <item type="dict" id="41233792" >
+        <val type="list" id="38407776" >
+          <item type="dict" id="40532768" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Output 32 Bit" />
+              <val type="string" value="Number of Input 32 bit" />
             </entry>
           </item>
-          <item type="dict" id="41234080" >
+          <item type="dict" id="40533056" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Error Mode Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]" />
+              <val type="string" value="Interrupt Any Change Input 0x%X to 0x%X[(sub*32-31,sub*32)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Error Mode Outputs 32 Bit" />
+        <val type="string" value="Interrupt Mask Input Any Change 32 Bit" />
       </entry>
       <entry>
         <key type="string" value="struct" />
   </entry>
   <entry>
     <key type="numeric" value="25649" />
-    <val type="dict" id="41234368" >
+    <val type="dict" id="40533424" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40541720" >
-          <item type="dict" id="41234656" >
+        <val type="list" id="38407920" >
+          <item type="dict" id="40533712" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41234944" >
+          <item type="dict" id="40534048" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25095" />
-    <val type="dict" id="41235232" >
+    <val type="dict" id="40469296" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40541936" >
-          <item type="dict" id="41235520" >
+        <val type="list" id="38395776" >
+          <item type="dict" id="40469584" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Output 8 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41235808" >
+          <item type="dict" id="40469872" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="24871" />
-    <val type="dict" id="41102224" >
+    <key type="numeric" value="25639" />
+    <val type="dict" id="40468336" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40529360" >
-          <item type="dict" id="41102512" >
+        <val type="list" id="38395632" >
+          <item type="dict" id="40468624" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Input 32 bit" />
+              <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41102848" >
+          <item type="dict" id="40468960" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Interrupt Low to High Input  0x%X to 0x%X[(sub*32-31,sub*32)]" />
+              <val type="string" value="Analogue Input %d[(sub)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Interrupt Mask Input Low to High 32 Bit" />
+        <val type="string" value="Analogue Input Interrupt Negative Delta Unsigned" />
       </entry>
       <entry>
         <key type="string" value="struct" />
   </entry>
   <entry>
     <key type="numeric" value="25601" />
-    <val type="dict" id="41077088" >
+    <val type="dict" id="40536944" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40540280" >
-          <item type="dict" id="41077376" >
+        <val type="list" id="38416536" >
+          <item type="dict" id="40537232" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Input 16 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41077712" >
+          <item type="dict" id="40537568" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25351" />
-    <val type="dict" id="41103136" >
+    <key type="numeric" value="25200" />
+    <val type="dict" id="40464080" >
       <entry>
-        <key type="string" value="need" />
-        <val type="False" value="" />
+        <key type="string" value="incr" />
+        <val type="numeric" value="1" />
+      </entry>
+      <entry>
+        <key type="string" value="struct" />
+        <val type="numeric" value="15" />
+      </entry>
+      <entry>
+        <key type="string" value="nbmax" />
+        <val type="numeric" value="8" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40529432" >
-          <item type="dict" id="41103424" >
+        <val type="list" id="38395272" >
+          <item type="dict" id="40464368" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Output 16 Bit" />
+              <val type="string" value="Number of Output 1 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41103760" >
+          <item type="dict" id="40464656" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="type" />
-              <val type="numeric" value="6" />
+              <val type="numeric" value="1" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Error Value Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]" />
+              <val type="string" value="Filter Constant Outputs 0x%X[((idx-1)*128+sub)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
-              <val type="numeric" value="254" />
+              <val type="numeric" value="128" />
             </entry>
           </item>
         </val>
       </entry>
       <entry>
-        <key type="string" value="name" />
-        <val type="string" value="Error Value Outputs 16 Bit" />
+        <key type="string" value="need" />
+        <val type="False" value="" />
       </entry>
       <entry>
-        <key type="string" value="struct" />
-        <val type="numeric" value="7" />
+        <key type="string" value="name" />
+        <val type="string" value="Filter Constant Outputs Lines %d to %d[(idx*128-127,idx*128)]" />
       </entry>
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25384" />
-    <val type="dict" id="41073776" >
+    <key type="numeric" value="24872" />
+    <val type="dict" id="40435616" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40539632" >
-          <item type="dict" id="41074064" >
+        <val type="list" id="38406408" >
+          <item type="dict" id="40435904" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Output 32 Bit" />
+              <val type="string" value="Number of Input 32 bit" />
             </entry>
           </item>
-          <item type="dict" id="41074352" >
+          <item type="dict" id="40436240" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Filter Mask Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]" />
+              <val type="string" value="Interrupt High to Low Input 0x%X to 0x%X[(sub*32-31,sub*32)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
       </entry>
       <entry>
         <key type="string" value="name" />
-        <val type="string" value="Filter Mask Outputs 32 Bit" />
+        <val type="string" value="Interrupt Mask Input High to Low 32 Bit" />
       </entry>
       <entry>
         <key type="string" value="struct" />
   </entry>
   <entry>
     <key type="numeric" value="25619" />
-    <val type="dict" id="41240336" >
+    <val type="dict" id="40539728" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40542576" >
-          <item type="dict" id="41240624" >
+        <val type="list" id="38416968" >
+          <item type="dict" id="40540016" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs Float" />
             </entry>
           </item>
-          <item type="dict" id="41240912" >
+          <item type="dict" id="40540304" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
   <entry>
-    <key type="numeric" value="25168" />
-    <val type="dict" id="41241200" >
-      <entry>
-        <key type="string" value="incr" />
-        <val type="numeric" value="1" />
-      </entry>
-      <entry>
-        <key type="string" value="struct" />
-        <val type="numeric" value="15" />
-      </entry>
+    <key type="numeric" value="25382" />
+    <val type="dict" id="40540640" >
       <entry>
-        <key type="string" value="nbmax" />
-        <val type="numeric" value="8" />
+        <key type="string" value="need" />
+        <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40542720" >
-          <item type="dict" id="41241488" >
+        <val type="list" id="38417184" >
+          <item type="dict" id="40540928" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Number of Output 1 Bit" />
+              <val type="string" value="Number of Output 32 Bit" />
             </entry>
           </item>
-          <item type="dict" id="41241776" >
+          <item type="dict" id="40541216" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
             </entry>
             <entry>
               <key type="string" value="type" />
-              <val type="numeric" value="1" />
+              <val type="numeric" value="7" />
             </entry>
             <entry>
               <key type="string" value="name" />
-              <val type="string" value="Error Mode Outputs 0x%X[((idx-1)*128+sub)]" />
+              <val type="string" value="Error Mode Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]" />
             </entry>
             <entry>
               <key type="string" value="nbmax" />
-              <val type="numeric" value="128" />
+              <val type="numeric" value="254" />
             </entry>
           </item>
         </val>
       </entry>
       <entry>
-        <key type="string" value="need" />
-        <val type="False" value="" />
+        <key type="string" value="name" />
+        <val type="string" value="Error Mode Outputs 32 Bit" />
       </entry>
       <entry>
-        <key type="string" value="name" />
-        <val type="string" value="Error Mode Outputs Lines %d to %d[(idx*128-127,idx*128)]" />
+        <key type="string" value="struct" />
+        <val type="numeric" value="7" />
       </entry>
     </val>
   </entry>
   <entry>
     <key type="numeric" value="24839" />
-    <val type="dict" id="41242848" >
+    <val type="dict" id="40541552" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40542936" >
-          <item type="dict" id="41243136" >
+        <val type="list" id="38417400" >
+          <item type="dict" id="40541840" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 16 bit" />
             </entry>
           </item>
-          <item type="dict" id="41243424" >
+          <item type="dict" id="40542128" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25671" />
-    <val type="dict" id="41243712" >
+    <val type="dict" id="40542464" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40543008" >
-          <item type="dict" id="41244000" >
+        <val type="list" id="38417544" >
+          <item type="dict" id="40542752" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Outputs" />
             </entry>
           </item>
-          <item type="dict" id="41244288" >
+          <item type="dict" id="40543040" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="25637" />
-    <val type="dict" id="41244576" >
+    <val type="dict" id="40543376" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40543152" >
-          <item type="dict" id="41244864" >
+        <val type="list" id="38417688" >
+          <item type="dict" id="40543664" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Analogue Inputs" />
             </entry>
           </item>
-          <item type="dict" id="41245152" >
+          <item type="dict" id="40543952" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="24688" />
-    <val type="dict" id="41245440" >
+    <val type="dict" id="40544288" >
       <entry>
         <key type="string" value="incr" />
         <val type="numeric" value="1" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40543440" >
-          <item type="dict" id="41245728" >
+        <val type="list" id="38417976" >
+          <item type="dict" id="40544576" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Input 1 bit" />
             </entry>
           </item>
-          <item type="dict" id="41246016" >
+          <item type="dict" id="40544864" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
 </attr>
 <attr name="Description" type="string" value="" />
-<attr name="Dictionary" type="dict" id="41247088" >
+<attr name="Dictionary" type="dict" id="40545936" >
   <entry>
     <key type="numeric" value="4096" />
     <val type="numeric" value="301" />
   </entry>
   <entry>
     <key type="numeric" value="5122" />
-    <val type="list" id="40543512" >
+    <val type="list" id="38418048" >
       <item type="numeric" value="1025" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="4112" />
-    <val type="list" id="40543584" >
+    <val type="list" id="38418120" >
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="4113" />
-    <val type="list" id="40543656" >
+    <val type="list" id="38418192" >
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="5123" />
-    <val type="list" id="40543728" >
+    <val type="list" id="38418264" >
       <item type="numeric" value="1154" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
     </val>
   </entry>
+  <entry>
+    <key type="numeric" value="4116" />
+    <val type="string" value="&quot;$NODEID+0x80&quot;" />
+  </entry>
   <entry>
     <key type="numeric" value="4118" />
-    <val type="list" id="40543800" >
+    <val type="list" id="38418336" >
       <item type="numeric" value="132572" />
     </val>
   </entry>
   <entry>
     <key type="numeric" value="4120" />
-    <val type="list" id="40543872" >
+    <val type="list" id="38418408" >
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="4736" />
-    <val type="list" id="40543944" >
+    <val type="list" id="38418480" >
       <item type="numeric" value="1538" />
       <item type="numeric" value="1410" />
       <item type="numeric" value="2" />
   </entry>
   <entry>
     <key type="numeric" value="7970" />
-    <val type="list" id="40544016" >
+    <val type="list" id="38418552" >
       <item type="string" value="" />
       <item type="string" value="\x01\x00\x00\x00\x17\x10\x00\x02\x00\x00\x00\xe8\x03" />
     </val>
   </entry>
   <entry>
     <key type="numeric" value="5120" />
-    <val type="list" id="40544088" >
+    <val type="list" id="38418624" >
       <item type="string" value="{True:&quot;$NODEID+0x%X00&quot;%(base+2),False:0}[base&lt;4]" />
       <item type="numeric" value="1" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="5632" />
-    <val type="list" id="40544160" >
+    <val type="list" id="38418696" >
       <item type="numeric" value="536870913" />
       <item type="numeric" value="536936449" />
       <item type="numeric" value="537001985" />
   </entry>
   <entry>
     <key type="numeric" value="5121" />
-    <val type="list" id="40544232" >
+    <val type="list" id="38418768" >
       <item type="string" value="{True:&quot;$NODEID+0x%X00&quot;%(base+2),False:0}[base&lt;4]" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="5633" />
-    <val type="list" id="40544304" >
+    <val type="list" id="38418840" >
       <item type="numeric" value="537526288" />
     </val>
   </entry>
   <entry>
     <key type="numeric" value="5635" />
-    <val type="list" id="40544376" >
+    <val type="list" id="38418912" >
       <item type="numeric" value="537657360" />
     </val>
   </entry>
   <entry>
     <key type="numeric" value="5634" />
-    <val type="list" id="40544448" >
+    <val type="list" id="38418984" >
       <item type="numeric" value="537591824" />
     </val>
   </entry>
 </attr>
-<attr name="SpecificMenu" type="list" id="40544520" >
-  <item type="tuple" id="37857832" >
+<attr name="SpecificMenu" type="list" id="38419056" >
+  <item type="tuple" id="38347552" >
     <item type="string" value="Read Input Bit" />
-    <item type="list" id="40544592" >
+    <item type="list" id="38419128" >
       <item type="numeric" value="24608" />
       <item type="numeric" value="24624" />
       <item type="numeric" value="24632" />
       <item type="numeric" value="24688" />
     </item>
   </item>
-  <item type="tuple" id="37825136" >
+  <item type="tuple" id="38305448" >
     <item type="string" value="Write Output Bit" />
-    <item type="list" id="40544664" >
+    <item type="list" id="38419200" >
       <item type="numeric" value="25120" />
       <item type="numeric" value="25152" />
       <item type="numeric" value="25168" />
     </item>
   </item>
 </attr>
-<attr name="ParamsDictionary" type="dict" id="41247376" >
+<attr name="ParamsDictionary" type="dict" id="40550544" >
 </attr>
-<attr name="UserMapping" type="dict" id="41247664" >
+<attr name="UserMapping" type="dict" id="40550832" >
   <entry>
     <key type="numeric" value="8192" />
-    <val type="dict" id="41251248" >
+    <val type="dict" id="40551120" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40544736" >
-          <item type="dict" id="41251536" >
+        <val type="list" id="38419272" >
+          <item type="dict" id="40551408" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8193" />
-    <val type="dict" id="41251824" >
+    <val type="dict" id="40551696" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40544808" >
-          <item type="dict" id="41252112" >
+        <val type="list" id="38419344" >
+          <item type="dict" id="40551984" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8194" />
-    <val type="dict" id="41252400" >
+    <val type="dict" id="40552336" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40544880" >
-          <item type="dict" id="41252688" >
+        <val type="list" id="38419416" >
+          <item type="dict" id="40552624" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8195" />
-    <val type="dict" id="41252976" >
+    <val type="dict" id="40553088" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40544952" >
-          <item type="dict" id="41253264" >
+        <val type="list" id="38419488" >
+          <item type="dict" id="40553376" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8196" />
-    <val type="dict" id="41253552" >
+    <val type="dict" id="40553840" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545024" >
-          <item type="dict" id="41253840" >
+        <val type="list" id="38419560" >
+          <item type="dict" id="40554128" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8197" />
-    <val type="dict" id="41254128" >
+    <val type="dict" id="40554592" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545096" >
-          <item type="dict" id="41254416" >
+        <val type="list" id="38419632" >
+          <item type="dict" id="40554880" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8198" />
-    <val type="dict" id="41255488" >
+    <val type="dict" id="40556128" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545168" >
-          <item type="dict" id="41255776" >
+        <val type="list" id="38419704" >
+          <item type="dict" id="40556416" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8199" />
-    <val type="dict" id="41256064" >
+    <val type="dict" id="40556880" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545240" >
-          <item type="dict" id="41256352" >
+        <val type="list" id="38419776" >
+          <item type="dict" id="40557168" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8200" />
-    <val type="dict" id="41256640" >
+    <val type="dict" id="40557632" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545312" >
-          <item type="dict" id="41256928" >
+        <val type="list" id="38419848" >
+          <item type="dict" id="40557920" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8201" />
-    <val type="dict" id="41257216" >
+    <val type="dict" id="40558384" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545384" >
-          <item type="dict" id="41257504" >
+        <val type="list" id="38419920" >
+          <item type="dict" id="40558672" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8202" />
-    <val type="dict" id="41257792" >
+    <val type="dict" id="40559136" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545456" >
-          <item type="dict" id="41258080" >
+        <val type="list" id="38419992" >
+          <item type="dict" id="40559424" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8203" />
-    <val type="dict" id="41258368" >
+    <val type="dict" id="40559888" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545528" >
-          <item type="dict" id="41258656" >
+        <val type="list" id="38420064" >
+          <item type="dict" id="40560176" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8204" />
-    <val type="dict" id="41258944" >
+    <val type="dict" id="40560640" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545600" >
-          <item type="dict" id="41259232" >
+        <val type="list" id="38420136" >
+          <item type="dict" id="40560928" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
 </attr>
-<attr name="DS302" type="dict" id="41260304" >
+<attr name="DS302" type="dict" id="40562176" >
   <entry>
     <key type="numeric" value="7968" />
-    <val type="dict" id="41260592" >
+    <val type="dict" id="40562464" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545672" >
-          <item type="dict" id="41260880" >
+        <val type="list" id="38420208" >
+          <item type="dict" id="40562752" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Entries" />
             </entry>
           </item>
-          <item type="dict" id="41261168" >
+          <item type="dict" id="40563088" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="7969" />
-    <val type="dict" id="41261456" >
+    <val type="dict" id="40563424" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545744" >
-          <item type="dict" id="41261744" >
+        <val type="list" id="38420280" >
+          <item type="dict" id="40563712" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Entries" />
             </entry>
           </item>
-          <item type="dict" id="41262032" >
+          <item type="dict" id="40564000" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="7970" />
-    <val type="dict" id="41262320" >
+    <val type="dict" id="40564336" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="40545888" >
-          <item type="dict" id="41262608" >
+        <val type="list" id="38420424" >
+          <item type="dict" id="40564624" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="ro" />
               <val type="string" value="Number of Entries" />
             </entry>
           </item>
-          <item type="dict" id="41262896" >
+          <item type="dict" id="40564912" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
index aeb81ee45be47274eae3eedd18dbf477d33fff39..5d720c8bfe80952a17683085588c1477313c2e87 100644 (file)
@@ -176,6 +176,13 @@ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1011_Restore_Manufacturer_Default_Parameters }
                      };
 
+/* index 0x1014 :   Emergency COB ID. */
+                    UNS32 TestSlave_obj1014 = 0x80;    /* 128 */
+                    subindex TestSlave_Index1014[] = 
+                     {
+                       { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1014 }
+                     };
+
 /* index 0x1016 :   Consumer Heartbeat Time */
                     UNS8 TestSlave_highestSubIndex_obj1016 = 0;
                     UNS32 TestSlave_obj1016[]={0};
@@ -512,6 +519,7 @@ const indextable TestSlave_objdict[] =
   { (subindex*)TestSlave_Index1006,sizeof(TestSlave_Index1006)/sizeof(TestSlave_Index1006[0]), 0x1006},
   { (subindex*)TestSlave_Index1010,sizeof(TestSlave_Index1010)/sizeof(TestSlave_Index1010[0]), 0x1010},
   { (subindex*)TestSlave_Index1011,sizeof(TestSlave_Index1011)/sizeof(TestSlave_Index1011[0]), 0x1011},
+  { (subindex*)TestSlave_Index1014,sizeof(TestSlave_Index1014)/sizeof(TestSlave_Index1014[0]), 0x1014},
   { (subindex*)TestSlave_Index1017,sizeof(TestSlave_Index1017)/sizeof(TestSlave_Index1017[0]), 0x1017},
   { (subindex*)TestSlave_Index1018,sizeof(TestSlave_Index1018)/sizeof(TestSlave_Index1018[0]), 0x1018},
   { (subindex*)TestSlave_Index1200,sizeof(TestSlave_Index1200)/sizeof(TestSlave_Index1200[0]), 0x1200},
@@ -552,32 +560,33 @@ const indextable * TestSlave_scanIndexOD (UNS16 wIndex, UNS32 * errorCode, ODCal
                case 0x1006: i = 4;*callbacks = TestSlave_Index1006_callbacks; break;
                case 0x1010: i = 5;*callbacks = TestSlave_Index1010_callbacks; break;
                case 0x1011: i = 6;*callbacks = TestSlave_Index1011_callbacks; break;
-               case 0x1017: i = 7;*callbacks = TestSlave_Index1017_callbacks; break;
-               case 0x1018: i = 8;break;
-               case 0x1200: i = 9;break;
-               case 0x1800: i = 10;*callbacks = TestSlave_Index1800_callbacks; break;
-               case 0x1801: i = 11;*callbacks = TestSlave_Index1801_callbacks; break;
-               case 0x1802: i = 12;*callbacks = TestSlave_Index1802_callbacks; break;
-               case 0x1803: i = 13;*callbacks = TestSlave_Index1803_callbacks; break;
-               case 0x1804: i = 14;*callbacks = TestSlave_Index1804_callbacks; break;
-               case 0x1A00: i = 15;break;
-               case 0x1A01: i = 16;break;
-               case 0x1A02: i = 17;break;
-               case 0x1A03: i = 18;break;
-               case 0x1A04: i = 19;break;
-               case 0x2000: i = 20;break;
-               case 0x2001: i = 21;break;
-               case 0x2002: i = 22;break;
-               case 0x2003: i = 23;break;
-               case 0x2004: i = 24;break;
-               case 0x2005: i = 25;break;
-               case 0x2006: i = 26;break;
-               case 0x2007: i = 27;break;
-               case 0x2008: i = 28;break;
-               case 0x2009: i = 29;break;
-               case 0x200A: i = 30;break;
-               case 0x200B: i = 31;break;
-               case 0x200C: i = 32;break;
+               case 0x1014: i = 7;break;
+               case 0x1017: i = 8;*callbacks = TestSlave_Index1017_callbacks; break;
+               case 0x1018: i = 9;break;
+               case 0x1200: i = 10;break;
+               case 0x1800: i = 11;*callbacks = TestSlave_Index1800_callbacks; break;
+               case 0x1801: i = 12;*callbacks = TestSlave_Index1801_callbacks; break;
+               case 0x1802: i = 13;*callbacks = TestSlave_Index1802_callbacks; break;
+               case 0x1803: i = 14;*callbacks = TestSlave_Index1803_callbacks; break;
+               case 0x1804: i = 15;*callbacks = TestSlave_Index1804_callbacks; break;
+               case 0x1A00: i = 16;break;
+               case 0x1A01: i = 17;break;
+               case 0x1A02: i = 18;break;
+               case 0x1A03: i = 19;break;
+               case 0x1A04: i = 20;break;
+               case 0x2000: i = 21;break;
+               case 0x2001: i = 22;break;
+               case 0x2002: i = 23;break;
+               case 0x2003: i = 24;break;
+               case 0x2004: i = 25;break;
+               case 0x2005: i = 26;break;
+               case 0x2006: i = 27;break;
+               case 0x2007: i = 28;break;
+               case 0x2008: i = 29;break;
+               case 0x2009: i = 30;break;
+               case 0x200A: i = 31;break;
+               case 0x200B: i = 32;break;
+               case 0x200C: i = 33;break;
                default:
                        *errorCode = OD_NO_SUCH_OBJECT;
                        return NULL;
@@ -594,21 +603,21 @@ const indextable * TestSlave_scanIndexOD (UNS16 wIndex, UNS32 * errorCode, ODCal
 s_PDO_status TestSlave_PDO_status[5] = {s_PDO_staus_Initializer,s_PDO_staus_Initializer,s_PDO_staus_Initializer,s_PDO_staus_Initializer,s_PDO_staus_Initializer};
 
 quick_index TestSlave_firstIndex = {
-  9, /* SDO_SVR */
+  10, /* SDO_SVR */
   0, /* SDO_CLT */
   0, /* PDO_RCV */
   0, /* PDO_RCV_MAP */
-  10, /* PDO_TRS */
-  15 /* PDO_TRS_MAP */
+  11, /* PDO_TRS */
+  16 /* PDO_TRS_MAP */
 };
 
 quick_index TestSlave_lastIndex = {
-  9, /* SDO_SVR */
+  10, /* SDO_SVR */
   0, /* SDO_CLT */
   0, /* PDO_RCV */
   0, /* PDO_RCV_MAP */
-  14, /* PDO_TRS */
-  19 /* PDO_TRS_MAP */
+  15, /* PDO_TRS */
+  20 /* PDO_TRS_MAP */
 };
 
 UNS16 TestSlave_ObjdictSize = sizeof(TestSlave_objdict)/sizeof(TestSlave_objdict[0]); 
index 980b27fbb52958e2c8f8fdc875cd6c629d211981..88fbbdbfc188e97a8ad13c6d7062c72461ead554 100644 (file)
@@ -1,10 +1,10 @@
 <?xml version="1.0"?>
 <!DOCTYPE PyObject SYSTEM "PyObjects.dtd">
-<PyObject module="node" class="Node" id="14595640">
-<attr name="Profile" type="dict" id="19726160" >
+<PyObject module="node" class="Node" id="11102832">
+<attr name="Profile" type="dict" id="18192832" >
 </attr>
 <attr name="Name" type="string">TestSlave</attr>
-<attr name="Dictionary" type="dict" id="19830656" >
+<attr name="Dictionary" type="dict" id="16242864" >
   <entry>
     <key type="numeric" value="4096" />
     <val type="numeric" value="301" />
@@ -59,7 +59,7 @@
   </entry>
   <entry>
     <key type="numeric" value="6146" />
-    <val type="list" id="15236200" >
+    <val type="list" id="11102184" >
       <item type="string" value="{True:&quot;$NODEID+0x%X80&quot;%(base+1),False:0}[base&lt;4]" />
       <item type="numeric" value="255" />
       <item type="numeric" value="5000" />
@@ -69,7 +69,7 @@
   </entry>
   <entry>
     <key type="numeric" value="4112" />
-    <val type="list" id="14584720" >
+    <val type="list" id="11101896" >
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
@@ -78,7 +78,7 @@
   </entry>
   <entry>
     <key type="numeric" value="4113" />
-    <val type="list" id="14595352" >
+    <val type="list" id="11102544" >
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="6658" />
-    <val type="list" id="14595280" >
+    <val type="list" id="11102760" >
       <item type="numeric" value="537591824" />
     </val>
   </entry>
   <entry>
     <key type="numeric" value="6147" />
-    <val type="list" id="14595424" >
+    <val type="list" id="11102040" >
       <item type="string" value="{True:&quot;$NODEID+0x%X80&quot;%(base+1),False:0}[base&lt;4]" />
       <item type="numeric" value="252" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
     </val>
   </entry>
+  <entry>
+    <key type="numeric" value="4116" />
+    <val type="string" value="&quot;$NODEID+0x80&quot;" />
+  </entry>
   <entry>
     <key type="numeric" value="4608" />
-    <val type="list" id="14595496" >
+    <val type="list" id="11102688" >
       <item type="string" value="&quot;$NODEID+0x600&quot;" />
       <item type="string" value="&quot;$NODEID+0x580&quot;" />
     </val>
   </entry>
   <entry>
     <key type="numeric" value="4120" />
-    <val type="list" id="14595568" >
+    <val type="list" id="11110808" >
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="6148" />
-    <val type="list" id="14595712" >
+    <val type="list" id="11103192" >
       <item type="numeric" value="1025" />
       <item type="numeric" value="253" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="6659" />
-    <val type="list" id="14595784" >
+    <val type="list" id="11103264" >
       <item type="numeric" value="537657360" />
     </val>
   </entry>
   </entry>
   <entry>
     <key type="numeric" value="6144" />
-    <val type="list" id="14595856" >
+    <val type="list" id="11103408" >
       <item type="string" value="{True:&quot;$NODEID+0x%X80&quot;%(base+1),False:0}[base&lt;4]" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="6660" />
-    <val type="list" id="14595928" >
+    <val type="list" id="11111240" >
       <item type="numeric" value="537657360" />
     </val>
   </entry>
   <entry>
     <key type="numeric" value="6656" />
-    <val type="list" id="14596000" >
+    <val type="list" id="11102112" >
       <item type="numeric" value="536870913" />
       <item type="numeric" value="536936449" />
       <item type="numeric" value="537001985" />
   </entry>
   <entry>
     <key type="numeric" value="4099" />
-    <val type="list" id="14596072" >
+    <val type="list" id="11110520" >
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="6145" />
-    <val type="list" id="14596144" >
+    <val type="list" id="11111168" >
       <item type="string" value="{True:&quot;$NODEID+0x%X80&quot;%(base+1),False:0}[base&lt;4]" />
       <item type="numeric" value="0" />
       <item type="numeric" value="0" />
   </entry>
   <entry>
     <key type="numeric" value="6657" />
-    <val type="list" id="14596216" >
+    <val type="list" id="12077032" >
       <item type="numeric" value="537526288" />
     </val>
   </entry>
 </attr>
-<attr name="SpecificMenu" type="list" id="14596288" >
+<attr name="SpecificMenu" type="list" id="11101464" >
 </attr>
-<attr name="ParamsDictionary" type="dict" id="19829232" >
+<attr name="ParamsDictionary" type="dict" id="16301408" >
   <entry>
     <key type="numeric" value="8192" />
-    <val type="dict" id="19789856" >
+    <val type="dict" id="15731648" >
       <entry>
         <key type="string" value="callback" />
         <val type="False" value="" />
   </entry>
   <entry>
     <key type="numeric" value="6144" />
-    <val type="dict" id="19831952" >
+    <val type="dict" id="9567888" >
       <entry>
         <key type="numeric" value="2" />
-        <val type="dict" id="19726736" >
+        <val type="dict" id="16301984" >
           <entry>
             <key type="string" value="save" />
             <val type="True" value="" />
       </entry>
       <entry>
         <key type="numeric" value="3" />
-        <val type="dict" id="19787440" >
+        <val type="dict" id="19216992" >
           <entry>
             <key type="string" value="save" />
             <val type="True" value="" />
   </entry>
   <entry>
     <key type="numeric" value="6146" />
-    <val type="dict" id="19788880" >
+    <val type="dict" id="16269424" >
       <entry>
         <key type="numeric" value="2" />
-        <val type="dict" id="19682352" >
+        <val type="dict" id="19215136" >
           <entry>
             <key type="string" value="comment" />
             <val type="string">EVENT</val>
       </entry>
       <entry>
         <key type="numeric" value="3" />
-        <val type="dict" id="11679552" >
+        <val type="dict" id="19215424" >
           <entry>
             <key type="string" value="comment" />
             <val type="string">5000*100 ÂµC = 500 ms</val>
       </entry>
       <entry>
         <key type="numeric" value="4" />
-        <val type="dict" id="12353264" >
+        <val type="dict" id="16249568" >
           <entry>
             <key type="string" value="comment" />
             <val type="string" value="" />
       </entry>
       <entry>
         <key type="numeric" value="5" />
-        <val type="dict" id="19812192" >
+        <val type="dict" id="9568176" >
           <entry>
             <key type="string" value="comment" />
             <val type="string">1000 ms</val>
   </entry>
   <entry>
     <key type="numeric" value="6147" />
-    <val type="dict" id="19775520" >
+    <val type="dict" id="16302272" >
       <entry>
         <key type="numeric" value="2" />
-        <val type="dict" id="19788512" >
+        <val type="dict" id="19261968" >
           <entry>
             <key type="string" value="comment" />
             <val type="string">RTR_SYNC</val>
   </entry>
   <entry>
     <key type="numeric" value="6148" />
-    <val type="dict" id="19832608" >
+    <val type="dict" id="19263360" >
       <entry>
         <key type="numeric" value="2" />
-        <val type="dict" id="19816608" >
+        <val type="dict" id="19260976" >
           <entry>
             <key type="string" value="comment" />
             <val type="string">RTR</val>
   </entry>
   <entry>
     <key type="numeric" value="4112" />
-    <val type="dict" id="19699184" >
+    <val type="dict" id="19261552" >
       <entry>
         <key type="string" value="callback" />
         <val type="True" value="" />
   </entry>
   <entry>
     <key type="numeric" value="4113" />
-    <val type="dict" id="19800640" >
+    <val type="dict" id="16301120" >
       <entry>
         <key type="string" value="callback" />
         <val type="True" value="" />
   </entry>
   <entry>
     <key type="numeric" value="4099" />
-    <val type="dict" id="19792416" >
+    <val type="dict" id="16249856" >
       <entry>
         <key type="string" value="callback" />
         <val type="True" value="" />
   </entry>
   <entry>
     <key type="numeric" value="4119" />
-    <val type="dict" id="19813056" >
+    <val type="dict" id="19263648" >
       <entry>
         <key type="string" value="callback" />
         <val type="True" value="" />
     </val>
   </entry>
 </attr>
-<attr name="UserMapping" type="dict" id="19799568" >
+<attr name="UserMapping" type="dict" id="16251168" >
   <entry>
     <key type="numeric" value="8192" />
-    <val type="dict" id="19833760" >
+    <val type="dict" id="19263936" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596360" >
-          <item type="dict" id="19828608" >
+        <val type="list" id="12076672" >
+          <item type="dict" id="19257456" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8193" />
-    <val type="dict" id="19828944" >
+    <val type="dict" id="19264864" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596432" >
-          <item type="dict" id="19824608" >
+        <val type="list" id="11111096" >
+          <item type="dict" id="19390480" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8194" />
-    <val type="dict" id="19820608" >
+    <val type="dict" id="19264576" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596504" >
-          <item type="dict" id="19820896" >
+        <val type="list" id="12077896" >
+          <item type="dict" id="19215712" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8195" />
-    <val type="dict" id="19842240" >
+    <val type="dict" id="19261264" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596576" >
-          <item type="dict" id="19842528" >
+        <val type="list" id="12077680" >
+          <item type="dict" id="19265152" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8196" />
-    <val type="dict" id="19667488" >
+    <val type="dict" id="19391360" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596648" >
-          <item type="dict" id="19667776" >
+        <val type="list" id="11110952" >
+          <item type="dict" id="19391072" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8197" />
-    <val type="dict" id="19805728" >
+    <val type="dict" id="19388320" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596720" >
-          <item type="dict" id="19806016" >
+        <val type="list" id="12078256" >
+          <item type="dict" id="19391840" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8198" />
-    <val type="dict" id="19790144" >
+    <val type="dict" id="19389952" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596792" >
-          <item type="dict" id="19790432" >
+        <val type="list" id="12077608" >
+          <item type="dict" id="19389664" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8199" />
-    <val type="dict" id="19790864" >
+    <val type="dict" id="19394080" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596864" >
-          <item type="dict" id="19806992" >
+        <val type="list" id="12078400" >
+          <item type="dict" id="19392368" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8200" />
-    <val type="dict" id="19807424" >
+    <val type="dict" id="19394848" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14596936" >
-          <item type="dict" id="19807712" >
+        <val type="list" id="12078184" >
+          <item type="dict" id="19394560" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8201" />
-    <val type="dict" id="19808144" >
+    <val type="dict" id="19395424" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14597008" >
-          <item type="dict" id="19727248" >
+        <val type="list" id="12077968" >
+          <item type="dict" id="19396432" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8202" />
-    <val type="dict" id="19727648" >
+    <val type="dict" id="19396000" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14597080" >
-          <item type="dict" id="19727936" >
+        <val type="list" id="12077752" >
+          <item type="dict" id="19395712" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8203" />
-    <val type="dict" id="19728400" >
+    <val type="dict" id="19398736" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14597152" >
-          <item type="dict" id="19728688" >
+        <val type="list" id="12078472" >
+          <item type="dict" id="19397024" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
   </entry>
   <entry>
     <key type="numeric" value="8204" />
-    <val type="dict" id="19781664" >
+    <val type="dict" id="19399504" >
       <entry>
         <key type="string" value="need" />
         <val type="False" value="" />
       </entry>
       <entry>
         <key type="string" value="values" />
-        <val type="list" id="14597224" >
-          <item type="dict" id="19781952" >
+        <val type="list" id="12078544" >
+          <item type="dict" id="19399216" >
             <entry>
               <key type="string" value="access" />
               <val type="string" value="rw" />
     </val>
   </entry>
 </attr>
-<attr name="DS302" type="dict" id="19783136" >
+<attr name="DS302" type="dict" id="19400080" >
 </attr>
 <attr name="ProfileName" type="string" value="DS-301" />
 <attr name="Type" type="string">slave</attr>
index aebc3dbd1c52a9c23618de873b9de8c72def73c5..030f1844edd15db9f604ec60034595c120eec0c1 100644 (file)
@@ -61,7 +61,12 @@ static inline void print_message(Message *m)
     UNS8 fc = m->cob_id.w >> 7;
     switch(fc)
     {
-        _P(SYNC)
+        case SYNC: 
+            if(m->cob_id.w == 0x080)
+                printf("SYNC ");
+            else
+                printf("EMCY ");
+        break;
         _P(TIME_STAMP)
         _P(PDO1tx)
         _P(PDO1rx)
index 0cdd19db1a91bc45338854180bc49d6bcec44500..7ed2d9ae4237a5b2e1ce8148386219b43015b8f5 100644 (file)
@@ -102,6 +102,7 @@ struct struct_CO_Data {
        UNS8* error_number;
        UNS32* error_first_element;
        UNS8* error_register;
+    UNS32* error_cobid;
        s_errors error_data[EMCY_MAX_ERRORS];
        post_emcy_t post_emcy;
        
@@ -199,6 +200,7 @@ struct struct_CO_Data {
        & NODE_PREFIX ## _highestSubIndex_obj1003,    /* error_number */\
        & NODE_PREFIX ## _obj1003[0],    /* error_first_element */\
        & NODE_PREFIX ## _obj1001,       /* error_register */\
+    & NODE_PREFIX ## _obj1014,       /* error_cobid */\
        /* error_data: structure s_errors */\
        {\
        REPEAT_EMCY_MAX_ERRORS_TIMES(ERROR_DATA_INITIALIZER)\
index 9c54284a65ef7788a9c943f0edf93a209ade0d96..6c30891df9cecbd297de9037b3d787828b83c7e1 100644 (file)
@@ -953,7 +953,6 @@ class CreateNodeDialog(wx.Dialog):
               label='Emergency support', name='Emergency',
               parent=self, pos=wx.Point(0, 0), size=wx.Size(0, 24), style=0)
         self.Emergency.SetValue(False)
-        self.Emergency.Enable(False)
 
         self.SaveConfig = wx.CheckBox(id=ID_CREATENODEDIALOGSAVECONFIG,
               label='Save Configuration', name='SaveConfig', parent=self, 
index 75efa634c02d3f977f1907fd3bc33bfda7360e28..611dfb5fff6afb216b955e5aef2c9a9a364ac040 100644 (file)
@@ -363,6 +363,13 @@ def GenerateFileContent(Node, headerfilepath):
                     UNS32 %(NodeName)s_obj1006 = 0x0;   /* 0 */
 """%texts
 
+    if 0x1014 not in communicationlist:
+        entry_infos = Node.GetEntryInfos(0x1014)
+        texts["EntryName"] = entry_infos["name"]
+        indexContents[0x1014] = """\n/* index 0x1014 :   %(EntryName)s */
+                    UNS32 %(NodeName)s_obj1014 = 0x0;   /* 0 */
+"""%texts
+
     if 0x1016 in communicationlist:
         texts["nombre"] = Node.GetEntry(0x1016, 0)
     else:
index 369f91d1448a2c9796483cc829c938d5bfa07b63..dd71da6ac40d5f10afc8273a41d0e6187607a65f 100644 (file)
@@ -39,7 +39,7 @@
 
 
 UNS32 OnNumberOfErrorsUpdate(CO_Data* d, const indextable * unsused_indextable, UNS8 unsused_bSubindex);
-UNS8 sendEMCY(CO_Data* d, UNS32 cob_id, UNS16 errCode, UNS8 errRegister);
+UNS8 sendEMCY(CO_Data* d, UNS16 errCode, UNS8 errRegister);
 
 
 /*! This is called when Index 0x1003 is updated.
@@ -94,13 +94,13 @@ void emergencyStop(CO_Data* d)
  **                                                                                                 
  ** @return                                                                                         
  **/  
-UNS8 sendEMCY(CO_Data* d, UNS32 cob_id, UNS16 errCode, UNS8 errRegister)
+UNS8 sendEMCY(CO_Data* d, UNS16 errCode, UNS8 errRegister)
 {
        Message m;
   
        MSG_WAR(0x3051, "sendEMCY", 0);
   
-       m.cob_id.w = cob_id ;
+       m.cob_id.w = *d->error_cobid;
        m.rtr = NOT_A_REQUEST;
        m.len = 8;
        m.data[0] = errCode & 0xFF;        /* LSB */
@@ -170,7 +170,7 @@ UNS8 EMCY_setError(CO_Data* d, UNS16 errCode, UNS8 errRegMask, UNS16 addInfo)
        
        /* send EMCY message */
        if (d->CurrentCommunicationState.csEmergency)
-               return sendEMCY(d, *d->bDeviceNodeId + 0x080, errCode, *d->error_register);
+               return sendEMCY(d, errCode, *d->error_register);
        else return 1;
 }
 
@@ -208,7 +208,7 @@ void EMCY_errorRecovered(CO_Data* d, UNS16 errCode)
                        d->error_state = Error_free;
                        /* send a EMCY message with code "Error Reset or No Error" */
                        if (d->CurrentCommunicationState.csEmergency)
-                               sendEMCY(d, *d->bDeviceNodeId + 0x080, 0x0000, 0x00);
+                               sendEMCY(d, 0x0000, 0x00);
                }
                *d->error_register = errRegister_tmp;
        }
index 536c5f70304da5c3f421f484f05182042847fe1c..b3b0f537dbb8c1c779f345d9403943e9b4cd2c29 100644 (file)
@@ -288,6 +288,11 @@ void setNodeId(CO_Data* d, UNS8 nodeId)
       offset ++;
     }
   }
+
+  /* Update EMCY COB-ID if already set to default*/
+  if(*d->error_cobid == *d->bDeviceNodeId + 0x80)
+    *d->error_cobid = nodeId + 0x80;
+
   /* bDeviceNodeId is defined in the object dictionary. */
   *d->bDeviceNodeId = nodeId;
 }