KEI

KEI

Rust OS kernel for industrial IoT gateways + no_std bridge library for embedded sensor nodes

License: SySL License: MPL-2.0 Checks

English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Français · Español · Русский · العربية

What problem does KEI solve?

Industrial IoT gateways sit between field devices (sensors, PLCs, actuators) and the cloud. They need real-time discipline for protocol polling, a full network stack for cloud connectivity, safety guarantees that C-based RTOSes and full Linux cannot provide, and a small auditable footprint.

KEI is built in Rust on a safe-kernel architecture, giving you memory safety, real-time capability, and a complete protocol stack in one system.

flowchart TB
    subgraph Gateway["KEI kernel (this repo)"]
        KERN["RTOS-grade kernel\nARM64 / RISC-V"]
        NET["Full network stack\nMQTT · WebSocket · HTTP"]
        DRV["Industrial protocol drivers\nModbus · CAN · S7comm"]
    end
    subgraph Sensors["Sensor nodes"]
        EMB["embassy MCU firmware\nusing kei no_std library"]
    end
    SENSORS -->|"kei wire protocol\n(UART / RS-485)"| Gateway
    Gateway -->|"WebSocket / MQTT"| CLOUD["Cloud platform\n(Entelecheia)"]

What's in this repo?

ComponentLocationWhat it does
KEI kernelworkspace rootRust OS kernel for ARM64/RISC-V edge devices. Runs the evernight protocol broker.
kei librarypackages/kei/#![no_std] library for embassy sensor nodes: wire protocol, manifest schema, HAL traits.

Quick start

Kernel:

just build        # Build for default board (NanoPi R3S)
just test-all     # Boot-test all architectures in QEMU

Library:

cd packages/kei
cargo test --all-features    # 20 tests
cargo run --example host_demo  # Wire protocol demo

See the library guide and benchmark results for details.

Ecosystem

License

SySL-1.0 for KEI's own code. Vendored code under MPL-2.0. See LICENSE and LICENSE-MPL.