Skip to content
Open
Show file tree
Hide file tree
Changes from 8 commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
8e514b2
window update librarysetup and basic read write tutorial
GyuH13 Sep 2, 2025
63ca708
h3 to h2
GyuH13 Sep 2, 2025
9a9a151
add sync and bulk tutorial window version
GyuH13 Sep 3, 2025
072c50a
devide window and linux in tutorial
GyuH13 Sep 3, 2025
047453d
add run icon image
GyuH13 Sep 3, 2025
0760a35
update python window tutorial
GyuH13 Sep 3, 2025
1ebb89b
refactorying construction of library setup
GyuH13 Sep 4, 2025
d6ac31f
unify form in navigation
GyuH13 Sep 4, 2025
08cf6c5
reflect ai review
GyuH13 Sep 4, 2025
a58270b
fix head title size error
GyuH13 Sep 4, 2025
32575ac
make basic frame
GyuH13 Sep 4, 2025
9129d6a
sample code re numbering
GyuH13 Sep 4, 2025
f461596
renumbering api reference
GyuH13 Sep 4, 2025
82d0996
Merge branch 'feature-sdk-window-update' of https://github.com/ROBOTI…
GyuH13 Sep 4, 2025
68f912c
api manual update
GyuH13 Sep 8, 2025
cd8dac4
api update
GyuH13 Sep 10, 2025
3df9353
update api tutorial step1
GyuH13 Oct 10, 2025
1c354be
single motor tutorial
GyuH13 Oct 13, 2025
9160a60
api group control tutorial
GyuH13 Oct 13, 2025
e1d90bc
remove example category
GyuH13 Oct 13, 2025
9a6a833
update api reference
GyuH13 Oct 14, 2025
de804b9
dynmaixel easy sdk update
GyuH13 Oct 20, 2025
7671689
Merge branch 'master' of https://github.com/ROBOTIS-GIT/emanual into …
GyuH13 Oct 20, 2025
0c0af32
fix bug that group control category linked with Dynamixel SDK sidebar
GyuH13 Oct 21, 2025
9aa650e
add error reference
GyuH13 Oct 21, 2025
518527c
reflect review
GyuH13 Oct 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 14 additions & 35 deletions _data/navigation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29646,7 +29646,6 @@ dynamixel_sdk:
url: /software/dynamixel/dynamixel_sdk/overview/#supported-operating-systems
- title: "Supported Languages"
url: /software/dynamixel/dynamixel_sdk/overview/#supported-languages
##
- title: "Quick Start Guide"
url: /software/dynamixel/dynamixel_sdk/quick_start_guide/#quick-start-guide
children:
Expand All @@ -29657,40 +29656,20 @@ dynamixel_sdk:
- title: "Library Setup"
url: /software/dynamixel/dynamixel_sdk/library_setup/#library-setup
children:
- title: "C Windows"
url: /software/dynamixel/dynamixel_sdk/library_setup/c_windows/#c-windows
- title: "C Linux"
url: /software/dynamixel/dynamixel_sdk/library_setup/c_linux/#c-linux
- title: "C macOS"
url: /software/dynamixel/dynamixel_sdk/library_setup/c_macos/#c-macos
- title: "CPP Windows"
url: /software/dynamixel/dynamixel_sdk/library_setup/cpp_windows/#cpp-windows
- title: "CPP Linux"
url: /software/dynamixel/dynamixel_sdk/library_setup/cpp_linux/#library-setup-cpp-linux
- title: "CPP macOS"
url: /software/dynamixel/dynamixel_sdk/library_setup/cpp_macos/#cpp-macos
- title: "Csharp Windows"
url: /software/dynamixel/dynamixel_sdk/library_setup/csharp_windows/#csharp-windows
- title: "Python Windows"
url: /software/dynamixel/dynamixel_sdk/library_setup/python_windows/#python-windows
- title: "Python Linux"
url: /software/dynamixel/dynamixel_sdk/library_setup/python_linux/#python-linux
- title: "Python macOS"
url: /software/dynamixel/dynamixel_sdk/library_setup/python_macos/#python-macos
- title: "Java Windows"
url: /software/dynamixel/dynamixel_sdk/library_setup/java_windows/#java-windows
- title: "Java Linux"
url: /software/dynamixel/dynamixel_sdk/library_setup/java_linux/#java-linux
- title: "Java macOS"
url: /software/dynamixel/dynamixel_sdk/library_setup/java_macos/#java-macos
- title: "MATLAB Windows"
url: /software/dynamixel/dynamixel_sdk/library_setup/matlab_windows/#matlab-windows
- title: "MATLAB Linux"
url: /software/dynamixel/dynamixel_sdk/library_setup/matlab_linux/#matlab-linux
- title: "MATLAB macOS"
url: /software/dynamixel/dynamixel_sdk/library_setup/matlab_macos/#matlab-macos
- title: "LabVIEW Windows"
url: /software/dynamixel/dynamixel_sdk/library_setup/labview_windows/#labview-windows
- title: "C"
url: /software/dynamixel/dynamixel_sdk/library_setup/c/#library-setup-c-linux
- title: "CPP"
url: /software/dynamixel/dynamixel_sdk/library_setup/cpp/#library-setup-cpp-linux
- title: "Python"
url: /software/dynamixel/dynamixel_sdk/library_setup/python/#library-setup-python-linux
- title: "Csharp"
url: /software/dynamixel/dynamixel_sdk/library_setup/csharp/#library-setup-csharp-windows
- title: "Java"
url: /software/dynamixel/dynamixel_sdk/library_setup/java/#library-setup-java-linux
- title: "MATLAB"
url: /software/dynamixel/dynamixel_sdk/library_setup/matlab/#library-setup-matlab-linux
- title: "LabVIEW"
url: /software/dynamixel/dynamixel_sdk/library_setup/labview/#library-setup-labview-windows
- title: Basic Read/Write tutorial
url: /software/dynamixel/dynamixel_sdk/basic_read_write_tutorial/
children:
Expand Down
114 changes: 114 additions & 0 deletions _includes/en/software/dynamixel_sdk/library_setup/c_linux.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
{::options parse_block_html="true" /}

<div class="main-header">
<h1 id="library-setup-c-linux">Library Setup &lt;C Linux&gt;</h1>
</div>
<style>
.main-header h1::before {
content: none !important;
}
</style>

This tutorial is written assuming you are using the latest version of Ubuntu. Commands may not be the same for alternative distributions of Linux.

# [Install requirements](#install-requirements)

- The DYNAMIXEL SDK requires GNU gcc ver. 5.4.0 20160609 or higher
- To check the version of your gcc compiler
``` bash
$ gcc -v
```

- Download the requirements
``` bash
$ sudo apt-get install gcc
$ sudo apt-get install build-essential
$ sudo apt-get install gcc-multilib g++-multilib # For cross-compiling
```

# [Build the SDK](#build-the-SDK)
- Check your system architecture
``` bash
$ uname -m
```

- Enter the appropriate build folder depending on your system and build the SDK
``` bash
$ cd DynamixelSDK/c/build/linux64 # for 64-bit systems
$ sudo make install
```
- make sure to enter the correct folder according to your system architecture.
- `linux64` for 64-bit systems
- `linux32` for 32-bit systems
- `linux_sbc` for ARM-based SBCs like Raspberry Pi

- If the build completes successfully, you should see the .so file generated inside the build folder.
``` bash
$ ls
libdxl_x86_cpp.so Makefile
```

- Grant permission to access the port
``` bash
$ sudo chmod 666 /dev/ttyUSB0
```

<br>
- Common `make` commands for building the SDK
``` bash
$ make # Compile the source code and generate binaries
$ make install # Install the library files to the system
$ make clean # Remove all build files and reset the build environment
$ make uninstall # Remove files installed by 'make install' from the system
$ make reinstall # Reinstall by cleaning, rebuilding, and installing again
```
{: .notice--success}

# [Building and Running the Sample Code](#building-and-running-the-sample-code)

The DYNAMIXEL SDK example code for C uses a .so (Linux Shared Object) library built in C.
The previous instructions walk you through building the latest library files in `[DynamixelSDK folder]/c/build/[linuxXX]/libdxl_xYY_c.so` built by its own source code.

* Go to the Makefile's directory using `cd`:

``` bash
$ cd [DynamixelSDK folder]/c/example/protocol1.0/read_write/linux32
```

OR

``` bash
$ cd [DynamixelSDK folder]/c/example/protocol1.0/read_write/linux64
```

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/linux/sample_code/exc4.png)

* Build the executable file:

``` bash
$ make
```

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/linux/sample_code/exc1.png)

* If there is an error, `$ make clean` then `$ make` again.

* To delete the executable file, `$ make clean`.

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/linux/sample_code/exc2.png)

* Access the port you will be using to communicate with DYNAMIXEL:

``` bash
$ sudo chmod a+rw /dev/ttyUSB0
```

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/linux/sample_code/exc3.png)

* Run the executable file:

``` bash
$ ./read_write
```

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/linux/sample_code/exc5.png)
Original file line number Diff line number Diff line change
@@ -1,24 +1,20 @@
---
layout: archive
lang: en
ref: c_macos
read_time: true
share: true
author_profile: false
permalink: /docs/en/software/dynamixel/dynamixel_sdk/library_setup/c_macos/
sidebar:
title: DYNAMIXEL SDK
nav: "dynamixel_sdk"
---

<style>body {counter-reset: h1 4 !important;}</style>
<div style="counter-reset: h2 2"></div>
<!-- <style>body {counter-reset: h1 4 !important;}</style>
<div style="counter-reset: h2 2"></div> -->

<!--[dummy Header 1]>
<h1 id="library-setup"><a href="#library-setup">Library Setup</a></h1>
<![end dummy Header 1]-->

## [C macOS](#c-macos)
{::options parse_block_html="true" /}

<div class="main-header">
<h1 id="library-setup-c-macos">Library Setup &lt;C macOS&gt;</h1>
</div>
<style>
.main-header h1::before {
content: none !important;
}
</style>

{% include en/maintenance_is_in_progress.md %}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,44 +1,35 @@
---
layout: archive
lang: en
ref: c_windows
read_time: true
share: true
author_profile: false
permalink: /docs/en/software/dynamixel/dynamixel_sdk/library_setup/c_windows/
sidebar:
title: DYNAMIXEL SDK
nav: "dynamixel_sdk"
---
{::options parse_block_html="true" /}

<style>body {counter-reset: h1 3 !important;}</style>
<div class="main-header">
<h1 id="library-setup-c-linux">Library Setup &lt;C Windows&gt;</h1>
</div>
<style>
.main-header h1::before {
content: none !important;
}
</style>

# [Library Setup](#library-setup)

## [C Windows](#c-windows)

### [Compiler and Builder](#compiler-and-builder)

* [Download Visual Studio Community for Windows Desktop](https://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx)
# [Install requirements](#install-requirements)
- [Download Visual Studio Community for Windows Desktop](https://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx)

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/vs.png)

### [Building the Library](#building-the-library)
# [Build the SDK](#build-the-SDK)

* Open the project solution file (.sln) located in the `[DynamixelSDK folder]/c/build/win32` directory OR `[DynamixelSDK folder]/c/build/win64` directory).
- Open the project solution file (.sln) located in the `[DynamixelSDK folder]/c/build/win32` directory OR `[DynamixelSDK folder]/c/build/win64` directory).

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/library_file/1.png)

* In the Solution Explorer, right click on the project and select Properties.
- In the Solution Explorer, right click on the project and select Properties.

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/library_file/2.png)

* Under General Configuration Properties, confirm that the paths and file extensions are set to the following:
- Under General Configuration Properties, confirm that the paths and file extensions are set to the following:

* Output Directory: `$(SolutionDir)output\`
* Intermediate Directory: `$(Configuration)\`
* Platform Toolset: `Visual Studio 20XX (v000)`
* Configuration Type: `Dynamic Library (.dll)`.
- Output Directory: `$(SolutionDir)output\`
- Intermediate Directory: `$(Configuration)\`
- Platform Toolset: `Visual Studio 20XX (v000)`
- Configuration Type: `Dynamic Library (.dll)`.

{% capture notice_01 %}
**WARNING**:
Expand All @@ -49,66 +40,66 @@ If the library file needs to be built in a lower or higher version of Visual Stu

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/library_file/3.png)

* Confirm that the Additional Include Directories path under the General C/C++ Configuration Properties tree is as follows:
- Confirm that the Additional Include Directories path under the General C/C++ Configuration Properties tree is as follows:

`..\..\..\include\dynamixel_sdk`

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/library_file/4.png)

* Right click on the project and select Build to build the library.
- Right click on the project and select Build to build the library.

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/library_file/5.png)

* The built library file will be saved to `[DynamixelSDK folder]/c/build/[winXX]/output/dxl_xYY_c.dll`.
- The built library file will be saved to `[DynamixelSDK folder]/c/build/[winXX]/output/dxl_xYY_c.dll`.

### [Building and Running the Sample Code](#building-and-running-the-sample-code)
# [Building and Running the Sample Code](#building-and-running-the-sample-code)

The DYNAMIXEL SDK sample code for C uses the library files (.dll for Windows) compiled from the C language source.

By following the instructions above, The compiled .dll files are output to `[DynamixelSDK folder]/c/build/[winXX]/output/dxl_xYY_c.dll` after being built from the included source code.

* Run the .sln file located in the `[DynamixelSDK folder]/c/example/protocol2.0/read_write/win32` folder if you have a 32-bit platform OR the `[DynamixelSDK folder]/c/example/protocol2.0/read_write/win64` folder if you have a 64-bit platform.
- Run the .sln file located in the `[DynamixelSDK folder]/c/example/protocol2.0/read_write/win32` folder if you have a 32-bit platform OR the `[DynamixelSDK folder]/c/example/protocol2.0/read_write/win64` folder if you have a 64-bit platform.

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/sample_code/1.png)

* Right click on the project and select Properties.
- Right click on the project and select Properties.

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/sample_code/2.png)

* In the resulting Property Pages window, under Configuration Properties --> General, check that the directories and file extensions are set as follows:
- In the resulting Property Pages window, under Configuration Properties --> General, check that the directories and file extensions are set as follows:

* Output Directory: `$(SolutionDir)$(Configuration)\`
* Intermediate Directory: `$(Configuration)\`
* Target Extension: `.exe`
* Configuration Type: `Application (.exe)`
- Output Directory: `$(SolutionDir)$(Configuration)\`
- Intermediate Directory: `$(Configuration)\`
- Target Extension: `.exe`
- Configuration Type: `Application (.exe)`

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/sample_code/3.png)

* Under Configuration Properties --> Debugging add the following path to your Environment:
- Under Configuration Properties --> Debugging add the following path to your Environment:
- win32: `PATH=%PATH%;..\..\..\..\..\build\win32\output;`
- win64: `PATH=%PATH%;..\..\..\..\..\build\win64\output;`

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/sample_code/4.png)

* Under Configuration Properties --> VC++ Directories, add the following path to Library Directories:
- Under Configuration Properties --> VC++ Directories, add the following path to Library Directories:
- win32: `..\..\..\..\..\build\win32\output;`
- win64: `..\..\..\..\..\build\win64\output;`

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/sample_code/5.png)

* Under Configuration Properties --> C/C++ --> General, add the following path to Additional Include Directories:
- Under Configuration Properties --> C/C++ --> General, add the following path to Additional Include Directories:

`..\..\..\..\..\include\dynamixel_sdk`

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/sample_code/6.png)

* Under Configuration Properties --> Linker --> Input, add the following file to Additional Dependencies:
- Under Configuration Properties --> Linker --> Input, add the following file to Additional Dependencies:

- win32: `dxl_x86_c.lib;`
- win64: `dxl_x64_c.lib;`

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/sample_code/7.png)

* Click on the Local Windows Debugger button to run the program.
- Click on the Local Windows Debugger button to run the program.

![](/assets/images/sw/sdk/dynamixel_sdk/library_setup/c/windows/sample_code/8.png)
Original file line number Diff line number Diff line change
@@ -1,20 +1,7 @@
---
layout: archive
lang: en
ref: cpp_linux
read_time: true
share: true
author_profile: false
permalink: /docs/en/software/dynamixel/dynamixel_sdk/library_setup/cpp_linux/
sidebar:
title: DYNAMIXEL SDK
nav: "dynamixel_sdk"
---

{::options parse_block_html="true" /}

<div class="main-header">
<h1 id="library-setup-cpp-linux">Library Setup <C++ Linux></h1>
<h1 id="library-setup-cpp-linux">Library Setup &lt;C++ Linux&gt;</h1>
</div>
<style>
.main-header h1::before {
Expand Down
Loading