Twinise | Arduino Cloud Bridge is a Blueprint-first. Production-ready FAB plugin to Bridge your physical and digital worlds.
Introduction
We’re excited to share a project we’ve been working on: Twinise | Arduino Cloud Bridge — a production-ready Unreal Engine plugin that connects your UE projects directly to Arduino IoT Cloud devices.
The Problem
While working at the intersection of interactive installations, Digital Twins, and game development, we found ourselves constantly frustrated by the gap between physical hardware and Unreal Engine. Sure, one could hack together serial connections or custom middleware, but nothing felt native to Unreal’s ecosystem, so we had to build our own system.
Arduino Cloud has become an incredible platform for IoT, millions of devices, intuitive dashboards, and a growing maker community. But there was no clean way to get that data into Unreal. Until now.
What It Does
Full bidirectional communication with Arduino IoT Cloud:
-
Read sensor data: temperature, humidity, motion, light levels, anything your Arduino pushes to the cloud
-
Write commands back: toggle relays, control RGB LEDs, adjust motor speeds, trigger events
-
React in real-time with event-driven architecture
All from Blueprints. No C++ required.
Key Features
| Feature | Description |
|---------|-------------|
| OAuth2 Authentication | Secure, automatic token management with refresh-before-expiry |
| Runtime Subsystem | Central access point — one line to get all your devices |
| Device Component | Attach to any Actor to link it with an Arduino Thing |
| Device Actor | Pre-built Actor with billboard visualization and property bindings |
| Editor Window | Manage devices without entering Play mode |
| Sequencer Support | Property bindings for cinematics and animations |
| CloudLight Native | Full HSB color control with switch state |
Supported Value Types:
Boolean, Integer, Float, String, Color (hex), Enum, CloudLight (HSB+Switch)
Architecture
We’ve designed proper module separation:
-
Runtime Module: Ships with your packaged game (Win64, Mac, Linux, Android, iOS)
-
Editor Module: Development tools only, never bloats your final build
No external dependencies. Uses Unreal’s built-in HTTP module. FAB-compliant and ready for production.
Use Cases
This plugin opens up some exciting possibilities:
-
Digital Twins: Mirror real-world sensor data in your 3D environments
-
Smart Home Visualization: Control lights, thermostats, and devices from an Unreal dashboard
-
Interactive Installations: Museums, exhibitions, art installations with real-time hardware interaction
-
IoT-Powered Games: Imagine a horror game where real room temperature affects gameplay
-
Industrial Monitoring: Visualize factory sensor data in real-time 3D
-
Prototyping: Rapidly test hardware/software integration during development
Quick Start (5 Minutes)
Step 1: Get Credentials
Create an API key at cloud.arduino.cc/home/api-keys
Step 2: Configure
Open Window > Arduino Cloud, enter your Client ID and Client Secret, then click Save Credentials.
Step 3: Connect
Click Test Connection & List Devices to verify everything works.
Step 4: Use in Blueprints
Reading a value:
Get Subsystem (ArduinoCloudRuntimeSubsystem)
> Get Value (ThingId, "temperature")
> Break ArduinoValue
> FloatValue
Writing a value:
Get Subsystem (ArduinoCloudRuntimeSubsystem)
> Set Float Property (ThingId, "led_brightness", 0.75)
That’s it. No boilerplate, no configuration files, no middleware servers.
Event-Driven Design
React to everything with Blueprint-assignable delegates:
| Delegate | Fires When |
|----------|------------|
| OnDevicesUpdated | Device list refreshed |
| OnThingValuesUpdated | Property values changed |
| OnConnectionStatusChanged | Connected or disconnected |
| OnRequestError | Error with code and message |
| OnSyncComplete | Write operations completed |
Security Considerations
-
Credentials stored in
EditorPerProjectUserSettings.ini(excluded from source control) -
For shipped builds: inject credentials at runtime via
SetCredentialsnode -
OAuth2 tokens are never exposed to Blueprints
-
Automatic token refresh happens transparently
Technical Specifications
| Specification | Details |
|---------------|---------|
| Engine Versions | Unreal Engine 5.3, 5.5+ |
| Runtime Platforms | Win64, Mac, Linux, Android, iOS |
| Editor Platforms | Win64, Mac, Linux |
| Network Protocol | HTTP/REST, OAuth2 |
| Dependencies | None (uses built-in HTTP module) |
| Blueprint Accessible | 100% — No C++ required |
Roadmap
Planned features for future releases:
-
WebSocket support for true real-time push (pending Arduino Cloud API availability)
-
Dashboard variable templates
-
Historical data queries
-
Multiple organization support
Documentation
Full documentation is included with the plugin:
-
User Guide with step-by-step tutorials
-
Complete Blueprint API reference
-
Troubleshooting section with common issues and solutions
-
Example project demonstrating all features
Feedback and Support
We’d love to hear what you think. Whether you’re building digital twins, creating interactive installations, or just curious about IoT in Unreal, let us know your use cases, questions, or feature requests.
This is version 1.0 and we’re actively developing based on community feedback.
Links
-
Documentation: GitHub User Guide
-
Support: GitHub Issues
-
Publisher: Twinise
Twinise | Bridging atoms and bits, one property at a time.