<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<CLIP CATEGORY="Motor Control" FILE="Arduino-STM32/Arduino Motor Shield V2 with 4 DC motors.pdsclip" DESC="Motor Shield V2 with four DC motors" FAMILY="Arduino-STM32">
   <PERIPHERAL TYPE="PWM Servo Controller" ELEMENT="PWMC1">
      <INTERFACE OBJECT="PwmServoController">
        <CONFIG>
          <!-- JUMPERS DETERMINE I2C ADDRESS -->
          <PROPERTY NAME="STATE" ALIAS="JP1" ELEMENT="JP1" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP2" ELEMENT="JP2" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP3" ELEMENT="JP3" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP4" ELEMENT="JP4" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP5" ELEMENT="JP5" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP6" ELEMENT="JP6" TYPE="JUMPERSTATE"/>
        </CONFIG>
        <SETUP NAME="begin"/>
      </INTERFACE>
      <DRIVER FILE="PwmServoDriver/PwmServoDriver.xml"/>
   </PERIPHERAL>

  <!-- DC Motor 1 peripheral -->
  <PERIPHERAL TYPE="DC Motor 1" ELEMENT="DCM1">
    <INTERFACE OBJECT="DCMotorV2">
      <PORT NAME="I2C"/>
      <PROPERTY NAME="CHANNEL" ELEMENT="DCM1" TYPE="INTEGER"/>
      <CONFIG>
        <SETUP NAME="begin">
          <!-- JUMPERS DETERMINE I2C ADDRESS -->
          <PROPERTY NAME="STATE" ALIAS="JP1" ELEMENT="JP1" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP2" ELEMENT="JP2" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP3" ELEMENT="JP3" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP4" ELEMENT="JP4" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP5" ELEMENT="JP5" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP6" ELEMENT="JP6" TYPE="JUMPERSTATE"/>
        </SETUP>
      </CONFIG>
    </INTERFACE>

    <!-- Firmware Driver -->
    <DRIVER FILE="Motor_Shield_V2/DC Motor.xml"/>
  </PERIPHERAL>

  <!-- DC Motor 2 peripheral -->
  <PERIPHERAL TYPE="DC Motor 2" ELEMENT="DCM2">
    <INTERFACE OBJECT="DCMotorV2">
      <PORT NAME="I2C"/>
      <PROPERTY NAME="CHANNEL" ELEMENT="DCM2" TYPE="INTEGER"/>
      <CONFIG>
        <SETUP NAME="begin">
          <!-- JUMPERS DETERMINE I2C ADDRESS -->
          <PROPERTY NAME="STATE" ALIAS="JP1" ELEMENT="JP1" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP2" ELEMENT="JP2" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP3" ELEMENT="JP3" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP4" ELEMENT="JP4" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP5" ELEMENT="JP5" TYPE="JUMPERSTATE"/>
          <PROPERTY NAME="STATE" ALIAS="JP6" ELEMENT="JP6" TYPE="JUMPERSTATE"/>
        </SETUP>
      </CONFIG>
    </INTERFACE>

    <!-- Firmware Driver -->
    <DRIVER FILE="Motor_Shield_V2/DC Motor.xml"/>
  </PERIPHERAL>

  <!-- DC Motor 3 peripheral -->
   <PERIPHERAL TYPE="DC Motor 3" ELEMENT="DCM3">
      <INTERFACE OBJECT="DCMotorV2">
         <PORT NAME="I2C"/>
         <PROPERTY NAME="CHANNEL" ELEMENT="DCM3" TYPE="INTEGER"/>
         <CONFIG>
          <SETUP NAME="begin">
            <!-- JUMPERS DETERMINE I2C ADDRESS -->
            <PROPERTY NAME="STATE" ALIAS="JP1" ELEMENT="JP1" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP2" ELEMENT="JP2" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP3" ELEMENT="JP3" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP4" ELEMENT="JP4" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP5" ELEMENT="JP5" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP6" ELEMENT="JP6" TYPE="JUMPERSTATE"/>
          </SETUP>
        </CONFIG>
      </INTERFACE>

      <!-- Firmware Driver -->
      <DRIVER FILE="Motor_Shield_V2/DC Motor.xml"/>
   </PERIPHERAL>

   <!-- DC Motor 4 peripheral -->
   <PERIPHERAL TYPE="DC Motor 4" ELEMENT="DCM4">
      <INTERFACE OBJECT="DCMotorV2">
         <PORT NAME="I2C"/>
         <PROPERTY NAME="CHANNEL" ELEMENT="DCM4" TYPE="INTEGER"/>
         <CONFIG>
          <SETUP NAME="begin">
            <!-- JUMPERS DETERMINE I2C ADDRESS -->
            <PROPERTY NAME="STATE" ALIAS="JP1" ELEMENT="JP1" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP2" ELEMENT="JP2" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP3" ELEMENT="JP3" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP4" ELEMENT="JP4" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP5" ELEMENT="JP5" TYPE="JUMPERSTATE"/>
            <PROPERTY NAME="STATE" ALIAS="JP6" ELEMENT="JP6" TYPE="JUMPERSTATE"/>
          </SETUP>
        </CONFIG>
      </INTERFACE>

      <!-- Firmware Driver -->
      <DRIVER FILE="Motor_Shield_V2/DC Motor.xml"/>
   </PERIPHERAL>

  <!-- Servo Motor 1 peripheral -->
  <PERIPHERAL TYPE="Servo Motor 1" ELEMENT="SERVO1">
    <INTERFACE OBJECT="ServoMotorV2">
      <CONFIG>
        <SETUP NAME="begin">
          <PIN NAME="IO" TYPE="DIGITAL">
            <TERMINAL ELEMENT="IO10"/>
          </PIN>
          <PROPERTY NAME="PW_MIN" DESC="Pulse width for 0 degrees"  ELEMENT="SERVO2" TYPE="FLOAT" PLACES="6" MIN="0" MAX="0.01"/>
          <PROPERTY NAME="PW_MAX" DESC="Pulse width for 180 degrees" ELEMENT="SERVO2" TYPE="FLOAT" PLACES="6" MIN="0" MAX="0.01"/>
        </SETUP>
      </CONFIG>
    </INTERFACE>

    <!-- Firmware Driver -->
    <DRIVER FILE="Motor_Shield_V2/Servo Motor.xml"/>
  </PERIPHERAL>


  <!-- Servo Motor 2 peripheral -->
  <PERIPHERAL TYPE="Servo Motor 2" ELEMENT="SERVO2">
    <INTERFACE OBJECT="ServoMotorV2">
      <CONFIG>
        <SETUP NAME="begin">
          <PIN NAME="IO" TYPE="DIGITAL">
            <TERMINAL ELEMENT="IO9"/>
          </PIN>
          <PROPERTY NAME="PW_MIN" DESC="Pulse width for 0 degrees"  ELEMENT="SERVO2" TYPE="FLOAT" PLACES="6" MIN="0" MAX="0.01"/>
          <PROPERTY NAME="PW_MAX" DESC="Pulse width for 180 degrees" ELEMENT="SERVO2" TYPE="FLOAT" PLACES="6" MIN="0" MAX="0.01"/>
        </SETUP>
      </CONFIG>
    </INTERFACE>

    <!-- Firmware Driver -->
    <DRIVER FILE="Motor_Shield_V2/Servo Motor.xml"/>
  </PERIPHERAL>
</CLIP>


