DYNAMIXEL Shield for Arduino MKR Series(hereafter referred to as “DYNAMIXEL Shield MKR”) is compatible with MKR series form factor Arduino boards such as MKR ZERO, MKR1000 WIFI, MKR WiFi 1010, and Portenta H7.
Arduino libraries(DYNAMIXEL2Arduino, DYNAMIXEL Shield) for DYNAMIXEL Shield MKR is provided to accelerate the development process using DYNAMIXEL on Arduino.
Please refer to DYNAMIXEL Shield Libraries section for available APIs.
- This product does not contain Arduino MKR Board. Arduino Board should be purchased separately.
- One of three DYNAMIXEL headers is assembled on the shield for DYNAMIXEL X series (More headers for AX/MX/X series are included).
- Please solder included headers and parts when necessary.
- Some Arduino MKR shields may not fully compatible with DYNAMIXEL Shield MKR due to the pin confliction. Please refer to each product datasheet before using with DYNAMIXEL Shield MKR.
Please use the recommended voltage source for the DYNAMIXEL.
|VIN(DXL) Voltage1||3.5 ~ 24 [V]|
|Operating Temperature||-10 ~ +80 [°C]|
|Physical Connection||TTL Multidrop Bus (5V Level)|
DC Jack Harness (Type A, O.D: 5.5 [mm], I.D: 2.5 [mm])
Convertible cable for XL-320
|Dimensions||65 x 25 [mm]|
1 ROBOTIS SMPS 12V 5A PS-10 is recommended as a power supply for 12V DYNAMIXEL.
2 Only one JST connector is assembled by default. Please solder included connectors when necessary.
3 The battery connector is compatible with ROBOTIS batteries LB-010 or LB-020.
DYNAMIXEL Shield MKR only supports
TTL based DYNAMIXEL lineups.
The following parts are included in the package.
- DYNAMIXEL Shield MKR (1)
- JST Header(S3B-EH) (2)
- Molex Header(5268-02A) (2)
- Terminal Block(DG350-3.5-02P-14) (1)
- DC Jack Harness (1)
- Battery Connector(SMW250-02) (1)
- XL-320 Convertible cable (1)
DYNAMIXEL Shield MKR Schematics can be downloaded in the link below.
The DYNAMIXEL Shield MKR header pinout is based on the Aruduino MKR boards.
|DYNAMIXEL TTL Port||TTL DYNAMIXEL supported|
|VIN(DXL)||External power input for DYNAMIXEL only. Cannot provide power to the ARduino MKR boards|
|+5V1||5V from Arduino MKR boards to supply power to DYNAMIXEL|
|Jumper Cap||Power Source Selection between
1 Please be aware that Arduino MKR boards may limit the 5V power source for USB hardware protection.
Arduino MKR board pinout example. Please refer to each product in Arduino Products for more details.
|Pin No.||Pin Name||Description|
|13||RX||Hardware serial port to receive data from DYNAMIXEL|
|14||TX||Hardware serial port to transmit data to DYNAMIXEL|
|21(A6)||TX_EN||Flow control of DYNAMIXEL data BUS
- HIGH : Transmit
- LOW : Receive
DYNAMIXEL Shield MKR can be mounted on or below the Arduino MKR boards.
Please check the compatibility when using multiple shields with a single Arduino MKR board.
Arduino MKR boards cannot be powered using the VIN(DXL) power source.
12V DYNAMIXEL X Series
This connection is recommended for most X series DYNAMIXEL with 12V operating voltage (except XL-320, XL330).
The USB connection from PC supplies power and serial communication to the MKR board to upload the Arduino sketch, while 12V SMPS supplies power to connceted DYNAMIXEL.
AX / MX Series DYNAMIXEL
AX and MX series use different type of Molex connector.
In order to use the original AX or MX series cable, solder the included molex connector to empty DYNAMIXEL port.
Or else, use the Robot Cable-X3P convertible.
XL330 using USB power
XL330 can run off of the 5V USB power due to its low operating voltage.
Set the power jumper to +5V side to use 5V power from the Arduino MKR board.
Please be aware that Arduino MKR boards may limit the 5V power source for USB hardware protection.
After uploading the program, 1 cell Lithium battery(3.7V) can be used to power the Arduino MKR board and XL330.
|Use VIN(DXL) from external power source(SMPS)||Use +5V from Arduino MKR|
When supplying power to DYNAMIXEL Shield MKR, take extra care for the polarity of the cable.
- Compatible to Arduino MKR and Portenta H7 boards
- Support both DYNAMIXEL Protocol 1.0 and 2.0
- By default, 16 DYNAMIXEL can be detected with DYNAMIXEL Arduino libraries(config.h)
- Support SynWrite function
- DYNAMIXEL Shield library(v0.1.0 or above) requires DYNAMIXEL2Arduino library
Make sure to install the
Arduino SAMD Boards manager from Arduino IDE boards manager in order to program Arduino MKR boards.
There are three ways to add libraries to the Arduino IDE.
- Using the Library Manager
- Importing a .zip Library
- Manual installation
Each way is described in detail in the Arduino Official Guide, so please refer to it if necessary.
Below is an example of using the Library Manager from Arduino IDE.
dynamixel shield from the Library Manager and install the latest version.
Install all to install the dependent library
If you have successfully installed both libraries, you’ll be able to find several examples of DynamixelShield in the examples.
WARNING : In order to use DYNAMIXEL Shield library(v0.1.0 or above), DYNAMIXEL2Arduino library must be installed.
Dynamixel2Arduino class inherits below public functions from the Master class.
The Remote Controller class can be used with the Arduino MKR boards by enabling SoftwareSerial feature.
CAN2DYNAMIXEL converts CAN based DYNAMIXEL Protocol into DYNAMIXEL Protocol 2.0.
CAN Standard Protocol 2.0 used in this example is shown as below.
|1 Bit||11 Bit||1 Bit||1 Bit||1 Bit||4 Bit||8 Byte||2 Byte||2 Bit||7 Bit||3 Bit|
NOTE : CAN2DYNAMIXEL does not support
Bulk instructions due to the limited length of Data field.
The Transmit section of IXXAT canAnalyser3 Mini software requires
ID (hex) and
Data (hex) while other fields are automatically generated as shown below.
The example is included in the
DYNAMIXEL Shield library and can be found from File > Examples > DynamixelShield > advanced > can2dynamixel.
CAN shield board with MCP2515 is required and 107-Arduino-MCP2515 library can be installed via Library Manager of Arduino IDE.
- This example uses 1,000,000 bps. Please configure the Baudrate of DYNAMIXEL accordingly.
- Do not use a Baudrate higher than 1,000,000 bps as it may cause unstable data transmission.