Getting Started
The iNexBot controller offers multiple secondary development approaches. This guide helps you choose the right method based on your goals, tech stack, and use case.
Quick Decision Table
| Your Goal | Recommended Method | Language/Protocol | Platform | Skill Level | Entry |
|---|---|---|---|---|---|
| Build PC control software | Host Computer Dev | C++, C#, Python | Windows / Linux | Beginner | C++ · C# · Python |
| Remote control via TCP | JSON Protocol | Any language (JSON over TCP) | Cross-platform | Intermediate | RTL-22.07 · RTL-24.03 |
| Customize controller behavior | Controller Secondary Dev | C++ | Linux | Advanced | Controller Guide |
| Customize teach pendant UI | Teach Pendant Secondary Dev | C++ / Qt | Linux | Intermediate | Teach Pendant Guide |
| Integrate with ROS ecosystem | ROS | C++, Python | Linux | Intermediate | ROS Integration Guide |
| Build EtherCAT real-time master | Master Station Dev | C / C++ | Linux (RT) | Advanced | Master Station |
Development Methods
1. Host Computer Development
Control robots directly via API on a PC, bypassing the teach pendant. Suitable for automation integration, data acquisition, and remote monitoring.
Supported Languages & Platforms:
| Language | Platform | Toolchain |
|---|---|---|
| C++ | Windows | MSVC / MinGW |
| C++ | Linux | GCC |
| C# | Windows | .NET |
| Python | Windows / Linux | Python 3.x |
Getting Started: Choose language → Download SDK → Initialize project → Connect to controller → Run examples
Suitable for: Developers needing flexible robot control, automation integration, or system integration.
2. JSON Protocol Communication
Communicate with the controller via standard JSON messages. Suitable for cross-language, cross-platform remote control and data exchange.
Protocol Features:
- TCP-based, ports 5000 (file transfer), 6000/6001 (JSON command), 7000 (service functions)
- Language-agnostic — any language with TCP Socket support works
RTL-22.07 and RTL-24.03 are both stable versions using the same port system. Port 6000 is typically for teach pendants, 6001 for host computers. RTL-24.03 is the current mainstream version.
Prerequisites: TCP Socket programming, JSON data format
Suitable for: Developers integrating or remotely controlling robots via standardized protocols.
3. Controller Secondary Development
Develop low-level algorithms on the controller's Linux environment, replacing or extending core controller functionality.
Use Cases: Proprietary process development, special robot model support, interpolation algorithm replacement.
Prerequisites: C++ (OOP, data structures), Linux system programming, robot control theory (kinematics, dynamics, interpolation)
Suitable for: Controller hardware and algorithm developers needing custom interpolation algorithms or proprietary processes.
4. Teach Pendant Secondary Development
Customize the teach pendant user interface and interaction, working alongside controller secondary development.
Use Cases: Custom UI/UE for brand-specific operation experience.
Prerequisites: C++ programming, Qt framework (signals/slots, QML, UI design), basic Linux
Suitable for: UI/UX developers creating custom robot operation interfaces.
5. ROS Development
Integrate the iNexBot controller into a ROS network for real-time monitoring and control.
ROS uses native ROS communication (topics/services), not JSON or HTTP.
Prerequisites: ROS basics (nodes, topics, services, actions), C++ or Python, ROS toolchain (MoveIt, RViz)
Suitable for: Research users and ROS developers integrating iNexBot controllers into existing ROS systems.
6. Master Station Development
Use the controller as an industrial PC running a real-time EtherCAT master station.
Use Cases: Real-time control systems and industrial network protocol development.
Prerequisites: C/C++ programming, EtherCAT protocol, real-time OS (RTOS / Xenomai)
Suitable for: Industrial automation and embedded developers needing custom real-time control systems.
User Role Recommendations
| Role | Typical Needs | Recommended Method |
|---|---|---|
| Robot OEM | Quickly customize control systems, build own brand | Controller + Teach Pendant secondary dev |
| System Integrator | Develop proprietary processes, protect industry knowledge | Host Computer dev + JSON Protocol |
| Research User | High-precision motion control algorithm research | Controller secondary dev + ROS |
| Education User | Train students to design and build robots | Host Computer (Python) + ROS |
Getting Started Tips
- Read docs first: Each method provides detailed documentation and examples — review before starting
- Stay flexible: Keep your development path open in early stages for rapid iteration
- Community support: ROS and JSON Protocol have extensive community support via forums and tutorials
If you have questions, check the FAQ, Version Compatibility, or email sales@inexbot.com.