<?xml version="1.0" encoding="utf-8"?>
<!--File is generated by CANopenEditor v4.2.3-0-gc1071ab+c1071ab3197f9bbf718123ec5bbabf449b2f7bab, URL: https://github.com/CANopenNode/CANopenEditor-->
<!--File includes additional custom properties for CANopenNode, CANopen protocol stack, URL: https://github.com/CANopenNode/CANopenNode-->
<ISO15745ProfileContainer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.canopen.org/xml/1.1">
  <ISO15745Profile>
    <ProfileHeader xmlns="">
      <ProfileIdentification>CANopen device profile</ProfileIdentification>
      <ProfileRevision>1.1</ProfileRevision>
      <ProfileName />
      <ProfileSource />
      <ProfileClassID>Device</ProfileClassID>
      <ISO15745Reference>
        <ISO15745Part>1</ISO15745Part>
        <ISO15745Edition>1</ISO15745Edition>
        <ProfileTechnology>CANopen</ProfileTechnology>
      </ISO15745Reference>
    </ProfileHeader>
    <ProfileBody xmlns:q1="http://www.canopen.org/xml/1.1" xsi:type="q1:ProfileBody_Device_CANopen" formatName="CANopen" formatVersion="1.0" fileName="canopen.xdd" fileCreator="" fileCreationDate="2001-01-01" fileCreationTime="00:00:00.0000000+02:00" fileModifiedBy="" fileModificationDate="2025-06-25" fileModificationTime="16:11:59.0792518+02:00" fileVersion="1.0" supportedLanguages="en" xmlns="">
      <q1:DeviceIdentity>
        <q1:vendorName>siliXcon</q1:vendorName>
        <q1:vendorID>0</q1:vendorID>
        <q1:productName>ESC3 Controller</q1:productName>
        <q1:productID>0</q1:productID>
        <q1:version versionType="SW">0</q1:version>
        <q1:version versionType="FW">0</q1:version>
        <q1:version versionType="HW">0</q1:version>
      </q1:DeviceIdentity>
      <q1:DeviceFunction>
        <q1:capabilities>
          <q1:characteristicsList>
            <q1:characteristic>
              <q1:characteristicName>
                <label lang="en">SW library</label>
              </q1:characteristicName>
              <q1:characteristicContent>
                <label lang="en">libedssharp</label>
              </q1:characteristicContent>
              <q1:characteristicContent>
                <label lang="en">CANopenNode</label>
              </q1:characteristicContent>
            </q1:characteristic>
          </q1:characteristicsList>
        </q1:capabilities>
      </q1:DeviceFunction>
      <q1:ApplicationProcess>
        <q1:dataTypeList>
          <q1:struct name="Identity Object" uniqueID="UID_REC_1018">
            <q1:varDeclaration name="Number of entries" uniqueID="UID_RECSUB_101800">
              <USINT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Vencod id" uniqueID="UID_RECSUB_101801">
              <UDINT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Product code" uniqueID="UID_RECSUB_101802">
              <UDINT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Revision number" uniqueID="UID_RECSUB_101803">
              <UDINT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Serial number" uniqueID="UID_RECSUB_101804">
              <UDINT />
            </q1:varDeclaration>
          </q1:struct>
          <q1:struct name="Command" uniqueID="UID_REC_2000">
            <q1:varDeclaration name="Freewheel mode" uniqueID="UID_RECSUB_200000">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Voltage mode" uniqueID="UID_RECSUB_200001">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Current mode" uniqueID="UID_RECSUB_200002">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Voltage + freewheel mode" uniqueID="UID_RECSUB_200003">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Voltage brake mode" uniqueID="UID_RECSUB_200004">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Stator current mode" uniqueID="UID_RECSUB_200005">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Torque mode" uniqueID="UID_RECSUB_200006">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Brake mode" uniqueID="UID_RECSUB_200008">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Brake torque mode" uniqueID="UID_RECSUB_200009">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Brake + freewheel mode" uniqueID="UID_RECSUB_20000A">
              <INT />
            </q1:varDeclaration>
            <q1:varDeclaration name="Brake short mode" uniqueID="UID_RECSUB_20000F">
              <INT />
            </q1:varDeclaration>
          </q1:struct>
          <q1:struct name="Device Info Strings" uniqueID="UID_REC_2050">
            <q1:varDeclaration name="Basename" uniqueID="UID_RECSUB_205000">
              <STRING />
            </q1:varDeclaration>
            <q1:varDeclaration name="HWID" uniqueID="UID_RECSUB_205001">
              <STRING />
            </q1:varDeclaration>
            <q1:varDeclaration name="SWID" uniqueID="UID_RECSUB_205002">
              <STRING />
            </q1:varDeclaration>
            <q1:varDeclaration name="Serial number" uniqueID="UID_RECSUB_205003">
              <STRING />
            </q1:varDeclaration>
            <q1:varDeclaration name="UUID" uniqueID="UID_RECSUB_205004">
              <STRING />
            </q1:varDeclaration>
            <q1:varDeclaration name="Class signature" uniqueID="UID_RECSUB_205005">
              <STRING />
            </q1:varDeclaration>
          </q1:struct>
          <q1:struct name="Battery Info" uniqueID="UID_REC_2100">
            <q1:varDeclaration name="Battery current" uniqueID="UID_RECSUB_210000">
              <REAL />
            </q1:varDeclaration>
            <q1:varDeclaration name="Battery voltage" uniqueID="UID_RECSUB_210001">
              <REAL />
            </q1:varDeclaration>
          </q1:struct>
          <q1:struct name="Motor Info" uniqueID="UID_REC_2104">
            <q1:varDeclaration name="Motor voltage q, phase-to-phase" uniqueID="UID_RECSUB_210400">
              <REAL />
            </q1:varDeclaration>
            <q1:varDeclaration name="Motor voltage d, phase-to-phase" uniqueID="UID_RECSUB_210401">
              <REAL />
            </q1:varDeclaration>
            <q1:varDeclaration name="Motor current q filtered" uniqueID="UID_RECSUB_210402">
              <REAL />
            </q1:varDeclaration>
            <q1:varDeclaration name="Motor current d filtered" uniqueID="UID_RECSUB_210403">
              <REAL />
            </q1:varDeclaration>
            <q1:varDeclaration name="Motor rpm" uniqueID="UID_RECSUB_210404">
              <REAL />
            </q1:varDeclaration>
            <q1:varDeclaration name="Motor odo" uniqueID="UID_RECSUB_210405">
              <DINT />
            </q1:varDeclaration>
          </q1:struct>
        </q1:dataTypeList>
        <q1:parameterList>
          <q1:parameter uniqueID="UID_OBJ_1000">
            <label lang="en">Device Type</label>
            <UDINT />
            <q1:defaultValue value="0" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_OBJ_1001">
            <description lang="en">Non-zero means error.</description>
            <USINT />
            <q1:defaultValue value="0" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_OBJ_1017">
            <label lang="en">Producer Heartbeat Time</label>
            <UINT />
            <q1:defaultValue value="0" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_OBJ_1018">
            <label lang="en">Identity Object</label>
            <q1:dataTypeIDRef uniqueIDRef="UID_REC_1018" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_101800">
            <label lang="en">Number of entries</label>
            <USINT />
            <q1:defaultValue value="0x04" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_101801">
            <label lang="en">Vencod id</label>
            <UDINT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_101802">
            <label lang="en">Product code</label>
            <UDINT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_101803">
            <label lang="en">Revision number</label>
            <UDINT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_101804">
            <label lang="en">Serial number</label>
            <UDINT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_OBJ_2000">
            <description lang="en">More info about driver modes: 

https://docs.silixcon.com/docs/fw/modules/esc/driver/command/cmd
https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

There is timeout 200ms on this message. Recommended sending period is min 60ms.</description>
            <q1:dataTypeIDRef uniqueIDRef="UID_REC_2000" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200000" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

Motor freewheels, preferably by disconnecting from the drive. A current can be present due to automatic field weakening, but, the torque is never generated. Motor neither accelerates, nor brakes. The command level is ignored.</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200001" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

By setting the specified voltage, a stable speed of the shaft is usually achieved. The torque (and required current) is determined by the load. Torque (current) can be only limited (not controlled) by the user. Motor can accelerate and brake.</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200002" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

	By setting the specified current, a stable torque of the motor is usually achieved. The speed is determined by the load and could be only limited (not controlled). Motor can accelerate and brake.</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200003" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

By setting the specified voltage, a stable speed of the motor is usually achieved. The torque (and required current) is determined by the load. Torque (current) can be only limited (not controlled) by the user. Motor can accelerate but can not brake, unless the sign of the required voltage is changed.</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200004" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

This mode is the inversion of the mode 3. The motor freewheels from zero RPM until it reaches the specified voltage. After that, currents starts to flow into the battery and motor starts to brake. Motor can not a accelerate in this mode, only brake.</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200005" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

Similar to mode 2, but the total amplitude of stator current is demanded (not only the Qcomponent as if mode 2). (in BLDC, this mode reduces to mode 2)</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200006" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

	This mode is similar to mode 2, but the driver attempts to control the real torque (with regards to variable flux with d-axis control). (in BLDC, this mode reduces to mode 2)</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200008" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

Similar to mode 8, but real torque is calculated from motor parameters. Real torque (not current) is regulated as in mode 6. (in BLDC, this mode reduces to mode 8)</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_200009" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

Similar to mode 8, but real torque is calculated from motor parameters. Real torque (not current) is regulated as in mode 6. (in BLDC, this mode reduces to mode 8)</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_20000A" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

Unidirectional brake with constant torque. For one direction is same as mode 8, for other direction, the motor freewheels.</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_20000F" access="write">
            <description lang="en">https://docs.silixcon.com/docs/fw/modules/esc/driver/command/driver_mode

Short circuit brake, limited by the IPEAK current only. Brake torque is proportional to motor speed. The higher speed, the higher brake torque. The motor in this mode never accelerates. The command level, imult and umult is ignored.</description>
            <INT />
          </q1:parameter>
          <q1:parameter uniqueID="UID_OBJ_2050">
            <label lang="en">Device Info Strings</label>
            <q1:dataTypeIDRef uniqueIDRef="UID_REC_2050" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_205000">
            <label lang="en">Basename</label>
            <STRING />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_205001">
            <label lang="en">HWID</label>
            <STRING />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_205002">
            <label lang="en">SWID</label>
            <STRING />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_205003">
            <label lang="en">Serial number</label>
            <STRING />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_205004">
            <label lang="en">UUID</label>
            <STRING />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_205005">
            <label lang="en">Class signature</label>
            <STRING />
          </q1:parameter>
          <q1:parameter uniqueID="UID_OBJ_2100">
            <description lang="en">Description battery</description>
            <q1:dataTypeIDRef uniqueIDRef="UID_REC_2100" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_210000">
            <description lang="en">/driver/supply/currentf</description>
            <REAL />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_210001">
            <description lang="en">/driver/supply/voltage</description>
            <REAL />
          </q1:parameter>
          <q1:parameter uniqueID="UID_OBJ_2104">
            <label lang="en">Motor Info</label>
            <q1:dataTypeIDRef uniqueIDRef="UID_REC_2104" />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_210400">
            <description lang="en">sqrt(3) x /driver/motor/voltageq (phase-to-phase)</description>
            <REAL />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_210401">
            <description lang="en">sqrt(3) x /driver/motor/voltaged (phase-to-phase)</description>
            <REAL />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_210402">
            <description lang="en">/driver/motor/currentqf</description>
            <REAL />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_210403">
            <description lang="en">/driver/motor/currentdf</description>
            <REAL />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_210404">
            <description lang="en">/driver/motor/rpmf</description>
            <REAL />
          </q1:parameter>
          <q1:parameter uniqueID="UID_SUB_210405">
            <description lang="en">/driver/motor/odo</description>
            <DINT />
          </q1:parameter>
        </q1:parameterList>
      </q1:ApplicationProcess>
    </ProfileBody>
  </ISO15745Profile>
  <ISO15745Profile>
    <ProfileHeader xmlns="">
      <ProfileIdentification>CANopen communication network profile</ProfileIdentification>
      <ProfileRevision>1.1</ProfileRevision>
      <ProfileName />
      <ProfileSource />
      <ProfileClassID>CommunicationNetwork</ProfileClassID>
      <ISO15745Reference>
        <ISO15745Part>1</ISO15745Part>
        <ISO15745Edition>1</ISO15745Edition>
        <ProfileTechnology>CANopen</ProfileTechnology>
      </ISO15745Reference>
    </ProfileHeader>
    <ProfileBody xmlns:q2="http://www.canopen.org/xml/1.1" xsi:type="q2:ProfileBody_CommunicationNetwork_CANopen" formatName="CANopen" formatVersion="1.0" fileName="canopen.xdd" fileCreator="" fileCreationDate="2001-01-01" fileCreationTime="00:00:00.0000000+02:00" fileModificationDate="2025-06-25" fileModificationTime="16:11:59.0792518+02:00" fileVersion="1.0" supportedLanguages="en" xmlns="">
      <ApplicationLayers>
        <q2:CANopenObjectList>
          <CANopenObject index="1000" name="Device Type" objectType="7" PDOmapping="no" uniqueIDRef="UID_OBJ_1000" />
          <CANopenObject index="1001" name="Error Register" objectType="7" PDOmapping="no" uniqueIDRef="UID_OBJ_1001" />
          <CANopenObject index="1017" name="Producer Heartbeat Time" objectType="7" PDOmapping="no" uniqueIDRef="UID_OBJ_1017" />
          <CANopenObject index="1018" name="Identity Object" objectType="9" uniqueIDRef="UID_OBJ_1018" subNumber="5">
            <CANopenSubObject subIndex="00" name="Number of entries" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_101800" />
            <CANopenSubObject subIndex="01" name="Vencod id" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_101801" />
            <CANopenSubObject subIndex="02" name="Product code" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_101802" />
            <CANopenSubObject subIndex="03" name="Revision number" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_101803" />
            <CANopenSubObject subIndex="04" name="Serial number" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_101804" />
          </CANopenObject>
          <CANopenObject index="2000" name="Command" objectType="9" uniqueIDRef="UID_OBJ_2000" subNumber="11">
            <CANopenSubObject subIndex="00" name="Freewheel mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200000" />
            <CANopenSubObject subIndex="01" name="Voltage mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200001" />
            <CANopenSubObject subIndex="02" name="Current mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200002" />
            <CANopenSubObject subIndex="03" name="Voltage + freewheel mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200003" />
            <CANopenSubObject subIndex="04" name="Voltage brake mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200004" />
            <CANopenSubObject subIndex="05" name="Stator current mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200005" />
            <CANopenSubObject subIndex="06" name="Torque mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200006" />
            <CANopenSubObject subIndex="08" name="Brake mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200008" />
            <CANopenSubObject subIndex="09" name="Brake torque mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_200009" />
            <CANopenSubObject subIndex="0A" name="Brake + freewheel mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_20000A" />
            <CANopenSubObject subIndex="0F" name="Brake short mode" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_20000F" />
          </CANopenObject>
          <CANopenObject index="2050" name="Device Info Strings" objectType="9" uniqueIDRef="UID_OBJ_2050" subNumber="6">
            <CANopenSubObject subIndex="00" name="Basename" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_205000" />
            <CANopenSubObject subIndex="01" name="HWID" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_205001" />
            <CANopenSubObject subIndex="02" name="SWID" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_205002" />
            <CANopenSubObject subIndex="03" name="Serial number" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_205003" />
            <CANopenSubObject subIndex="04" name="UUID" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_205004" />
            <CANopenSubObject subIndex="05" name="Class signature" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_205005" />
          </CANopenObject>
          <CANopenObject index="2100" name="Battery Info" objectType="9" uniqueIDRef="UID_OBJ_2100" subNumber="2">
            <CANopenSubObject subIndex="00" name="Battery current" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_210000" />
            <CANopenSubObject subIndex="01" name="Battery voltage" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_210001" />
          </CANopenObject>
          <CANopenObject index="2104" name="Motor Info" objectType="9" uniqueIDRef="UID_OBJ_2104" subNumber="6">
            <CANopenSubObject subIndex="00" name="Motor voltage q, phase-to-phase" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_210400" />
            <CANopenSubObject subIndex="01" name="Motor voltage d, phase-to-phase" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_210401" />
            <CANopenSubObject subIndex="02" name="Motor current q filtered" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_210402" />
            <CANopenSubObject subIndex="03" name="Motor current d filtered" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_210403" />
            <CANopenSubObject subIndex="04" name="Motor rpm" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_210404" />
            <CANopenSubObject subIndex="05" name="Motor odo" objectType="7" PDOmapping="no" uniqueIDRef="UID_SUB_210405" />
          </CANopenObject>
        </q2:CANopenObjectList>
        <dummyUsage>
          <dummy entry="Dummy0001=0" />
          <dummy entry="Dummy0002=0" />
          <dummy entry="Dummy0003=0" />
          <dummy entry="Dummy0004=0" />
          <dummy entry="Dummy0005=0" />
          <dummy entry="Dummy0006=0" />
          <dummy entry="Dummy0007=0" />
        </dummyUsage>
      </ApplicationLayers>
      <TransportLayers>
        <PhysicalLayer>
          <baudRate>
            <supportedBaudRate value="125 Kbps" />
            <supportedBaudRate value="250 Kbps" />
            <supportedBaudRate value="500 Kbps" />
            <supportedBaudRate value="1000 Kbps" />
          </baudRate>
        </PhysicalLayer>
      </TransportLayers>
      <NetworkManagement>
        <CANopenGeneralFeatures granularity="1" bootUpSlave="true" />
        <CANopenMasterFeatures />
      </NetworkManagement>
    </ProfileBody>
  </ISO15745Profile>
</ISO15745ProfileContainer>