The Kube project is a Kubernetes control plane implementation written in the Oberon language, designed to run on the Oberon machine architecture. It operates without traditional network stacks like TCP/IP or Ethernet, utilizing a radio-based communication protocol inspired by the original 1980s Oberon workstation design.
The system uses a radio module, the nRF24L01+, which transmits data in 32-byte frames. The custom KubeNet protocol relies on three types of messages: heartbeat signals, pod assignments, and pod specifications. Each message is limited to a single frame to avoid collision issues, as the protocol lacks complex collision detection mechanisms.
The architecture follows the Kubernetes level-triggered model. Instead of sending commands, the controller continuously broadcasts the desired state. If a message is lost, the next cycle corrects the state automatically. This approach ensures reliability without requiring acknowledgments, sequence numbers, or retransmission logic.
The Oberon system, created by Niklaus Wirth and Jürg Gutknecht, features a cooperative multitasking model where a single loop handles tasks. In Kube, controllers are implemented as tasks within this loop, executing every 50 milliseconds. Pod images in this environment are represented as simple Oberon modules rather than containerized file system archives.
The project is available for testing in a browser-based laboratory, where the Oberon machine is simulated via WebAssembly. The source code, documentation, and performance measurements are hosted on GitHub, providing a look at how infrastructure might function with reduced complexity.






