FlexComm is a protocol-agnostic, cross-platform communication framework for Unity, designed to simplify and unify external device and service integration across platforms. It supports MQTT, REST, UDP, TCP, Serial, and WebSocket communication—all configurable via a clean Unity Editor interface. One Component serves as the interface for all protocols!
Whether you're building XR-based robot control systems, industrial simulations, or research applications, FlexComm enables seamless data routing, message handling, and cross-protocol flexibility. The system is modular, extensible, and fully customizable to suit project-specific needs, with built-in editor tools and runtime diagnostics to accelerate development and ensure reliability.
FlexComm is the spiritual successor to DTStacks, a Unity-based MQTT framework originally developed for human-robot interaction and simulation. DTStacks was featured in a peer-reviewed academic publication (see doi:10.1016/j.procir.2024.10.165) and used in multiple robotics research projects. FlexComm expands on that foundation with a fully reworked, protocol-agnostic architecture, broader platform support, and advanced integration features. However, it was designed to also be used by non Unity experts like students and features easy to use editor components and scripts while offering advanced interactions using a unified API.
FlexComm has already been adopted in numerous academic publications and ongoing research projects, serving as the backbone for multimodal communication in XR, robotics, and digital twin systems. Some use cases are presented in the videos above!
Free Companion Toolkit
Includes FlexComm-Lab, an open-source GitHub project with test tools, protocol simulators, and example integrations to accelerate your development (e.g. minimalist REST, Websocket, etc. - servers which can be run using Python 3.13). This also serves as a Wiki for FlexComm as well as an issue tracker with the main package! This will be updated and expanded as developments progress. Including experimental features, new extensions, etc.. This includes an integration for ROS and ROS2! (ROS side bridge is coming sonn!)
Third-Party Notices:
This asset uses MQTTnet under the MIT License and NativeWebSocket under the Apache 2.0 License.
See the Third-Party Notices.txt and LICENSES folder in the package for full details.