v0.1.0 · 10 crates published

Real-time IPC and execution, in Rust.

A zero-copy executor and connector framework built on iceoryx2. EtherCAT, Zenoh, and CAN out of the box.

What is taktora?

A layered Rust framework for building real-time systems on top of iceoryx2. Two pieces: an executor that runs items triggered by IPC, intervals, and request/response activity, and a connector framework that exposes typed channels with the same plugin surface for every fieldbus.

EtherCAT and Zenoh ship as reference connectors. CAN follows the same shape. Add your protocol against one trait.

Three pillars

Zero-copy IPC

Real-time inter-process messaging that never touches the heap on the hot path.

Built on iceoryx2. Payloads ride a typed envelope through shared memory; sender and receiver share the same bytes — no serialization, no allocation, no copy.

→ Deep dive

Deterministic execution

An executor designed for known timing — sequential chains, parallel DAGs, signal/slot, lifecycle observability.

Items triggered by IPC, intervals, or request/response activity. Pin to cores, tune thread attributes, observe every state transition. Built for control loops that have to land within their cycle.

→ Deep dive

Connector framework

One plugin surface, every fieldbus. EtherCAT and Zenoh ship as reference implementations.

Typed channels with codec-pluggable payloads, uniform health and reconnect semantics. Same ChannelWriter / ChannelReader types every connector reuses; protocol-specific connectors plug into an Executor through one well-defined seam.

→ Deep dive

How it fits together

Three layers: the executor owns timing, connectors own protocols, iceoryx2 owns transport.

taktora architecture overview Three horizontal layers. Top: Executor (item scheduling, channels, services, signal/slot). Middle: Connector Host with three protocol connectors — EtherCAT, Zenoh, CAN. Bottom: iceoryx2 zero-copy transport. Arrows flow downward through every connector to the transport. Executor Items · chains · graphs · signal/slot · observer Connector framework Typed channels · codec · health · reconnect Transport iceoryx2 zero-copy shared memory EtherCAT Zenoh CAN / SocketCAN
Executor schedules; connectors translate; iceoryx2 carries.

Where we are today

Honest about the maturity bar. Built in the open.

Versionv0.1.0
Crates published10
LicenseMIT / Apache-2.0
ABINot stable

v0.1.0 means the API can move under your feet between minor releases. We're transparent about it; we're not yet a production-ready dependency.

Where it fits

Robotics control loops

Closed-loop control with deterministic IPC between perception, planning, and actuation processes — without paying the cost of ROS-style transport overhead.

Robotics stacks often pay 10×–100× their compute budget in message serialization. taktora moves the data without copying or allocating, so the control loop runs at the rate the hardware demands, not the rate the middleware tolerates.

iceoryx2 ↗

Industrial automation

EtherCAT SubDevice integration and CAN/SocketCAN connectors out of the box. Same connector seam for both.

Drive a SubDevice’s process data through a strongly-typed connector. CAN frames flow through the same ChannelWriter / ChannelReader API. Codegen for device descriptions (EDS for CANopen, ESI for EtherCAT) is being layered in.

ETG (EtherCAT Technology Group) ↗

Distributed real-time systems

Zenoh-backed pub/sub and query/reply for multi-host coordination, with timeout-correct sealed queries and peer-driven health.

When the system spans hosts, the executor still owns the timing — Zenoh handles the wire. Same connector seam, same health model, same observability hooks.

Zenoh by ZettaScale ↗

Partner / Funding

Looking for customers, collaborators, and research partners.

taktora is research-stage open source — technically real (ten crates published, MIT / Apache-2.0), commercially open. We're looking for industrial pilots in real-time robotics or fieldbus integration, EU consortium partners for Horizon-scale projects, and engineers who want to co-shape the architecture. Reach out if you can use what's here today, want to fund what comes next, or want to collaborate on the open-source roadmap.

info@dahlke-engineering.com

Behind taktora

I'm Patrick Dahlke — a principal engineer based in Germany. Middleware and network / transport protocols are where I've put in the hours: I co-maintain the iceoryx2 C# bindings alongside the core iceoryx2 team, and I'm the developer behind Adsify and OpcSharp — the latter with over 20,000 NuGet downloads.

taktora is the next experiment in that lineage: a Rust-native execution and connector framework that replaces the heavyweight middleware automation and robotics teams are stuck with. The goal: break out of the legacy, slow PLC development process — into something software-native. Open-source, built in the open, actively maintained.