Home · Products · BERK DDS

BERK DDS — a pure-Rust, wire-compatible DDS/RTPS stack

A sovereign networking stack, wire-compatible with Eclipse CycloneDDS and eProsima Fast-DDS, with application logic written in the BERK language. Fuses QoS events with domain safety math into a single prioritised safety decision.

Pure Rust✓ 681 dds:: testsCycloneDDS compatibleFast-DDS compatibleROS 2 RMWTRL ~4
681
dds:: unit tests
10
domains in the BERK↔Rust equivalence gate
2
RMWs with live wire-interop
1
prioritised safety decision
Architecture

Enters your existing systems at low risk

The pure-Rust DDS/RTPS stack is wire-compatible with Eclipse CycloneDDS and eProsima Fast-DDS — the two primary ROS 2 RMWs. Replacing foreign middleware does not mean rewriting your system.

Wire-compatibility

Live-verified interoperability: speaks on the same wire, in the same network, with existing ROS 2 / DDS nodes. Migration can be low-risk and incremental.

Safety math ⊕ QoS

QoS liveliness, deadline and reliability events fuse with separation distance, ASIL, FDIR and risk math into one prioritised decision: stop category, safe-mode, escalation.

Equivalence gate

The field-going .berk source and its Rust mirror are compared on shared input vectors in every CI run. If outputs differ, the test breaks — source–mirror equivalence is an executable invariant.

Evidence on the Board

A bare-metal board talking to three independent DDS stacks on a real wire

On an STM32F746G-DISCO (Cortex-M7) under Zephyr V4.4, the allocator-free no_std BERK DDS core (berk-dds-core) published over real Ethernet using standard RTPS.

Discovery and publication

The SPDP announcement is bit-identical to the golden; the board's publication was discovered and received by BerkROS, Eclipse CycloneDDS 11.0.1 and ROS 2 Humble (rmw_cyclonedds): ros2 topic echo → data: merhaba BERK.

↻

Reliable data plane

The board decoded incoming ACKNACKs and retransmitted deliberately skipped samples; the ROS 2 RELIABLE reader received a lossless, in-order stream (89→108, no gaps).

10 concurrent topics

The real messages of 10 sectors were published as 10 concurrent, separately typed topics; ROS 2 discovered all of them with the right types and decoded them field by field through the berk_msgs package.

Scope: the on-board DDS run is on Zephyr; interoperability with eProsima Fast-DDS 3.6.2 was verified live on a PC (std stack). KEEP_LAST depth and >32-SN ACKNACK bitmaps pass on the host; the board demonstration is pending. Sources: docs/DDS_Donanim_Kaniti_Yolculugu.md, docs/interop_fastdds/README.md.
Domain Modules

Sector math, implemented to standard

ADAS, avionics (ARINC 429), medical, space, telecom, railway, industrial and finance domain modules — validated by 681 dds:: unit tests.

ARINC 429 encode/decodeASIL decomposition FDIR state machinesSeparation distance Stop categoriesRisk fusion TSN / PTP timingDeterministic prioritisation
Technology maturity: wire-interoperability is verified live against CycloneDDS and Fast-DDS; components are validated in a lab / representative environment (≈ TRL 4). Not formal certification evidence — designed to produce certification evidence; not yet qualified.

A migration plan for your ROS 2 / DDS system

Pilot integration, joint R&D or licensing — let's shape the collaboration model that fits your architecture.

Contact us Docs → berk-systems.com