XPIOHUB is a specialized input/output (I/O) plugin for the X-Plane flight simulator. It enables two-way data exchange between the simulator and external hardware (home cockpits, radio stacks, autopilot panels) based on Arduino microcontrollers using the ASCII protocol.
- Two-way exchange: transmit commands and read simulator variables (
datarefs) in real time. - Arduino support: compatible with Arduino boards (Nano, Uno, Leonardo, Mega, etc.).
- Flexible configuration: bind physical buttons, switches, and displays via the
xpiohub.inifile. - High performance: minimal latency due to direct communication through the serial port (COM).
/src— plugin source code in C++./arduino— reference sketches and firmware for hardware boards./docs— documentation and configuration file examples.xpiohub.cbp— Code::Blocks project file.
The project is configured for building in the Code::Blocks IDE using the GCC compiler.
- Code::Blocks (version with MinGW included is recommended).
- X-Plane SDK (XPLM library header files are required). Download them from the official X-Plane Developer website.
To compile the project successfully, specify the paths to the X-Plane SDK:
- Open the
xpiohub.cbpproject in Code::Blocks. - Go to Project -> Build options...
- Select the root target (project name in the left menu).
- In the Search directories -> Compiler tab, click Add and specify the path to the
SDK/CHeaders/XPLMfolder. - In the Linker settings tab, make sure the necessary libraries are linked (for Windows:
XPLM.liborXPLM_64.libdepending on your architecture).
- Go to the Releases section on GitHub and download the pre-built plugin.
- Copy the plugin file (
xpiohub.xpl) into your simulator folder:X-Plane/Resources/plugins/ - Create an
xpiohub.iniconfiguration file in the same folder.
This project is licensed under the MIT License - see the LICENSE file for details.
XPIOHUB — это специализированный плагин ввода-вывода (I/O) для авиасимулятора X-Plane. Он обеспечивает двусторонний обмен данными между симулятором и внешним аппаратным обеспечением (домашними кокпитами, радиостеками, панелями автопилота) на базе микроконтроллеров Arduino через ASCII-протокол.
- Двусторонний обмен: передача команд и чтение параметров (
datarefs) в реальном времени. - Поддержка Arduino: совместимость с платами Arduino (Nano, Uno, Leonardo, Mega и др.).
- Гибкая конфигурация: привязка физических кнопок, тумблеров и дисплеев через файл
xpiohub.ini. - Высокое быстродействие: минимальные задержки благодаря прямой работе через последовательный порт (COM).
/src— исходный код плагина на C++./arduino— эталонные скетчи и прошивки для плат./docs— документация и примеры конфигурационных файлов.xpiohub.cbp— файл проекта для среды разработки Code::Blocks.
Проект настроен для сборки в среде Code::Blocks с использованием компилятора GCC.
- Code::Blocks (рекомендуется версия с МинGW в комплекте).
- X-Plane SDK (необходимы заголовочные файлы библиотеки XPLM). Их можно скачать на официальном сайте X-Plane Developer.
Чтобы проект успешно скомпилировался, укажите пути к X-Plane SDK:
- Откройте проект
xpiohub.cbpв Code::Blocks. - Перейдите в меню Project -> Build options...
- Выберите корневую цель (название проекта в левом меню).
- На вкладке Search directories -> Compiler нажмите Add и укажите путь к папке
SDK/CHeaders/XPLM. - На вкладке Linker settings убедитесь, что подключены необходимые библиотеки (для Windows:
XPLM.libилиXPLM_64.libв зависимости от разрядности).
- Перейдите в раздел Releases на GitHub и скачайте готовую сборку.
- Скопируйте файл плагина (
xpiohub.xpl) в папку симулятора:X-Plane/Resources/plugins/ - Создайте конфигурационный файл
xpiohub.iniв той же папке.
Проект распространяется под свободной лицензией MIT — подробности читайте в файле LICENSE.