Free shipping from € 74,95 NL (€ 99,95 BE / DE)

Ordered before 16:00 tomorrow at home

Express ordered before 11:30 am tonight at home*

14 days free return *

Logo Electronics For You

Arduino MKR Motor Shield

57.95 /47.89 excl. VAT

4 in stock (can be backordered)

  • Free shipping from € 74,95 NL. (€ 99,95 BE / DE)
  • Ordered before 16:00 tomorrow at home
  • Express ordered before 11:30 am tonight at home*
  • 14 days free return *
  • Can also be collected from us in Leusden!
Item: MKR2004 categories: , ,

Description MKR Motor shield

The MKR Motor Carrier shield is an MKR expansion card designed to control servo, DC and stepper motors.
The Carrier can also be used to connect other actuators and sensors via a range of 3-pin male headers.


  • Compatible with all boards in the MKR family
  • Four servo motor outputs
  • Four DC motor outputs (two powerful performance + two standard performance)
  • Current feedback detection for the powerful motors
  • Two inputs for encoder sensors
  • Four inputs for analog sensors (3-pin compatible)
  • Ability to read the status of the batteries
  • ON-OFF switch with ON-LED
  • LiPo battery connector (compatible with 2S or 3S) and power terminal block for alternative power source
  • LEDs visually indicate the direction of rotation of the DC motors
  • Built-in processor for automated control of some outputs
  • I2C connector as a male 4-pin header



microcontrollers ATSAMD11 ( Arm Cortex-M0 + processor)
Max current (MC33926) 5 Amps Peak, RMS current depending on the degree of heat sink provided
Max current (DRV8871) 3 Amps peak, current limited by current sense resistor.
Rated voltage 6.5 is 11.1V
Reverse current protection  Yes
Over Temperature shutdown protection (for DC motor drivers) Yes
Clock speed 48 Mhz
On board voltage regulator 5V
Interface Terminal block and 3 pin / 4 pin header connector
Compatibility  MKR Family


The MKR Motor Carrier features two MC33926 motor drivers for high-performance DC motor control with direct connection to the MKR1000, current feedback, and capacity for up to 5 Amps (peak). In addition, there are two DRV8871 drivers that are controlled from a SAMD11 microcontroller that communicates with the MKR1000 via I2C (SPI optional). The SAMD11 is also used to control the servos, read the encoders, and read the battery voltage. There is an interrupt line connecting the SAMD11 (on PA27) and the MKR board.

Note that for extended use or high-current motors, an extra heatsink (and eventually a fan) might be required for the drivers.

When plugging the MKR1000 and the Motor Carrier, some of the pins will stop being available for you to use in your code, as they will be needed to control some of the features of the Carrier. For example, the current feedback from the two MC33926 drivers is connected directly to some of the analog pins on the MKR1000. The following list explains which pins of the MKR1000 are used to control the Carrier:

  • Analog pin A3 for current feedback from Motor3
  • Analog pin A4 for current feedback from Motor4
  • Digital pin D2 for IN2 signal for Motor3
  • Digital pin D3 for IN1 signal for Motor3
  • Digital pin D4 for IN2 signal for Motor4
  • Digital pin D5 for IN1 signal for Motor4
  • Digital pin D6 for Interrupt signal from the SAMD11 to the MKR1000
  • Digital pin D11 for the SDA signal (I2C)
  • Digital pin D12 for the SCL signal (I2C)


Also, some pins can optionally be connected via a soldering jumper or a 0 Ohm resistor. These pins are:

  • Digital pin D1 for the SF signal from the MC33926 drivers (optional)
  • Digital pin D7 for the SPI SS signal (optional)
  • Digital pin D8 for the SPI MOSI signal (optional)
  • Digital pin D9 for the SPI SCK signal (optional)
  • Digital pin D10 for the SPI MISO signal (optional)

To use the Carrier, you will need to plug an MKR board (the MKR1000, MKR Zero, or other) on the headers at the center of the board. Make sure the MKR board is connected in the proper direction. You can do this by making sure the info printed on the side of the headers are matching for both the MKR board and the Motor Carrier.

Once the board is properly connected to the Motor Carrier, you can start programming the board. To control the motors, you will need to import the MKR Motor Carrier library. You can find more information about the library here. If you want to read more about how to install a library then you follow this link.

When working with motors, you will need an external source to feed the motor drivers and power up the motors. You can do this by connecting a LiPo Battery to the battery connector or using an external power source and connecting it to the VIN input on the terminal block. It is recommended to do these operations with the power switch at the OFF position. Once the external power is connected to the board, the power switch can be turned on.


MKR Motor carrier library


There are no reviews yet.

Be the first to review “Arduino MKR Motor Shield”

The email address will not be published. Required fields are marked with *