Lightweight Python bindings for PND SDK, supporting robot state acquisition and low‑level control via DDS communication.
- Pythonic interface for PND LowCmd / LowState
- Supports request–response and topic publish/subscribe
- Works both with real robots and simulators
- Python ≥ 3.8
- cyclonedds == 0.10.2
- numpy
- opencv-python
cd ~
sudo apt install python3-pip
git clone https://github.com/pndbotics/pnd_sdk_python.git
cd pnd_sdk_python
pip3 install -e .The Python sdk interface maintains consistency with the pnd_sdk interface, achieving robot status acquisition and control through request-response or topic subscription/publishing.
Example programs are located in:
/example
Ensure robot networking is configured correctly:
https://wiki.pndbotics.com
cd ~/pnd_sdk_python/example/low_level/adam_lite
python3 open_arm.py Could not locate cyclonedds. Try to set CYCLONEDDS_HOME or CMAKE_PREFIX_PATH
Compile and install cyclonedds:
cd ~
git clone https://github.com/eclipse-cyclonedds/cyclonedds -b releases/0.10.x
cd cyclonedds && mkdir build install && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=../install
cmake --build . --target installThen install pnd_sdk_python:
cd ~/pnd_sdk_python
export CYCLONEDDS_HOME=~/cyclonedds/install
pip3 install -e .More info: https://pypi.org/project/cyclonedds/#installing-with-pre-built-binaries
Contributions are welcome.
Feel free to open issues or pull requests.
- Email: info@pndbotics.com
- Wiki: https://wiki.pndbotics.com
- SDK: https://github.com/pndbotics/pnd_sdk_python
- Issues: https://github.com/pndbotics/pnd_mujoco/issues
| Version | Date | Updates |
|---|---|---|
| v1.2.0 | 2026-01-22 | DDS refactoring version |
| v1.0.3 | 2025-12-10 | - Add sp and lite - Change wireless remote - Add ddq and motor state |
| v1.0.2 | 2025-11-20 | Add pd and add hand in example |
| v1.0.1 | 2025-11-11 | Add hand support |
| v1.0.0 | 2025-11-07 | Initial release |