Watch the SDK choose a path

A working model of DORS, the transport switch inside the SDK. It plays through five situations on its own: what unit-07 scores, why it holds or switches, and the events your app would see. Drag any device to reshape the mesh.

Mesh
Start on Bluetooth LEunit-07 joins the mesh, scores every transport it can see, and sends to unit-12 two hops away through relay-09.
unit-07
On Bluetooth LE
Current
Best rival
Hysteresis
Cooldown
Stability
Signal
Scores
SignalSig
ProximityProx
BandwidthBand
CongestionCong
EnergyEnrg
ReliabilityRel
LoadLoad
Weighted high for that transport
unit-07, events

Rules and event names are the SDK's. Radio ranges are modelled. Time runs at 4x.

What you are looking at

RuleIn the SDKIn the lab
Seven factorsSignal, proximity, bandwidth, congestion, energy, reliability, and load, each 0 to 100, weighted differently per transport.The matrix on the right. Bars in full blue are weighted high for that row.
switchHysteresis 15A rival transport must lead by at least 15 points before DORS switches.The "Hysteresis" line. A rival at plus 9 holds; plus 15 switches.
switchCooldownSecs 20After a switch, no further switch for 20 seconds.The "Cooldown" line counts down in sim time.
stabilityWindowSecs 8The rival must keep its lead for 8 seconds before it wins.The "Stability" line. Drag a device back and forth and the counter resets.
rssiSwitchThreshold -85Below -85 dBm a link is abandoned regardless of the score gap.The fourth situation raises interference until the floor is crossed.
Failover, not outageThe internet is a transport with a score like any other. Losing it drops its score to zero.The second situation cuts the internet. The row goes down and the message still arrives.
Retry and dedupeA dropped link mid-flight costs a retry with backoff; a duplicate arrival is dropped by id.The fifth situation drops the relay carrying the message.

Bring your environment. We will scope an evaluation against it. Then run it on real radios.