Embedded & RTOS
Bonded connectivity built into your product, on the OS you already ship.
01 · The Problem
Every embedded product with two radios hits the same wall.
The operating system is where it stops. QNX SDP 8.0 ships the io-sock networking stack, which follows FreeBSD closely and gives you multiple interfaces, a routing table with metrics, PF for policy, and per-socket source binding. Embedded Linux gives you an equivalent set. Both let you build two designs: route failover, where you watch the primary and change the default route when it stops responding, and per-flow steering, where telemetry leaves on the metered link and video leaves on the fixed one.
What neither design does is combine them. A single TCP connection leaves through exactly one interface, at that interface's speed, and dies when that interface fails. Two 50 Mbps modems offer a choice between 50 Mbps and 50 Mbps, not a combined 100. Failover costs seconds of downtime while routes converge and every open socket resets.
There is no Multipath TCP waiting in the wings either. The Linux kernel has carried an MPTCP implementation since version 5.6. FreeBSD has not, so neither does io-sock, so a design that expected to enable multipath at the socket layer, the way it works on a Linux gateway, needs a different approach on QNX.
The capacity is already on the board. The Speedify SDK adds it up.
02 · The Solution
One bonded connection, running inside your image.
Every uplink carries the session at once
Unequal links do not pace each other
Latency stays bounded while the bond is full
One ordinary TCP connection per uplink
Link health your provisioning system can act on
Modems fail ambiguously, and a link that holds an address while passing no traffic still reports as up. The doctor command exits non-zero on a bad uplink or an unreachable server, giving provisioning a definite signal.
No dependency on the customer's network
// The Benefit
The capability ships as part of your product.
This is the difference between an embedded integration and every other way of buying connectivity software. There is no appliance to place alongside the machine, no per-device install for a field technician, and no dependency on a network your end customer configures and you never see.
The bonding logic compiles into what you already ship. Your customer receives a product that stays connected, not a product plus a connectivity vendor.
03 · Constraints
Four constraints an embedded build brings that a desktop client never has.
Megabytes, not gigabytes
No user, no console, no second chance
A data plane, not a suite
Hard real-time stays local
04 · Platforms
Where the Speedify SDK runs.
QNX SDP 8.0, arm64
Linux x86_64 and arm64
OpenWrt arm64
05 · Integration
Three ways to put bonding in the product.
Embedded
Integrate bonding directly into your own software with the Speedify SDK. One daemon in your image, provisioned once, with no separate appliance and no dependency on the end customer's network.
Native on QNX SDP 8.0, plus Linux and OpenWrt targets, built to run inside real-time constraints on resource-limited hardware.
Network level
Run Speedify on the product's onboard router or at the facility edge, so everything behind it inherits the bonded uplink with no per-device work.
Supported OpenWrt hardware with a Speedify for Routers license, or Powered by Speedify devices.
Device level
Install the Speedify app on onboard compute, an engineering workstation, or an operator console.
Windows, macOS, Linux, iOS, and Android.
