canopennode/example/IO.html

6628 lines
178 KiB
HTML

<!DOCTYPE html>
<html><head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
<title>IO Example - CANopenNode</title>
<link rel='stylesheet' type='text/css' href='lib/CANopenUI.css'/>
<style type='text/css'>
body{background-color: rgb(165, 186, 221);}
li{list-style-type: none;}
table, th, td{border: 1px solid black; padding: 0 5px; border-collapse: collapse;}
#ODList{position: relative; width: 450px; margin: 0; padding: 0;}
#ODList ul{padding-left: 30px;}
#ODList > li{margin: 0 0 20px;}
#ODList > li > *:first-child{font-family: sans-serif; background-color: LightBlue; margin: 0; padding: 5px 10px; cursor: pointer;}
#ODList > li li.expandable{list-style-type: circle;}
.expandable > *:first-child{cursor: pointer;}
.expandable > *:nth-child(2){display: none;}
#ODList input[addr]{position: absolute; left: 320px; width: 120px;}
#ODList > li li.expandable input[addr]{left: 325px; width: 115px;}
#ODList a{cursor: pointer; color: blue;}
#ODDoc{position: fixed; overflow: auto; height: 95%; width: 500px; left: 500px; top: 10px;}
#ODDoc > li{display: none;}
.PFContainer .ODUpdatedAndDefault{background-color:lightGreen;}
.PFContainer .ODUpdated{background-color:MediumSpringGreen;}
.PFContainer .ODChanged{background-color:yellow;}
.PFContainer .ODError{background-color:red;}
</style>
<script type='text/javascript' src='lib/CANopen.js'></script>
<script type='text/javascript' src='lib/CANopenUI.js'></script>
<script type='text/javascript'>
//<![CDATA[
var ODDocDisplayed = null;
var ui = null;
function toggle(){
var tStyle = this.nextElementSibling.style;
if(tStyle.display == 'block') tStyle.display = 'none';
else tStyle.display = 'block';
}
function toggleAll(){
if(document.styleSheets[1].cssRules[9].style.display == 'none'){
document.styleSheets[1].cssRules[9].style.display = 'block';
document.styleSheets[1].cssRules[14].style.display = 'block';
document.styleSheets[1].cssRules[13].style.position = 'absolute';
document.styleSheets[1].cssRules[13].style.overflow = 'visible';
}
else{
document.styleSheets[1].cssRules[9].style.display = 'none';
document.styleSheets[1].cssRules[14].style.display = 'none';
document.styleSheets[1].cssRules[13].style.position = 'fixed';
document.styleSheets[1].cssRules[13].style.overflow = 'auto';
}
}
function showDoc(e){
var docAttr = e.target.getAttribute('docref');
if(docAttr){
var docRef = document.getElementById(docAttr);
if(docRef){
if(ODDocDisplayed) ODDocDisplayed.style.display = 'none';
ODDocDisplayed = docRef;
docRef.style.display = 'block';
}
}
}
function init(){
var expandables = document.getElementsByClassName('expandable');
for(var i=0; i<expandables.length; i++){
expandables[i].firstElementChild.addEventListener('click', toggle, false);
}
var ODList = document.getElementById('ODList');
ODList.addEventListener('click', showDoc, false);
//try{
ui = new CANopenUI();
//}
//catch(e){}
}
window.addEventListener('load', init, false);
//]]>
</script>
</head>
<body>
<h3>CANopen object dictionary for IO Example</h3>
<ul id="ODList">
<li class="expandable">
<h2>Device information</h2>
<ul>
<li class="expandable">
<div>
<h3>File information</h3>
</div>
<ul>
<table>
<tr>
<th>File Name</th>
<td>IO Example</td>
</tr>
<tr>
<th>File Version</th>
<td>-</td>
</tr>
<tr>
<th>Creation Time</th>
<td>17:24:43</td>
</tr>
<tr>
<th>Creation Date</th>
<td>2016-03-25</td>
</tr>
<tr>
<th>Created By</th>
<td>JP</td>
</tr>
</table>
</ul>
</li>
<li class="expandable">
<div>
<h3>Device Identity</h3>
</div>
<ul>
<table>
<tr>
<th>Vendor name</th>
<td>CANopenNode</td>
</tr>
<tr>
<th>Product Name</th>
<td>CANopenNode</td>
</tr>
<tr>
<th>Product Text</th>
<td>
<div class="description lang_en">
<h4>en: CANopenNode</h4>
<div>CANopenNode is an open source software stack used for serial communication of multiple devices over the CAN/CANopen Network.</div>
<a href="http://canopennode.sourceforge.net" target="infoWindow">More...</a>
</div>
</td>
</tr>
</table>
</ul>
</li>
<li class="expandable">
<div>
<h3>CANopen features</h3>
</div>
<ul>
<div id="feature_SYNC" class="elements">
<h3>SYNC, value = 1</h3>
<h4>Associated objects:</h4>
<table>
<tr>
<th>Name</th>
<th>Index</th>
<th>Max Index</th>
<th>Index step</th>
</tr>
<tr>
<td>COB-ID SYNC message</td>
<td>1005</td>
<td/>
<td/>
</tr>
<tr>
<td>Communication cycle period</td>
<td>1006</td>
<td/>
<td/>
</tr>
<tr>
<td>Synchronous window length</td>
<td>1007</td>
<td/>
<td/>
</tr>
<tr>
<td>SYNC counter</td>
<td>2103</td>
<td/>
<td/>
</tr>
<tr>
<td>SYNC time</td>
<td>2104</td>
<td/>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Synchronization object (Sync)</h4>
<div>
The Sync Object is broadcast periodically by the Sync Producer.
<br/>
<br/>
Permissible value for SYNC is 0 or 1.
</div>
<a href="http://www.can-cia.org/canopen/protocol/special.html" target="infoWindow">More...</a>
</div>
</div>
<div id="feature_EMERGENCY" class="elements">
<h3>Emergency, value = 1</h3>
<h4>Associated objects:</h4>
<table>
<tr>
<th>Name</th>
<th>Index</th>
<th>Max Index</th>
<th>Index step</th>
</tr>
<tr>
<td>COB-ID EMCY</td>
<td>1014</td>
<td/>
<td/>
</tr>
<tr>
<td>inhibit time EMCY</td>
<td>1015</td>
<td/>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Emergency object (Emcy)</h4>
<div>
The Emergency message is triggered by the occurrence of a device internal error situation.
<br/>
<br/>
Permissible value for Emergency is 0 or 1.
</div>
<a href="http://www.can-cia.org/canopen/protocol/special.html" target="infoWindow">More...</a>
</div>
</div>
<div id="feature_SDO_SERVER" class="elements">
<h3>SDO server, value = 1</h3>
<h4>Associated objects:</h4>
<table>
<tr>
<th>Name</th>
<th>Index</th>
<th>Max Index</th>
<th>Index step</th>
</tr>
<tr>
<td>SDO server parameter</td>
<td>1200</td>
<td>1201</td>
<td>1</td>
</tr>
</table>
<div class="description lang_en">
<h4>en: Service Data Object (SDO)</h4>
<div>
A Service Data Object (SDO) reads from entries or writes to entries of the Object Dictionary.
<br/>
SDO server is implemented on all CANopen devices.
<br/>
<br/>
Permissible value for SDO sever is 0 or 1.
</div>
<a href="http://www.can-cia.org/canopen/protocol/sdo.html" target="infoWindow">More...</a>
</div>
</div>
<div id="feature_RPDO" class="elements">
<h3>RPDO, value = 4</h3>
<h4>Associated objects:</h4>
<table>
<tr>
<th>Name</th>
<th>Index</th>
<th>Max Index</th>
<th>Index step</th>
</tr>
<tr>
<td>RPDO communication parameter</td>
<td>1400</td>
<td>140F</td>
<td>1</td>
</tr>
<tr>
<td>RPDO mapping parameter</td>
<td>1600</td>
<td>160F</td>
<td>1</td>
</tr>
</table>
<div class="description lang_en">
<h4>en: Recive Process Data Object (RPDO)</h4>
<div>
Process Data Objects (PDOs) are mapped to a single CAN frame using up to 8 bytes of the data field to transmit application objects. Each PDO has a unique identifier and is transmitted by only one node, but it can be received by more than one (producer/consumer communication).
<br/>
<br/>
Permissible value for RPDO is 0 to 16. For larger value Max Index must be changed.
</div>
<a href="http://www.can-cia.org/canopen/protocol/pdo.html" target="infoWindow">More...</a>
</div>
</div>
<div id="feature_TPDO" class="elements">
<h3>TPDO, value = 4</h3>
<h4>Associated objects:</h4>
<table>
<tr>
<th>Name</th>
<th>Index</th>
<th>Max Index</th>
<th>Index step</th>
</tr>
<tr>
<td>TPDO communication parameter</td>
<td>1800</td>
<td>180F</td>
<td>1</td>
</tr>
<tr>
<td>TPDO mapping parameter</td>
<td>1A00</td>
<td>1A0F</td>
<td>1</td>
</tr>
</table>
<div class="description lang_en">
<h4>en: Transmit Process Data Object (TPDO)</h4>
<div>
Process Data Objects (PDOs) are mapped to a single CAN frame using up to 8 bytes of the data field to transmit application objects. Each PDO has a unique identifier and is transmitted by only one node, but it can be received by more than one (producer/consumer communication).
<br/>
<br/>
Permissible value for TPDO is 0 to 16. For larger value Max Index must be changed.
</div>
<a href="http://www.can-cia.org/canopen/protocol/pdo.html" target="infoWindow">More...</a>
</div>
</div>
<div id="feature_TRACE" class="elements">
<h3>Trace, value = 2</h3>
<h4>Associated objects:</h4>
<table>
<tr>
<th>Name</th>
<th>Index</th>
<th>Max Index</th>
<th>Index step</th>
</tr>
<tr>
<td>Trace config</td>
<td>2301</td>
<td>2320</td>
<td>1</td>
</tr>
<tr>
<td>Trace enable</td>
<td>2400</td>
<td/>
<td/>
</tr>
<tr>
<td>Trace</td>
<td>2401</td>
<td>2420</td>
<td>1</td>
</tr>
</table>
<div class="description lang_en">
<h4>en: Trace</h4>
<div>Trace is used for recording variables.</div>
</div>
</div>
</ul>
</li>
</ul>
</li>
<li class="expandable">
<h2>Communication Profile</h2>
<ul class="PFContainer" style="display:block;">
<li>
<input type="button" pf="butReadAll" value="Read All"/>
<input type="button" pf="butReadRR" value="Read RAM"/>
<input type="button" pf="butRead" value="Read marked"/>
<input type="button" pf="butWrite" value="Write marked"/>
</li>
<li>
<a docref="IO Example_1000">1000</a>
- Device type:
<input addr="1000000004" format="X32" pf="ro" value="0x00000000"/>
</li>
<li>
<a docref="IO Example_1001">1001</a>
- Error register:
<input addr="1001000001" format="U08" pf="rro" value="0"/>
</li>
<li>
<a docref="IO Example_1002">1002</a>
- Manufacturer status register:
<input addr="1002000004" format="U32" pf="rro" value="0"/>
</li>
<li class="expandable">
<a docref="IO Example_1003">1003 - Pre-defined error field</a>
<ul>
<li>
00 - Number of errors:
<input addr="1003000001" format="U08" pf="rro" value="0"/>
</li>
<li>
01 - Standard error field:
<input addr="1003010004" format="U32" pf="rro" value="0"/>
</li>
<li>
02 - Standard error field:
<input addr="1003020004" format="U32" pf="rro" value="0"/>
</li>
<li>
03 - Standard error field:
<input addr="1003030004" format="U32" pf="rro" value="0"/>
</li>
<li>
04 - Standard error field:
<input addr="1003040004" format="U32" pf="rro" value="0"/>
</li>
<li>
05 - Standard error field:
<input addr="1003050004" format="U32" pf="rro" value="0"/>
</li>
<li>
06 - Standard error field:
<input addr="1003060004" format="U32" pf="rro" value="0"/>
</li>
<li>
07 - Standard error field:
<input addr="1003070004" format="U32" pf="rro" value="0"/>
</li>
<li>
08 - Standard error field:
<input addr="1003080004" format="U32" pf="rro" value="0"/>
</li>
</ul>
</li>
<li>
<a docref="IO Example_1005">1005</a>
- COB-ID SYNC message:
<input addr="1005000004" format="X32" pf="rw" value="0x00000080"/>
</li>
<li>
<a docref="IO Example_1006">1006</a>
- Communication cycle period:
<input addr="1006000004" format="U32" pf="rw" value="0"/>
</li>
<li>
<a docref="IO Example_1007">1007</a>
- Synchronous window length:
<input addr="1007000004" format="U32" pf="rw" value="0"/>
</li>
<li>
<a docref="IO Example_1008">1008</a>
- Manufacturer device name:
<input addr="1008000011" format="S0b" pf="ro" value="CANopenNode"/>
</li>
<li>
<a docref="IO Example_1009">1009</a>
- Manufacturer hardware version:
<input addr="1009000004" format="S04" pf="ro" value="3.00"/>
</li>
<li>
<a docref="IO Example_100A">100A</a>
- Manufacturer software version:
<input addr="100A000004" format="S04" pf="ro" value="3.00"/>
</li>
<li class="expandable">
<a docref="IO Example_1010">1010 - Store parameters</a>
<ul>
<li>
00 - max sub-index:
<input addr="1010000001" format="U08" pf="rrw" value="1"/>
</li>
<li>
01 - save all parameters:
<input addr="1010010004" format="X32" pf="rrw" value="0x00000003"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1011">1011 - Restore default parameters</a>
<ul>
<li>
00 - max sub-index:
<input addr="1011000001" format="U08" pf="rrw" value="1"/>
</li>
<li>
01 - restore all default parameters:
<input addr="1011010004" format="X32" pf="rrw" value="0x00000001"/>
</li>
</ul>
</li>
<li>
<a docref="IO Example_1014">1014</a>
- COB-ID EMCY:
<input addr="1014000004" format="X32" pf="ro" value="$NODEID+0x80"/>
</li>
<li>
<a docref="IO Example_1015">1015</a>
- inhibit time EMCY:
<input addr="1015000002" format="U16" pf="rw" value="100"/>
</li>
<li class="expandable">
<a docref="IO Example_1016">1016 - Consumer heartbeat time</a>
<ul>
<li>
00 - max sub-index:
<input addr="1016000001" format="U08" pf="rw" value="4"/>
</li>
<li>
01 - Consumer heartbeat time:
<input addr="1016010004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
02 - Consumer heartbeat time:
<input addr="1016020004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
03 - Consumer heartbeat time:
<input addr="1016030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - Consumer heartbeat time:
<input addr="1016040004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li>
<a docref="IO Example_1017">1017</a>
- Producer heartbeat time:
<input addr="1017000002" format="U16" pf="rw" value="1000"/>
</li>
<li class="expandable">
<a docref="IO Example_1018">1018 - Identity</a>
<ul>
<li>
00 - max sub-index:
<input addr="1018000001" format="U08" pf="ro" value="4"/>
</li>
<li>
01 - Vendor-ID:
<input addr="1018010004" format="X32" pf="ro" value="0x00000000"/>
</li>
<li>
02 - Product code:
<input addr="1018020004" format="X32" pf="ro" value="0x00000000"/>
</li>
<li>
03 - Revision number:
<input addr="1018030004" format="X32" pf="ro" value="0x00000000"/>
</li>
<li>
04 - Serial number:
<input addr="1018040004" format="X32" pf="ro" value="0x00000000"/>
</li>
</ul>
</li>
<li>
<a docref="IO Example_1019">1019</a>
- Synchronous counter overflow value:
<input addr="1019000001" format="U08" pf="rw" value="0"/>
</li>
<li class="expandable">
<a docref="IO Example_1029">1029 - Error behavior</a>
<ul>
<li>
00 - max sub-index:
<input addr="1029000001" format="U08" pf="rw" value="6"/>
</li>
<li>
01 - Communication:
<input addr="1029010001" format="X08" pf="rw" value="0x00"/>
</li>
<li>
02 - Communication other:
<input addr="1029020001" format="X08" pf="rw" value="0x00"/>
</li>
<li>
03 - Communication passive:
<input addr="1029030001" format="X08" pf="rw" value="0x01"/>
</li>
<li>
04 - Generic:
<input addr="1029040001" format="X08" pf="rw" value="0x00"/>
</li>
<li>
05 - Device profile:
<input addr="1029050001" format="X08" pf="rw" value="0x00"/>
</li>
<li>
06 - Manufacturer specific:
<input addr="1029060001" format="X08" pf="rw" value="0x00"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1200">1200 - SDO server parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1200000001" format="U08" pf="ro" value="2"/>
</li>
<li>
01 - COB-ID client to server:
<input addr="1200010004" format="X32" pf="ro" value="$NODEID+0x600"/>
</li>
<li>
02 - COB-ID server to client:
<input addr="1200020004" format="X32" pf="ro" value="$NODEID+0x580"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1400">1400 - RPDO communication parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1400000001" format="U08" pf="ro" value="2"/>
</li>
<li>
01 - COB-ID used by RPDO:
<input addr="1400010004" format="X32" pf="rw" value="$NODEID+0x200"/>
</li>
<li>
02 - transmission type:
<input addr="1400020001" format="U08" pf="rw" value="255"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1401">1401 - RPDO communication parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1401000001" format="U08" pf="ro" value="2"/>
</li>
<li>
01 - COB-ID used by RPDO:
<input addr="1401010004" format="X32" pf="rw" value="$NODEID+0x300"/>
</li>
<li>
02 - transmission type:
<input addr="1401020001" format="U08" pf="rw" value="254"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1402">1402 - RPDO communication parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1402000001" format="U08" pf="ro" value="2"/>
</li>
<li>
01 - COB-ID used by RPDO:
<input addr="1402010004" format="X32" pf="rw" value="$NODEID+0x400"/>
</li>
<li>
02 - transmission type:
<input addr="1402020001" format="U08" pf="rw" value="254"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1403">1403 - RPDO communication parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1403000001" format="U08" pf="ro" value="2"/>
</li>
<li>
01 - COB-ID used by RPDO:
<input addr="1403010004" format="X32" pf="rw" value="$NODEID+0x500"/>
</li>
<li>
02 - transmission type:
<input addr="1403020001" format="U08" pf="rw" value="254"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1600">1600 - RPDO mapping parameter</a>
<ul>
<li>
00 - Number of mapped objects:
<input addr="1600000001" format="U08" pf="rw" value="2"/>
</li>
<li>
01 - mapped object 1:
<input addr="1600010004" format="X32" pf="rw" value="0x62000108"/>
</li>
<li>
02 - mapped object 2:
<input addr="1600020004" format="X32" pf="rw" value="0x62000208"/>
</li>
<li>
03 - mapped object 3:
<input addr="1600030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - mapped object 4:
<input addr="1600040004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
05 - mapped object 5:
<input addr="1600050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - mapped object 6:
<input addr="1600060004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
07 - mapped object 7:
<input addr="1600070004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
08 - mapped object 8:
<input addr="1600080004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1601">1601 - RPDO mapping parameter</a>
<ul>
<li>
00 - Number of mapped objects:
<input addr="1601000001" format="U08" pf="rw" value="0"/>
</li>
<li>
01 - mapped object 1:
<input addr="1601010004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
02 - mapped object 2:
<input addr="1601020004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
03 - mapped object 3:
<input addr="1601030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - mapped object 4:
<input addr="1601040004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
05 - mapped object 5:
<input addr="1601050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - mapped object 6:
<input addr="1601060004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
07 - mapped object 7:
<input addr="1601070004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
08 - mapped object 8:
<input addr="1601080004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1602">1602 - RPDO mapping parameter</a>
<ul>
<li>
00 - Number of mapped objects:
<input addr="1602000001" format="U08" pf="rw" value="0"/>
</li>
<li>
01 - mapped object 1:
<input addr="1602010004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
02 - mapped object 2:
<input addr="1602020004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
03 - mapped object 3:
<input addr="1602030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - mapped object 4:
<input addr="1602040004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
05 - mapped object 5:
<input addr="1602050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - mapped object 6:
<input addr="1602060004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
07 - mapped object 7:
<input addr="1602070004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
08 - mapped object 8:
<input addr="1602080004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1603">1603 - RPDO mapping parameter</a>
<ul>
<li>
00 - Number of mapped objects:
<input addr="1603000001" format="U08" pf="rw" value="0"/>
</li>
<li>
01 - mapped object 1:
<input addr="1603010004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
02 - mapped object 2:
<input addr="1603020004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
03 - mapped object 3:
<input addr="1603030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - mapped object 4:
<input addr="1603040004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
05 - mapped object 5:
<input addr="1603050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - mapped object 6:
<input addr="1603060004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
07 - mapped object 7:
<input addr="1603070004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
08 - mapped object 8:
<input addr="1603080004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1800">1800 - TPDO communication parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1800000001" format="U08" pf="ro" value="6"/>
</li>
<li>
01 - COB-ID used by TPDO:
<input addr="1800010004" format="X32" pf="rw" value="$NODEID+0x180"/>
</li>
<li>
02 - transmission type:
<input addr="1800020001" format="U08" pf="rw" value="255"/>
</li>
<li>
03 - inhibit time:
<input addr="1800030002" format="U16" pf="rw" value="100"/>
</li>
<li>
04 - compatibility entry:
<input addr="1800040001" format="U08" pf="rw" value="0"/>
</li>
<li>
05 - event timer:
<input addr="1800050002" format="U16" pf="rw" value="0"/>
</li>
<li>
06 - SYNC start value:
<input addr="1800060001" format="U08" pf="rw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1801">1801 - TPDO communication parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1801000001" format="U08" pf="ro" value="6"/>
</li>
<li>
01 - COB-ID used by TPDO:
<input addr="1801010004" format="X32" pf="rw" value="$NODEID+0x280"/>
</li>
<li>
02 - transmission type:
<input addr="1801020001" format="U08" pf="rw" value="254"/>
</li>
<li>
03 - inhibit time:
<input addr="1801030002" format="U16" pf="rw" value="0"/>
</li>
<li>
04 - compatibility entry:
<input addr="1801040001" format="U08" pf="rw" value="0"/>
</li>
<li>
05 - event timer:
<input addr="1801050002" format="U16" pf="rw" value="0"/>
</li>
<li>
06 - SYNC start value:
<input addr="1801060001" format="U08" pf="rw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1802">1802 - TPDO communication parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1802000001" format="U08" pf="ro" value="6"/>
</li>
<li>
01 - COB-ID used by TPDO:
<input addr="1802010004" format="X32" pf="rw" value="$NODEID+0x380"/>
</li>
<li>
02 - transmission type:
<input addr="1802020001" format="U08" pf="rw" value="254"/>
</li>
<li>
03 - inhibit time:
<input addr="1802030002" format="U16" pf="rw" value="0"/>
</li>
<li>
04 - compatibility entry:
<input addr="1802040001" format="U08" pf="rw" value="0"/>
</li>
<li>
05 - event timer:
<input addr="1802050002" format="U16" pf="rw" value="0"/>
</li>
<li>
06 - SYNC start value:
<input addr="1802060001" format="U08" pf="rw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1803">1803 - TPDO communication parameter</a>
<ul>
<li>
00 - max sub-index:
<input addr="1803000001" format="U08" pf="ro" value="6"/>
</li>
<li>
01 - COB-ID used by TPDO:
<input addr="1803010004" format="X32" pf="rw" value="$NODEID+0x480"/>
</li>
<li>
02 - transmission type:
<input addr="1803020001" format="U08" pf="rw" value="254"/>
</li>
<li>
03 - inhibit time:
<input addr="1803030002" format="U16" pf="rw" value="0"/>
</li>
<li>
04 - compatibility entry:
<input addr="1803040001" format="U08" pf="rw" value="0"/>
</li>
<li>
05 - event timer:
<input addr="1803050002" format="U16" pf="rw" value="0"/>
</li>
<li>
06 - SYNC start value:
<input addr="1803060001" format="U08" pf="rw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1A00">1A00 - TPDO mapping parameter</a>
<ul>
<li>
00 - Number of mapped objects:
<input addr="1A00000001" format="U08" pf="rw" value="2"/>
</li>
<li>
01 - mapped object 1:
<input addr="1A00010004" format="X32" pf="rw" value="0x60000108"/>
</li>
<li>
02 - mapped object 2:
<input addr="1A00020004" format="X32" pf="rw" value="0x60000208"/>
</li>
<li>
03 - mapped object 3:
<input addr="1A00030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - mapped object 4:
<input addr="1A00040004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
05 - mapped object 5:
<input addr="1A00050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - mapped object 6:
<input addr="1A00060004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
07 - mapped object 7:
<input addr="1A00070004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
08 - mapped object 8:
<input addr="1A00080004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1A01">1A01 - TPDO mapping parameter</a>
<ul>
<li>
00 - Number of mapped objects:
<input addr="1A01000001" format="U08" pf="rw" value="0"/>
</li>
<li>
01 - mapped object 1:
<input addr="1A01010004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
02 - mapped object 2:
<input addr="1A01020004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
03 - mapped object 3:
<input addr="1A01030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - mapped object 4:
<input addr="1A01040004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
05 - mapped object 5:
<input addr="1A01050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - mapped object 6:
<input addr="1A01060004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
07 - mapped object 7:
<input addr="1A01070004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
08 - mapped object 8:
<input addr="1A01080004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1A02">1A02 - TPDO mapping parameter</a>
<ul>
<li>
00 - Number of mapped objects:
<input addr="1A02000001" format="U08" pf="rw" value="0"/>
</li>
<li>
01 - mapped object 1:
<input addr="1A02010004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
02 - mapped object 2:
<input addr="1A02020004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
03 - mapped object 3:
<input addr="1A02030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - mapped object 4:
<input addr="1A02040004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
05 - mapped object 5:
<input addr="1A02050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - mapped object 6:
<input addr="1A02060004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
07 - mapped object 7:
<input addr="1A02070004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
08 - mapped object 8:
<input addr="1A02080004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_1A03">1A03 - TPDO mapping parameter</a>
<ul>
<li>
00 - Number of mapped objects:
<input addr="1A03000001" format="U08" pf="rw" value="0"/>
</li>
<li>
01 - mapped object 1:
<input addr="1A03010004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
02 - mapped object 2:
<input addr="1A03020004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
03 - mapped object 3:
<input addr="1A03030004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
04 - mapped object 4:
<input addr="1A03040004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
05 - mapped object 5:
<input addr="1A03050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - mapped object 6:
<input addr="1A03060004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
07 - mapped object 7:
<input addr="1A03070004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
08 - mapped object 8:
<input addr="1A03080004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li>
<a docref="IO Example_1F80">1F80</a>
- NMT startup:
<input addr="1F80000004" format="X32" pf="rw" value="0x00000000"/>
</li>
</ul>
</li>
<li class="expandable">
<h2>Manufacturer specific</h2>
<ul class="PFContainer">
<li>
<input type="button" pf="butReadAll" value="Read All"/>
<input type="button" pf="butReadRR" value="Read RAM"/>
<input type="button" pf="butRead" value="Read marked"/>
<input type="button" pf="butWrite" value="Write marked"/>
</li>
<li>
<a docref="IO Example_2100">2100</a>
- Error status bits:
<input addr="2100000010" format="O0a" pf="rro" value="00 00 00 00 00 00 00 00 00 00"/>
</li>
<li>
<a docref="IO Example_2101">2101</a>
- CAN node ID:
<input addr="2101000001" format="X08" pf="rw" value="0x30"/>
</li>
<li>
<a docref="IO Example_2102">2102</a>
- CAN bit rate:
<input addr="2102000002" format="U16" pf="rw" value="250"/>
</li>
<li>
<a docref="IO Example_2103">2103</a>
- SYNC counter:
<input addr="2103000002" format="U16" pf="rrw" value="0"/>
</li>
<li>
<a docref="IO Example_2104">2104</a>
- SYNC time:
<input addr="2104000002" format="U16" pf="rro" value="0"/>
</li>
<li>
<a docref="IO Example_2106">2106</a>
- Power-on counter:
<input addr="2106000004" format="U32" pf="ro" value="0"/>
</li>
<li class="expandable">
<a docref="IO Example_2107">2107 - Performance</a>
<ul>
<li>
00 - max sub-index:
<input addr="2107000001" format="U08" pf="rrw" value="5"/>
</li>
<li>
01 - cycles per second:
<input addr="2107010002" format="U16" pf="rrw" value="1000"/>
</li>
<li>
02 - timer cycle time:
<input addr="2107020002" format="U16" pf="rrw" value="0"/>
</li>
<li>
03 - timer cycle max time:
<input addr="2107030002" format="U16" pf="rrw" value="0"/>
</li>
<li>
04 - main cycle time:
<input addr="2107040002" format="U16" pf="rrw" value="0"/>
</li>
<li>
05 - main cycle max time:
<input addr="2107050002" format="U16" pf="rrw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2108">2108 - Temperature</a>
<ul>
<li>
00 - max sub-index:
<input addr="2108000001" format="U08" pf="rro" value="1"/>
</li>
<li>
01 - main PCB:
<input addr="2108010002" format="I16" pf="rro" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2109">2109 - Voltage</a>
<ul>
<li>
00 - max sub-index:
<input addr="2109000001" format="U08" pf="rro" value="1"/>
</li>
<li>
01 - main PCB supply:
<input addr="2109010002" format="I16" pf="rro" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2110">2110 - Variable Int32</a>
<ul>
<li>
00 - max sub-index:
<input addr="2110000001" format="U08" pf="rrw" value="16"/>
</li>
<li>
01 - int32:
<input addr="2110010004" format="I32" pf="rrw" value="0"/>
</li>
<li>
02 - int32:
<input addr="2110020004" format="I32" pf="rrw" value="0"/>
</li>
<li>
03 - int32:
<input addr="2110030004" format="I32" pf="rrw" value="0"/>
</li>
<li>
04 - int32:
<input addr="2110040004" format="I32" pf="rrw" value="0"/>
</li>
<li>
05 - int32:
<input addr="2110050004" format="I32" pf="rrw" value="0"/>
</li>
<li>
06 - int32:
<input addr="2110060004" format="I32" pf="rrw" value="0"/>
</li>
<li>
07 - int32:
<input addr="2110070004" format="I32" pf="rrw" value="0"/>
</li>
<li>
08 - int32:
<input addr="2110080004" format="I32" pf="rrw" value="0"/>
</li>
<li>
09 - int32:
<input addr="2110090004" format="I32" pf="rrw" value="0"/>
</li>
<li>
0A - int32:
<input addr="21100A0004" format="I32" pf="rrw" value="0"/>
</li>
<li>
0B - int32:
<input addr="21100B0004" format="I32" pf="rrw" value="0"/>
</li>
<li>
0C - int32:
<input addr="21100C0004" format="I32" pf="rrw" value="0"/>
</li>
<li>
0D - int32:
<input addr="21100D0004" format="I32" pf="rrw" value="0"/>
</li>
<li>
0E - int32:
<input addr="21100E0004" format="I32" pf="rrw" value="0"/>
</li>
<li>
0F - int32:
<input addr="21100F0004" format="I32" pf="rrw" value="0"/>
</li>
<li>
10 - int32:
<input addr="2110100004" format="I32" pf="rrw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2111">2111 - Variable ROM Int32</a>
<ul>
<li>
00 - max sub-index:
<input addr="2111000001" format="U08" pf="rw" value="16"/>
</li>
<li>
01 - int32:
<input addr="2111010004" format="I32" pf="rw" value="1"/>
</li>
<li>
02 - int32:
<input addr="2111020004" format="I32" pf="rw" value="0"/>
</li>
<li>
03 - int32:
<input addr="2111030004" format="I32" pf="rw" value="0"/>
</li>
<li>
04 - int32:
<input addr="2111040004" format="I32" pf="rw" value="0"/>
</li>
<li>
05 - int32:
<input addr="2111050004" format="I32" pf="rw" value="0"/>
</li>
<li>
06 - int32:
<input addr="2111060004" format="I32" pf="rw" value="0"/>
</li>
<li>
07 - int32:
<input addr="2111070004" format="I32" pf="rw" value="0"/>
</li>
<li>
08 - int32:
<input addr="2111080004" format="I32" pf="rw" value="0"/>
</li>
<li>
09 - int32:
<input addr="2111090004" format="I32" pf="rw" value="0"/>
</li>
<li>
0A - int32:
<input addr="21110A0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0B - int32:
<input addr="21110B0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0C - int32:
<input addr="21110C0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0D - int32:
<input addr="21110D0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0E - int32:
<input addr="21110E0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0F - int32:
<input addr="21110F0004" format="I32" pf="rw" value="0"/>
</li>
<li>
10 - int32:
<input addr="2111100004" format="I32" pf="rw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2112">2112 - Variable NV Int32</a>
<ul>
<li>
00 - max sub-index:
<input addr="2112000001" format="U08" pf="rw" value="16"/>
</li>
<li>
01 - int32:
<input addr="2112010004" format="I32" pf="rw" value="1"/>
</li>
<li>
02 - int32:
<input addr="2112020004" format="I32" pf="rw" value="0"/>
</li>
<li>
03 - int32:
<input addr="2112030004" format="I32" pf="rw" value="0"/>
</li>
<li>
04 - int32:
<input addr="2112040004" format="I32" pf="rw" value="0"/>
</li>
<li>
05 - int32:
<input addr="2112050004" format="I32" pf="rw" value="0"/>
</li>
<li>
06 - int32:
<input addr="2112060004" format="I32" pf="rw" value="0"/>
</li>
<li>
07 - int32:
<input addr="2112070004" format="I32" pf="rw" value="0"/>
</li>
<li>
08 - int32:
<input addr="2112080004" format="I32" pf="rw" value="0"/>
</li>
<li>
09 - int32:
<input addr="2112090004" format="I32" pf="rw" value="0"/>
</li>
<li>
0A - int32:
<input addr="21120A0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0B - int32:
<input addr="21120B0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0C - int32:
<input addr="21120C0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0D - int32:
<input addr="21120D0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0E - int32:
<input addr="21120E0004" format="I32" pf="rw" value="0"/>
</li>
<li>
0F - int32:
<input addr="21120F0004" format="I32" pf="rw" value="0"/>
</li>
<li>
10 - int32:
<input addr="2112100004" format="I32" pf="rw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2120">2120 - test var</a>
<ul>
<li>
00 - max sub-index:
<input addr="2120000001" format="U08" pf="rro" value="5"/>
</li>
<li>
01 - I64:
<input addr="2120010008" format="I64" pf="rrw" value="0x1234567890ABCDEFLL"/>
</li>
<li>
02 - U64:
<input addr="2120020008" format="X64" pf="rrw" value="0x234567890ABCDEF1LL"/>
</li>
<li>
03 - R32:
<input addr="2120030004" format="R32" pf="rrw" value="12.345"/>
</li>
<li>
04 - R64:
<input addr="2120040008" format="R64" pf="rrw" value="456.789"/>
</li>
<li>
05 - domain:
<input addr="2120050000" format="Dxx" pf="rrw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2130">2130 - Time</a>
<ul>
<li>
00 - max sub-index:
<input addr="2130000001" format="U08" pf="rro" value="3"/>
</li>
<li>
01 - String:
<input addr="21300100" format="S" pf="rro" value="- "/>
</li>
<li>
02 - Epoch time base ms:
<input addr="2130020008" format="U64" pf="rrw" value="0"/>
</li>
<li>
03 - Epoch time offset ms:
<input addr="2130030004" format="U32" pf="rrw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2301">2301 - Trace config</a>
<ul>
<li>
00 - max sub-index:
<input addr="2301000001" format="U08" pf="ro" value="8"/>
</li>
<li>
01 - Size:
<input addr="2301010004" format="U32" pf="rw" value="100"/>
</li>
<li>
02 - Axis no:
<input addr="2301020001" format="U08" pf="rw" value="1"/>
</li>
<li>
03 - Name:
<input addr="23010300" format="S" pf="rw" value="Trace1 "/>
</li>
<li>
04 - Color:
<input addr="23010400" format="S" pf="rw" value="red "/>
</li>
<li>
05 - Map:
<input addr="2301050004" format="X32" pf="rw" value="0x60000108"/>
</li>
<li>
06 - Format:
<input addr="2301060001" format="U08" pf="rw" value="1"/>
</li>
<li>
07 - Trigger:
<input addr="2301070001" format="U08" pf="rw" value="0"/>
</li>
<li>
08 - Threshold:
<input addr="2301080004" format="I32" pf="rw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2302">2302 - Trace config</a>
<ul>
<li>
00 - max sub-index:
<input addr="2302000001" format="U08" pf="ro" value="8"/>
</li>
<li>
01 - Size:
<input addr="2302010004" format="U32" pf="rw" value="0"/>
</li>
<li>
02 - Axis no:
<input addr="2302020001" format="U08" pf="rw" value="0"/>
</li>
<li>
03 - Name:
<input addr="23020300" format="S" pf="rw" value="Trace2 "/>
</li>
<li>
04 - Color:
<input addr="23020400" format="S" pf="rw" value="green "/>
</li>
<li>
05 - Map:
<input addr="2302050004" format="X32" pf="rw" value="0x00000000"/>
</li>
<li>
06 - Format:
<input addr="2302060001" format="U08" pf="rw" value="0"/>
</li>
<li>
07 - Trigger:
<input addr="2302070001" format="U08" pf="rw" value="0"/>
</li>
<li>
08 - Threshold:
<input addr="2302080004" format="I32" pf="rw" value="0"/>
</li>
</ul>
</li>
<li>
<a docref="IO Example_2400">2400</a>
- Trace enable:
<input addr="2400000001" format="U08" pf="rrw" value="0"/>
</li>
<li class="expandable">
<a docref="IO Example_2401">2401 - Trace</a>
<ul>
<li>
00 - max sub-index:
<input addr="2401000001" format="U08" pf="rro" value="6"/>
</li>
<li>
01 - Size:
<input addr="2401010004" format="U32" pf="rrw" value="0"/>
</li>
<li>
02 - Value:
<input addr="2401020004" format="I32" pf="rrw" value="0"/>
</li>
<li>
03 - Min:
<input addr="2401030004" format="I32" pf="rrw" value="0"/>
</li>
<li>
04 - Max:
<input addr="2401040004" format="I32" pf="rrw" value="0"/>
</li>
<li>
05 - Plot:
<input addr="2401050000" format="Sxx" pf="rro" value="0"/>
</li>
<li>
06 - Trigger time:
<input addr="2401060004" format="U32" pf="rrw" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_2402">2402 - Trace</a>
<ul>
<li>
00 - max sub-index:
<input addr="2402000001" format="U08" pf="rro" value="6"/>
</li>
<li>
01 - Size:
<input addr="2402010004" format="U32" pf="rrw" value="0"/>
</li>
<li>
02 - Value:
<input addr="2402020004" format="I32" pf="rrw" value="0"/>
</li>
<li>
03 - Min:
<input addr="2402030004" format="I32" pf="rrw" value="0"/>
</li>
<li>
04 - Max:
<input addr="2402040004" format="I32" pf="rrw" value="0"/>
</li>
<li>
05 - Plot:
<input addr="2402050000" format="Sxx" pf="rro" value="0"/>
</li>
<li>
06 - Trigger time:
<input addr="2402060004" format="U32" pf="rrw" value="0"/>
</li>
</ul>
</li>
</ul>
</li>
<li class="expandable">
<h2>Device Profile</h2>
<ul class="PFContainer">
<li>
<input type="button" pf="butReadAll" value="Read All"/>
<input type="button" pf="butReadRR" value="Read RAM"/>
<input type="button" pf="butRead" value="Read marked"/>
<input type="button" pf="butWrite" value="Write marked"/>
</li>
<li class="expandable">
<a docref="IO Example_6000">6000 - Read input 8 bit</a>
<ul>
<li>
00 - max sub-index:
<input addr="6000000001" format="U08" pf="rro" value="8"/>
</li>
<li>
01 - Input:
<input addr="6000010001" format="X08" pf="rro" value="0x00"/>
</li>
<li>
02 - Input:
<input addr="6000020001" format="X08" pf="rro" value="0x00"/>
</li>
<li>
03 - Input:
<input addr="6000030001" format="X08" pf="rro" value="0x00"/>
</li>
<li>
04 - Input:
<input addr="6000040001" format="X08" pf="rro" value="0x00"/>
</li>
<li>
05 - Input:
<input addr="6000050001" format="X08" pf="rro" value="0x00"/>
</li>
<li>
06 - Input:
<input addr="6000060001" format="X08" pf="rro" value="0x00"/>
</li>
<li>
07 - Input:
<input addr="6000070001" format="X08" pf="rro" value="0x00"/>
</li>
<li>
08 - Input:
<input addr="6000080001" format="X08" pf="rro" value="0x00"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_6200">6200 - Write output 8 bit</a>
<ul>
<li>
00 - max sub-index:
<input addr="6200000001" format="U08" pf="rrw" value="8"/>
</li>
<li>
01 - Output:
<input addr="6200010001" format="X08" pf="rrw" value="0x00"/>
</li>
<li>
02 - Output:
<input addr="6200020001" format="X08" pf="rrw" value="0x00"/>
</li>
<li>
03 - Output:
<input addr="6200030001" format="X08" pf="rrw" value="0x00"/>
</li>
<li>
04 - Output:
<input addr="6200040001" format="X08" pf="rrw" value="0x00"/>
</li>
<li>
05 - Output:
<input addr="6200050001" format="X08" pf="rrw" value="0x00"/>
</li>
<li>
06 - Output:
<input addr="6200060001" format="X08" pf="rrw" value="0x00"/>
</li>
<li>
07 - Output:
<input addr="6200070001" format="X08" pf="rrw" value="0x00"/>
</li>
<li>
08 - Output:
<input addr="6200080001" format="X08" pf="rrw" value="0x00"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_6401">6401 - Read analogue input 16 bit</a>
<ul>
<li>
00 - max sub-index:
<input addr="6401000001" format="U08" pf="rro" value="12"/>
</li>
<li>
01 - Input:
<input addr="6401010002" format="I16" pf="rro" value="0"/>
</li>
<li>
02 - Input:
<input addr="6401020002" format="I16" pf="rro" value="0"/>
</li>
<li>
03 - Input:
<input addr="6401030002" format="I16" pf="rro" value="0"/>
</li>
<li>
04 - Input:
<input addr="6401040002" format="I16" pf="rro" value="0"/>
</li>
<li>
05 - Input:
<input addr="6401050002" format="I16" pf="rro" value="0"/>
</li>
<li>
06 - Input:
<input addr="6401060002" format="I16" pf="rro" value="0"/>
</li>
<li>
07 - Input:
<input addr="6401070002" format="I16" pf="rro" value="0"/>
</li>
<li>
08 - Input:
<input addr="6401080002" format="I16" pf="rro" value="0"/>
</li>
<li>
09 - Input:
<input addr="6401090002" format="I16" pf="rro" value="0"/>
</li>
<li>
0A - Input:
<input addr="64010A0002" format="I16" pf="rro" value="0"/>
</li>
<li>
0B - Input:
<input addr="64010B0002" format="I16" pf="rro" value="0"/>
</li>
<li>
0C - Input:
<input addr="64010C0002" format="I16" pf="rro" value="0"/>
</li>
</ul>
</li>
<li class="expandable">
<a docref="IO Example_6411">6411 - Write analogue output 16 bit</a>
<ul>
<li>
00 - max sub-index:
<input addr="6411000001" format="U08" pf="rrw" value="8"/>
</li>
<li>
01 - Output:
<input addr="6411010002" format="I16" pf="rrw" value="0"/>
</li>
<li>
02 - Output:
<input addr="6411020002" format="I16" pf="rrw" value="0"/>
</li>
<li>
03 - Output:
<input addr="6411030002" format="I16" pf="rrw" value="0"/>
</li>
<li>
04 - Output:
<input addr="6411040002" format="I16" pf="rrw" value="0"/>
</li>
<li>
05 - Output:
<input addr="6411050002" format="I16" pf="rrw" value="0"/>
</li>
<li>
06 - Output:
<input addr="6411060002" format="I16" pf="rrw" value="0"/>
</li>
<li>
07 - Output:
<input addr="6411070002" format="I16" pf="rrw" value="0"/>
</li>
<li>
08 - Output:
<input addr="6411080002" format="I16" pf="rrw" value="0"/>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<ul id="ODDoc">
<li id="IO Example_1000">
<h3>1000 - Device type</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Device type</h4>
<div>
bit 0-15: Device profile number
<br/>
bit 16-31: Additional information
</div>
</div>
</li>
<li id="IO Example_1001">
<h3>1001 - Error register</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>RAM</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Error register</h4>
<div>
bit 0: generic error
<br/>
bit 1: current
<br/>
bit 2: voltage
<br/>
bit 3: temperature
<br/>
bit 4: communication error (overrun, error state)
<br/>
bit 5: device profile specific
<br/>
bit 6: Reserved (always 0)
<br/>
bit 7: manufacturer specific
</div>
</div>
</li>
<li id="IO Example_1002">
<h3>1002 - Manufacturer status register</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>RAM</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Manufacturer status register</h4>
<div>bit 0-31: Not used by stack (available for user)</div>
</div>
</li>
<li id="IO Example_1003">
<h3>1003 - Pre-defined error field</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>9</td>
<td>RAM</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of errors</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Standard error field</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Standard error field</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Standard error field</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Standard error field</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Standard error field</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Standard error field</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>Standard error field</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>Standard error field</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Pre-defined error field</h4>
<div>
Number of Errors
<br/>
bit 0-7: Zero can be written to erase error history
<br/>
<br/>
Standard Error Field
<br/>
bit 0-15: Error code as transmited in the Emergency object
<br/>
bit 16-31: Manufacturer specific additional information
</div>
</div>
</li>
<li id="IO Example_1005">
<h3>1005 - COB-ID SYNC message</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000080</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: COB-ID SYNC message</h4>
<div>
bit 0-10: COB-ID for SYNC object
<br/>
bit 11-29: set to 0
<br/>
bit 30: 1(0) - node generates (does NOT generate) SYNC object
<br/>
bit 31: set to 0
</div>
</div>
</li>
<li id="IO Example_1006">
<h3>1006 - Communication cycle period</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Communication cycle period</h4>
<div>bit 0-31: period of SYNC transmission in µs (0 = no transmission, no checking)</div>
</div>
</li>
<li id="IO Example_1007">
<h3>1007 - Synchronous window length</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Synchronous window length</h4>
<div>bit 0-31: window leghth after SYNC when PDOS must be transmited in µs, (0 = not used)</div>
</div>
</li>
<li id="IO Example_1008">
<h3>1008 - Manufacturer device name</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>VISIBLE_STRING</td>
<td>const</td>
<td>no</td>
<td>no</td>
<td>CANopenNode</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Manufacturer device name</h4>
<div>Name of the manufacturer as string</div>
</div>
</li>
<li id="IO Example_1009">
<h3>1009 - Manufacturer hardware version</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>VISIBLE_STRING</td>
<td>const</td>
<td>no</td>
<td>no</td>
<td>3.00</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Manufacturer hardware version</h4>
<div>Name of the hardware version as string</div>
</div>
</li>
<li id="IO Example_100A">
<h3>100A - Manufacturer software version</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>VISIBLE_STRING</td>
<td>const</td>
<td>no</td>
<td>no</td>
<td>3.00</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Manufacturer software version</h4>
<div>Name of the software version as string.</div>
</div>
</li>
<li id="IO Example_1010">
<h3>1010 - Store parameters</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>2</td>
<td>RAM</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>1</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>save all parameters</td>
<td>0x00000003</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Store parameters</h4>
<div>Writing value 0x65766173 ('s','a','v','e' from LSB to MSB) into this location stores all ROM variables into EEPROM.</div>
</div>
</li>
<li id="IO Example_1011">
<h3>1011 - Restore default parameters</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>2</td>
<td>RAM</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>1</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>restore all default parameters</td>
<td>0x00000001</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Restore default parameters</h4>
<div>Writing value 0x64616F6C ('l','o','a','d' from LSB to MSB) into this location restores all ROM and EEPROM variables after reset. (After reset read form EEPROM is not performed, so default values are used.)</div>
</div>
</li>
<li id="IO Example_1014">
<h3>1014 - COB-ID EMCY</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x80</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: COB-ID emergency message</h4>
<div>
bit 0-10: COB-ID
<br/>
bit 11-30: set to 0 for 11 bit COB-ID
<br/>
bit 31: 0(1) - node uses (does NOT use) Emergency object
</div>
</div>
</li>
<li id="IO Example_1015">
<h3>1015 - inhibit time EMCY</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>100</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: inhibit time emergency message</h4>
<div>bit 0-15: Inhibit time of emergency message in 100µs</div>
</div>
</li>
<li id="IO Example_1016">
<h3>1016 - Consumer heartbeat time</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>5</td>
<td>ROM</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>4</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Consumer heartbeat time</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Consumer heartbeat time</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Consumer heartbeat time</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Consumer heartbeat time</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Consumer heartbeat time</h4>
<div>
max sub-index
<br/>
<br/>
Consumer Heartbeat Time
<br/>
bit 0-15: Heartbeat consumer time in ms (0 = node is not monitored)
<br/>
bit 16-23: Node ID
<br/>
bit 24-31: set to 0
</div>
</div>
</li>
<li id="IO Example_1017">
<h3>1017 - Producer heartbeat time</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>1000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Producer heartbeat time</h4>
<div>bit 0-15: Heartbeat producer time in ms (0 = disable transmission)</div>
</div>
</li>
<li id="IO Example_1018">
<h3>1018 - Identity</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>5</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>4</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Vendor-ID</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Product code</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Revision number</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Serial number</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Identity</h4>
<div>
max sub-index
<br/>
<br/>
Vendor-ID
<br/>
bit 0-31: Assigned by CiA
<br/>
<br/>
Product code
<br/>
bit 0-31: Manufacturer specific
<br/>
<br/>
Revision number
<br/>
bit 0-15: Minor revision num. (CANopen behavior has not changed)
<br/>
bit 16-31: Major revision number (CANopen behavior has changed)
<br/>
<br/>
Serial number
<br/>
bit 0-31: Manufacturer specific
</div>
</div>
</li>
<li id="IO Example_1019">
<h3>1019 - Synchronous counter overflow value</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Synchronous counter overflow value</h4>
<div>
If value is zero, then SYNC message is transmitted with data length 0.
<br/>
<br/>
If Value is from 2 to 240, then SYNC message has one data byte, which contains the counter.
<br/>
<br/>
Other values are reserved.
</div>
</div>
</li>
<li id="IO Example_1029">
<h3>1029 - Error behavior</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>7</td>
<td>ROM</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>6</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Communication</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Communication other</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Communication passive</td>
<td>0x01</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Generic</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Device profile</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Manufacturer specific</td>
<td>0x00</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Error behavior</h4>
<div>
If error is detected and operating NMT state is NMT operational, this object defines behavior of the device.
<br/>
<br/>
Value definition for all subindexes:
<br/>
0x00 - if operational, switch to NMT pre-operational
<br/>
0x01 - do nothing
<br/>
0x02 - switch to NMT stopped
<br/>
<br/>
01 - Communication error - bus off or Heartbeat consumer error.
<br/>
02 - Communication other error (critical errors - see 'Error status bits') except CAN bus passive but including bus off or Heartbeat consumer.
<br/>
03 - Communication passive - any communication error including CAN bus passive.
<br/>
04 - Generic error (critical errors - see 'Error status bits').
<br/>
05 - Device profile error - bit 5 in error register is set.
<br/>
06 - Manufacturer specific error - bit 7 in error register is set.
</div>
</div>
</li>
<li id="IO Example_1200">
<h3>1200 - SDO server parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>3</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>2</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID client to server</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x600</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>COB-ID server to client</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x580</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: SDO server parameter</h4>
<div>
0x1200 SDO server parameter
<br/>
max sub-index
<br/>
<br/>
COB-ID client to server (Receive SDO)
<br/>
bit 0-31: 0x00000600 + Node ID
<br/>
<br/>
COB-ID server to client (Transmit SDO)
<br/>
bit 0-31: 0x00000580 + Node ID
<br/>
<br/>
<br/>
<br/>
0x1201 - 0x127F SDO server parameter
<br/>
max sub-index
<br/>
<br/>
COB-ID client to server (Receive SDO)
<br/>
bit 0-10: COB_ID
<br/>
bit 11-30: Set to 0
<br/>
bit 31*: 0(1) - node uses (does NOT use) SDO
<br/>
<br/>
COB-ID server to client (Transmit SDO)
<br/>
bit 0-31: same as previous
<br/>
<br/>
Node-ID of the SDO client
<br/>
bit 0-7: Node ID (optional)
</div>
</div>
</li>
<li id="IO Example_1400">
<h3>1400 - RPDO communication parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>3</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>2</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID used by RPDO</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x200</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>transmission type</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>255</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: RPDO communication parameter</h4>
<div>
0x1400 - 0x15FF RPDO communication parameter
<br/>
max sub-index
<br/>
<br/>
COB-ID
<br/>
bit 0-10: COB-ID for PDO, to change it bit 31 must be set
<br/>
bit 11-29: set to 0 for 11 bit COB-ID
<br/>
bit 30: 0(1) - rtr are allowed (are NOT allowed) for PDO
<br/>
bit 31: 0(1) - node uses (does NOT use) PDO
<br/>
<br/>
Transmission type
<br/>
value = 0-240: reciving is synchronous, process after next reception of SYNC object
<br/>
value = 241-253: not used
<br/>
value = 254: manufacturer specific
<br/>
value = 255: asynchronous
</div>
</div>
</li>
<li id="IO Example_1401">
<h3>1401 - RPDO communication parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>3</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>2</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID used by RPDO</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x300</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>transmission type</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>254</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: RPDO communication parameter</h4>
<div>0x1400 - 0x15FF RPDO communication parameter (see description for 0x1400)</div>
</div>
</li>
<li id="IO Example_1402">
<h3>1402 - RPDO communication parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>3</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>2</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID used by RPDO</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x400</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>transmission type</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>254</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: RPDO communication parameter</h4>
<div>0x1400 - 0x15FF RPDO communication parameter (see description for 0x1400)</div>
</div>
</li>
<li id="IO Example_1403">
<h3>1403 - RPDO communication parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>3</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>2</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID used by RPDO</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x500</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>transmission type</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>254</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: RPDO communication parameter</h4>
<div>0x1400 - 0x15FF RPDO communication parameter (see description for 0x1400)</div>
</div>
</li>
<li id="IO Example_1600">
<h3>1600 - RPDO mapping parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of mapped objects</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>2</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>mapped object 1</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x62000108</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>mapped object 2</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x62000208</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>mapped object 3</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>mapped object 4</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>mapped object 5</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>mapped object 6</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>mapped object 7</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>mapped object 8</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: RPDO mapping parameter</h4>
<div>
0x1600 - 0x17FF RPDO mapping parameter (To change mapping, 'Number of mapped objects' must be set to 0)
<br/>
Number of mapped objects
<br/>
<br/>
mapped object (subindex 1...8)
<br/>
bit 0-7: data length in bits
<br/>
bit 8-15: subindex from OD
<br/>
bit 16-31: index from OD
</div>
</div>
</li>
<li id="IO Example_1601">
<h3>1601 - RPDO mapping parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of mapped objects</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>mapped object 1</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>mapped object 2</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>mapped object 3</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>mapped object 4</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>mapped object 5</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>mapped object 6</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>mapped object 7</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>mapped object 8</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: RPDO mapping parameter</h4>
<div>0x1600 - 0x17FF RPDO mapping parameter (see description for 0x1600)</div>
</div>
</li>
<li id="IO Example_1602">
<h3>1602 - RPDO mapping parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of mapped objects</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>mapped object 1</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>mapped object 2</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>mapped object 3</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>mapped object 4</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>mapped object 5</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>mapped object 6</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>mapped object 7</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>mapped object 8</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: RPDO mapping parameter</h4>
<div>0x1600 - 0x17FF RPDO mapping parameter (see description for 0x1600)</div>
</div>
</li>
<li id="IO Example_1603">
<h3>1603 - RPDO mapping parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of mapped objects</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>mapped object 1</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>mapped object 2</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>mapped object 3</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>mapped object 4</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>mapped object 5</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>mapped object 6</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>mapped object 7</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>mapped object 8</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: RPDO mapping parameter</h4>
<div>0x1600 - 0x17FF RPDO mapping parameter (see description for 0x1600)</div>
</div>
</li>
<li id="IO Example_1800">
<h3>1800 - TPDO communication parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>7</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>6</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID used by TPDO</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x180</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>transmission type</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>255</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>inhibit time</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>100</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>compatibility entry</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>event timer</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>SYNC start value</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: TPDO communication parameter</h4>
<div>
0x1800 - 0x19FF TPDO communication parameter
<br/>
max sub-index
<br/>
<br/>
COB-ID
<br/>
bit 0-10: COB-ID for PDO, to change it bit 31 must be set
<br/>
bit 11-29: set to 0 for 11 bit COB-ID
<br/>
bit 30: 0(1) - rtr are allowed (are NOT allowed) for PDO
<br/>
bit 31: 0(1) - node uses (does NOT use) PDO
<br/>
<br/>
Transmission type
<br/>
value = 0: transmiting is synchronous, specification in device profile
<br/>
value = 1-240: transmiting is synchronous after every N-th SYNC object
<br/>
value = 241-251: not used
<br/>
value = 252-253: Transmited only on reception of Remote Transmission Request
<br/>
value = 254: manufacturer specific
<br/>
value = 255: asinchronous, specification in device profile
<br/>
<br/>
inhibit time
<br/>
bit 0-15: Minimum time between transmissions of the PDO in 100µs. Zero disables functionality.
<br/>
<br/>
compatibility entry
<br/>
bit 0-7: Not used.
<br/>
<br/>
event timer
<br/>
bit 0-15: Time between periodic transmissions of the PDO in ms. Zero disables functionality.
<br/>
<br/>
SYNC start value
<br/>
value = 0: Counter of the SYNC message shall not be processed.
<br/>
value = 1-240: The SYNC message with the counter value equal to this value shall be regarded as the first received SYNC message.
</div>
</div>
</li>
<li id="IO Example_1801">
<h3>1801 - TPDO communication parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>7</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>6</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID used by TPDO</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x280</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>transmission type</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>254</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>inhibit time</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>compatibility entry</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>event timer</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>SYNC start value</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: TPDO communication parameter</h4>
<div>0x1800 - 0x19FF TPDO communication parameter (see description for 0x1800)</div>
</div>
</li>
<li id="IO Example_1802">
<h3>1802 - TPDO communication parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>7</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>6</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID used by TPDO</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x380</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>transmission type</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>254</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>inhibit time</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>compatibility entry</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>event timer</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>SYNC start value</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: TPDO communication parameter</h4>
<div>0x1800 - 0x19FF TPDO communication parameter (see description for 0x1800)</div>
</div>
</li>
<li id="IO Example_1803">
<h3>1803 - TPDO communication parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>7</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>6</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>COB-ID used by TPDO</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>$NODEID+0x480</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>transmission type</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>254</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>inhibit time</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>compatibility entry</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>event timer</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>SYNC start value</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: TPDO communication parameter</h4>
<div>0x1800 - 0x19FF TPDO communication parameter (see description for 0x1800)</div>
</div>
</li>
<li id="IO Example_1A00">
<h3>1A00 - TPDO mapping parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of mapped objects</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>2</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>mapped object 1</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x60000108</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>mapped object 2</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x60000208</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>mapped object 3</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>mapped object 4</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>mapped object 5</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>mapped object 6</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>mapped object 7</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>mapped object 8</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: TPDO mapping parameter</h4>
<div>
0x1A00 - 0x1BFF TPDO mapping parameter. (To change mapping, 'Number of mapped objects' must be set to 0).
<br/>
Number of mapped objects
<br/>
<br/>
mapped object (subindex 1...8)
<br/>
bit 0-7: data length in bits
<br/>
bit 8-15: subindex from OD
<br/>
bit 16-31: index from OD
</div>
</div>
</li>
<li id="IO Example_1A01">
<h3>1A01 - TPDO mapping parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of mapped objects</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>mapped object 1</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>mapped object 2</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>mapped object 3</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>mapped object 4</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>mapped object 5</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>mapped object 6</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>mapped object 7</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>mapped object 8</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: TPDO mapping parameter</h4>
<div>0x1A00 - 0x1BFF TPDO mapping parameter (see description for 0x1A00)</div>
</div>
</li>
<li id="IO Example_1A02">
<h3>1A02 - TPDO mapping parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of mapped objects</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>mapped object 1</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>mapped object 2</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>mapped object 3</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>mapped object 4</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>mapped object 5</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>mapped object 6</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>mapped object 7</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>mapped object 8</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: TPDO mapping parameter</h4>
<div>0x1A00 - 0x1BFF TPDO mapping parameter (see description for 0x1A00)</div>
</div>
</li>
<li id="IO Example_1A03">
<h3>1A03 - TPDO mapping parameter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>Number of mapped objects</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>mapped object 1</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>mapped object 2</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>mapped object 3</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>mapped object 4</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>mapped object 5</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>mapped object 6</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>mapped object 7</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>mapped object 8</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: TPDO mapping parameter</h4>
<div>0x1A00 - 0x1BFF TPDO mapping parameter (see description for 0x1A00)</div>
</div>
</li>
<li id="IO Example_1F80">
<h3>1F80 - NMT startup</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: NMT Startup</h4>
<div>
Only bit 2 is implemented.
<br/>
<br/>
bit 0: 0(1) - device is not (is) NMT master
<br/>
bit 1: 0(1) - if bit3=0, start explicitly assigned (all) nodes
<br/>
bit 2: 0(1) - automaticaly enter (DO NOT automaticaly enter) the operational state on bootup
<br/>
bit 3: 0(1) - NMT master may (may not) start nodes automatically
<br/>
bit 4: 0(1) - if monitored node fails heartbeat handle that (all) node(s)
<br/>
bit 5: 0(1) - flying master process not (yes) supported
<br/>
bit 6: 0(1) - use bit 4 (ignore bit 4, stop all nodes)
<br/>
bit 7-31: reserved, set to 0
</div>
</div>
</li>
<li id="IO Example_2100">
<h3>2100 - Error status bits</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>RAM</td>
<td>OCTET_STRING</td>
<td>ro</td>
<td>optional</td>
<td>no</td>
<td>00 00 00 00 00 00 00 00 00 00</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Error Status Bits</h4>
<div>
Error Status Bits indicates error conditions inside stack or inside application. Specific bit is set by CO_errorReport() function, when error occurs in program. It can be reset by CO_errorReset() function, if error is solved. Emergency message is sent on each change of any Error Status Bit. If critical bits are set, node will not be able to stay in operational state. For more information see file CO_Emergency.h.
<br/>
<br/>
Default error status bits are:
<br/>
<br/>
Communication or protocol errors from driver (informative):
<br/>
00 - ERROR_NO_ERROR - Error Reset or No Error.
<br/>
01 - ERROR_CAN_BUS_WARNING - CAN bus warning.
<br/>
02 - ERROR_RXMSG_WRONG_LENGTH - Wrong data length of received CAN message.
<br/>
03 - ERROR_RXMSG_OVERFLOW - Previous received CAN message wasn't processed yet.
<br/>
04 - ERROR_RPDO_WRONG_LENGTH - Wrong data length of received PDO.
<br/>
05 - ERROR_RPDO_OVERFLOW - Previous received PDO wasn't processed yet.
<br/>
06 - ERROR_CAN_RX_BUS_PASSIVE - CAN receive bus is passive.
<br/>
07 - ERROR_CAN_TX_BUS_PASSIVE - CAN transmit bus is passive.
<br/>
<br/>
Communication or protocol errors from driver (critical):
<br/>
08 - ERROR_08_reserved - (reserved)
<br/>
09 - ERROR_09_reserved - (reserved)
<br/>
0A - ERROR_CAN_TX_BUS_OFF - CAN transmit bus is off.
<br/>
0B - ERROR_CAN_RXB_OVERFLOW - CAN module receive buffer has overflowed.
<br/>
0C - ERROR_CAN_TX_OVERFLOW - CAN transmit buffer has overflowed.
<br/>
0D - ERROR_TPDO_OUTSIDE_WINDOW - TPDO is outside SYNC window.
<br/>
0E - ERROR_CAN_CONFIGURATION_FAILED - Configuration of CAN module CAN failed (Rx or Tx).
<br/>
0F - ERROR_0F_reserved - (reserved)
<br/>
<br/>
Communication or protocol errors (informative):
<br/>
10 - ERROR_NMT_WRONG_COMMAND - Wrong NMT command received.
<br/>
11 - ERROR_SYNC_EARLY - SYNC message was too early.
<br/>
12 - ERROR_12_reserved - (reserved)
<br/>
13 - ERROR_13_reserved - (reserved)
<br/>
14 - ERROR_14_reserved - (reserved)
<br/>
15 - ERROR_15_reserved - (reserved)
<br/>
16 - ERROR_16_reserved - (reserved)
<br/>
17 - ERROR_17_reserved - (reserved)
<br/>
<br/>
Communication or protocol errors (critical):
<br/>
18 - ERROR_SYNC_TIME_OUT - SYNC message timeout.
<br/>
19 - ERROR_SYNC_LENGTH - Unexpected SYNC data length
<br/>
1A - ERROR_PDO_WRONG_MAPPING - Error with PDO mapping.
<br/>
1B - ERROR_HEARTBEAT_CONSUMER - Heartbeat consumer timeout.
<br/>
1C - ERROR_HEARTBEAT_CONSUMER_REMOTE_RESET - Heartbeat consumer detected remote node reset.
<br/>
1D - ERROR_1D_reserved - (reserved)
<br/>
1E - ERROR_1E_reserved - (reserved)
<br/>
1F - ERROR_1F_reserved - (reserved)
<br/>
<br/>
Generic errors (informative):
<br/>
20 - ERROR_20_reserved - (reserved)
<br/>
21 - ERROR_21_reserved - (reserved)
<br/>
22 - ERROR_22_reserved - (reserved)
<br/>
23 - ERROR_23_reserved - (reserved)
<br/>
24 - ERROR_24_reserved - (reserved)
<br/>
25 - ERROR_25_reserved - (reserved)
<br/>
26 - ERROR_26_reserved - (reserved)
<br/>
27 - ERROR_27_reserved - (reserved)
<br/>
<br/>
Generic errors (critical):
<br/>
28 - ERROR_WRONG_ERROR_REPORT - Wrong parameters to &lt;CO_errorReport()&gt; function.
<br/>
29 - ERROR_ISR_TIMER_OVERFLOW - Timer task has overflowed.
<br/>
2A - ERROR_MEMORY_ALLOCATION_ERROR - Unable to allocate memory for objects.
<br/>
2B - ERROR_GENERIC_ERROR - Generic error, test usage.
<br/>
2C - ERROR_MAIN_TIMER_OVERFLOW - Mainline function exceeded maximum execution time.
<br/>
2D - ERROR_INTERNAL_STATE_APPL - Error in application software internal state.
<br/>
2E - ERROR_2E_reserved - (reserved)
<br/>
2F - ERROR_2F_reserved - (reserved)
<br/>
<br/>
Manufacturer specific errors:
<br/>
Manufacturer may define its own constants up to index 0xFF. Of course, he must then define large enough buffer for error status bits (up to 32 bytes).
</div>
</div>
</li>
<li id="IO Example_2101">
<h3>2101 - CAN node ID</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x30</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: CAN Node ID</h4>
<div>
CAN Node ID is CANopenNode specific variable. It sets node-ID for device on CANopen network. Node-ID can be set on other ways too, for example with DIP switches. More advanced solution is use of LSS.
<br/>
<br/>
Valid values are from 1 to 127:
</div>
</div>
</li>
<li id="IO Example_2102">
<h3>2102 - CAN bit rate</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>ROM</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>250</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: CAN Bit-Rate</h4>
<div>
CAN Bit-Rate is CANopenNode specific variable. It sets CAN Bit-Rate for device on CANopen network.
<br/>
<br/>
Valid values are in [kbps]:
<br/>
10, 20, 50, 125, 250, 500, 800, 1000
</div>
</div>
</li>
<li id="IO Example_2103">
<h3>2103 - SYNC counter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>RAM</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: SYNC Counter</h4>
<div>SYNC Counter is incremented each time, SYNC message is received or transmitted.</div>
</div>
</li>
<li id="IO Example_2104">
<h3>2104 - SYNC time</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>RAM</td>
<td>UNSIGNED16</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: SYNC Time</h4>
<div>SYNC Time is incremented each timer period and reset to zero, each time SYNC is received or transmitted.</div>
</div>
</li>
<li id="IO Example_2106">
<h3>2106 - Power-on counter</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>EEPROM</td>
<td>UNSIGNED32</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Power on Counter</h4>
<div>Power on Counter counts total microcontroller resets in it's lifetime. Variable is an example of EEPROM usage.</div>
</div>
</li>
<li id="IO Example_2107">
<h3>2107 - Performance</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>6</td>
<td>RAM</td>
<td>UNSIGNED16</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>5</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>cycles per second</td>
<td>1000</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>timer cycle time</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>timer cycle max time</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>main cycle time</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>main cycle max time</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Performance</h4>
<div>
Internal performance of the microcontroller.
<br/>
<br/>
cycles per second - cycle frequency of internal timer.
<br/>
timer cycle time - current timer cycle time in percent of timer period.
<br/>
timer cycle max time - maximum timer cycle time in percent of timer period.
<br/>
main cycle time - current mainline function cycle time in percent of timer period.
<br/>
main cycle max time - maximum mainline function cycle time in percent of timer period.
</div>
</div>
</li>
<li id="IO Example_2108">
<h3>2108 - Temperature</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>2</td>
<td>RAM</td>
<td>INTEGER16</td>
<td>ro</td>
<td>optional</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>1</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>main PCB</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Temperature</h4>
<div>Current temperature on device in 0,1°C.</div>
</div>
</li>
<li id="IO Example_2109">
<h3>2109 - Voltage</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>2</td>
<td>RAM</td>
<td>INTEGER16</td>
<td>ro</td>
<td>optional</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>1</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>main PCB supply</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Voltage</h4>
<div>Current voltage on device in 0,1V.</div>
</div>
</li>
<li id="IO Example_2110">
<h3>2110 - Variable Int32</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>17</td>
<td>RAM</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>yes</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>16</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>09</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0A</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0B</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0C</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0D</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0E</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0F</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>10</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Variable Integer 32bit</h4>
<div>Vartiable is free to use by application.</div>
</div>
</li>
<li id="IO Example_2111">
<h3>2111 - Variable ROM Int32</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>17</td>
<td>ROM</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>yes</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>16</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>int32</td>
<td>1</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>09</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0A</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0B</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0C</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0D</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0E</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0F</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>10</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Variable ROM Integer 32bit</h4>
<div>Vartiable is free to use by application.</div>
</div>
</li>
<li id="IO Example_2112">
<h3>2112 - Variable NV Int32</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>17</td>
<td>EEPROM</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>yes</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>16</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>int32</td>
<td>1</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>09</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0A</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0B</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0C</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0D</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0E</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0F</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>10</td>
<td>int32</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Variable nonvolatile Integer 32bit</h4>
<div>Vartiable is free to use by application. Variable is stored to internal baterry powered SRAM.</div>
</div>
</li>
<li id="IO Example_2120">
<h3>2120 - test var</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>6</td>
<td>RAM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>5</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>I64</td>
<td>INTEGER64</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0x1234567890ABCDEFLL</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>U64</td>
<td>UNSIGNED64</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0x234567890ABCDEF1LL</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>R32</td>
<td>REAL32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>12.345</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>R64</td>
<td>REAL64</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>456.789</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>domain</td>
<td>DOMAIN</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
</li>
<li id="IO Example_2130">
<h3>2130 - Time</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>4</td>
<td>RAM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>3</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>String</td>
<td>VISIBLE_STRING</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>-</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Epoch time base ms</td>
<td>UNSIGNED64</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Epoch time offset ms</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Time</h4>
<div>
Variable displays current time.
<br/>
<br/>
String - returns current time as string.
<br/>
<br/>
Epoch time ms - Milliseconds since unix epoch (1.1.1970, 00:00:00, UTC). It is calculated as base + offset. Base is calculated on startup of program and offset increments continuously since then. 'Epoch time offset ms' overflows each 49,7 days. 'Epoch time base ms' is recalculated in case of overflow or in case of write to 'Epoch time offset ms'. It is rounded to one minute.
</div>
</div>
</li>
<li id="IO Example_2301">
<h3>2301 - Trace config</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>8</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Size</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>100</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Axis no</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>1</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Name</td>
<td>VISIBLE_STRING</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>Trace1</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Color</td>
<td>VISIBLE_STRING</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>red</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Map</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x60000108</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Format</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>1</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>Trigger</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>Threshold</td>
<td>INTEGER32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Trace config</h4>
<div>
Trace is used for recording variables.
<br/>
<br/>
See also Trace.
<br/>
<br/>
Size - Maximum number of trace records in circular buffer. By reading it returns actual buffer size (If zero, malloc may had been failed at startup). By writing it sets the size, which will be valid after next reboot. (It is necessary to store parameters before (0x1010).)
<br/>
<br/>
Axis no - If value is different than zero, trace is enabled. Value is informative and describes group of traces (Multiple traces can belong to single axis.). By reading it returns zero if trace is disabled or if it is not configured properly. When trace is enabled, internal buffer is cleared.
<br/>
<br/>
Name - name of the trace as a string (informative).
<br/>
<br/>
Color - color of the trace as a string (informative).
<br/>
<br/>
Map - Map to variable in object dictionary, similar as PDO map(two bytes of index, one byte of subindex and 1 byte of bitlength. It's value will be copied to trace.value in case index and subindex are correct. If map index and subindex is zero, RPDO may be mapped to trace.value, for example. Valid values of map.bitlength is 08, 10 or 20 or 00, which indicates 8-bit, 16bit, 32-bit or default-size variable. Trace must be disabled, if mapping is written (Axis no set to 0).
<br/>
<br/>
Format - If first bit is zero, then value is used as signed integer otherwise as unsigned integer. If format is 0 or 1, text points are generated for time and value: "123;321\n140;345\n..." If format is 2 or 3, binary data is generated: 4-byte timestamp and 4-byte value. If format is 4 or 5, SVG path is generated: "M123,321H140V345...".
<br/>
<br/>
Trigger - 0=disabled, 1=rising edge, 2=falling edge, 3=both edges.
<br/>
<br/>
Threshold - If integer value passes threshold (based on trigger setting), time is recorded into 'trigger time'.
</div>
</div>
</li>
<li id="IO Example_2302">
<h3>2302 - Trace config</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>9</td>
<td>ROM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>8</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Size</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Axis no</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Name</td>
<td>VISIBLE_STRING</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>Trace2</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Color</td>
<td>VISIBLE_STRING</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>green</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Map</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0x00000000</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Format</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>Trigger</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>Threshold</td>
<td>INTEGER32</td>
<td>rw</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
</li>
<li id="IO Example_2400">
<h3>2400 - Trace enable</h3>
<table>
<tr>
<th>Object Type</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>Var</td>
<td>RAM</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Trace enable</h4>
<div>This object controls, how many trace objects (beginning from index 0x2401) are enabled. If zero, all traces are disabled.</div>
</div>
</li>
<li id="IO Example_2401">
<h3>2401 - Trace</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>7</td>
<td>RAM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>6</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Size</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Value</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Min</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Max</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Plot</td>
<td>DOMAIN</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Trigger time</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Trace</h4>
<div>
Trace is used for recording variables.
<br/>
<br/>
See also Trace config.
<br/>
<br/>
Size - Number of current records in buffer.
<br/>
<br/>
Value - Latest value. If traceConfig.map (index and subindex) is valid, then mapped variable will be copied here.
<br/>
<br/>
Min, Max - Minimum and maximum value.
<br/>
<br/>
Plot - SVG path generated from the values from circular buffer. For time axis is used Time-&gt;'Epoch time offset ms'. When Plot is read, internal buffer is emptied.
<br/>
<br/>
Trigger time - If integer value passes 'TraceConfig-&gt;threshold', then time is recorded into this variable.
</div>
</div>
</li>
<li id="IO Example_2402">
<h3>2402 - Trace</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
</tr>
<tr>
<td>Record</td>
<td>7</td>
<td>RAM</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>6</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Size</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Value</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Min</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Max</td>
<td>INTEGER32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Plot</td>
<td>DOMAIN</td>
<td>ro</td>
<td>no</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Trigger time</td>
<td>UNSIGNED32</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
<td>0</td>
<td/>
</tr>
</table>
</li>
<li id="IO Example_6000">
<h3>6000 - Read input 8 bit</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>9</td>
<td>RAM</td>
<td>UNSIGNED8</td>
<td>ro</td>
<td>optional</td>
<td>yes</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>8</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Input</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Input</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Input</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Input</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Input</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Input</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>Input</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>Input</td>
<td>0x00</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Read input 8 bit</h4>
<div>Digital inputs from hardware.</div>
</div>
</li>
<li id="IO Example_6200">
<h3>6200 - Write output 8 bit</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>9</td>
<td>RAM</td>
<td>UNSIGNED8</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>8</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Output</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Output</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Output</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Output</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Output</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Output</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>Output</td>
<td>0x00</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>Output</td>
<td>0x00</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Write output 8 bit</h4>
<div>Digital outputs on hardware.</div>
</div>
</li>
<li id="IO Example_6401">
<h3>6401 - Read analogue input 16 bit</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>13</td>
<td>RAM</td>
<td>INTEGER16</td>
<td>ro</td>
<td>optional</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>12</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>09</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0A</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0B</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>0C</td>
<td>Input</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Read analogue input 16 bit</h4>
<div>Analogue inputs from hardware. The integer value is left adjusted.</div>
</div>
</li>
<li id="IO Example_6411">
<h3>6411 - Write analogue output 16 bit</h3>
<table>
<tr>
<th>Object Type</th>
<th>Sub Number</th>
<th>Memory Type</th>
<th>Data Type</th>
<th>Access Type</th>
<th>PDO Mapping</th>
<th>TPDO detects COS</th>
</tr>
<tr>
<td>Array</td>
<td>9</td>
<td>RAM</td>
<td>INTEGER16</td>
<td>rw</td>
<td>optional</td>
<td>no</td>
</tr>
</table>
<br/>
<table>
<tr>
<th>Subindex</th>
<th>Name</th>
<th>Default value</th>
<th>Actual value</th>
</tr>
<tr>
<td>00</td>
<td>max sub-index</td>
<td>8</td>
<td/>
</tr>
<tr>
<td>01</td>
<td>Output</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>02</td>
<td>Output</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>03</td>
<td>Output</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>04</td>
<td>Output</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>05</td>
<td>Output</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>06</td>
<td>Output</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>07</td>
<td>Output</td>
<td>0</td>
<td/>
</tr>
<tr>
<td>08</td>
<td>Output</td>
<td>0</td>
<td/>
</tr>
</table>
<div class="description lang_en">
<h4>en: Write analogue output 16 bit</h4>
<div>Analogue outputs on hardware. The integer value is left adjusted.</div>
</div>
</li>
</ul>
<input type="button" value="Display everything" onclick="toggleAll();"/>
<br/>
<footer>
<em>
Generated by
<a href="http://canopennode.sourceforge.net/">CANopenNode</a>
.
</em>
</footer>
</body></html>