Skip to content

OSOlogic/platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

179 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

OSOlogicยฎ โ€” The Modern & Open Automation Platform

OSOlogic logo

License: AGPL-3.0 SDK: Apache-2.0 Release: 1.0 Beta PRs welcome Website

๐ŸŒ osologic.com ยท ๐Ÿš€ Deploy ยท ๐Ÿ“– Docs ยท ๐Ÿงฉ Enterprise ยท ๐Ÿค Contributing

Community Edition โ€” the open-source core of OSOlogic, released under AGPL-3.0.

ยฉ 2026 Roig Borrell S.L. ยท Ibercomp S.L.

An open-source hardware and software initiative to modernize industrial and home automation, bridging the gap between traditional PLC/SCADA/HMI systems and the powerful, flexible world of modern, software-defined computing.


Get started

๐Ÿณ Try it on your PC first โ€” Docker, no board needed

Kick the tyres on any machine. One command brings up the real-time core, MariaDB, the web Manager, Node-RED and a simulated plant you can drive โ€” then read and control live tags over REST, SQL, OPC-UA and MQTT:

git clone https://github.com/OSOlogic/platform && cd platform/sandbox
docker compose up --build        # โ†’ open http://localhost:8080

See sandbox/ for the endpoints (REST :8080, OPC-UA :4840, MariaDB :3306).

๐Ÿš€ Deploy on a board โ€” from bare board to running PLC

  1. Get OSOlogic onto the board โ€” flash a pre-built image or clone the platform.
  2. Run the installer โ€” the guided wizard sudo oso-setup (fast, ncurses UI with a plain-text fallback), or the advanced install_OsoLogic.sh for full control.

โ†’ Deployment guide ยท Installer reference


Overview

OSOlogic is a fully open hardware and software platform designed to serve as an alternative to existing PLC and IoT systems โ€” and as a standard for the ecosystem of single-board computers and microcontroller-based platforms, including maker boards and DIY electronics.

We want to help industry leap forward by adopting modern, flexible technologies, freeing it from planned obsolescence and the limitations of proprietary, closed systems that still dominate machine control, factory automation, and smart environments.

Why? Most existing automation platforms are closed, rigid, and expensive. Modern computing offers better tools, better scalability, and better integration โ€” but the gap remains between industrial-grade reliability and the flexibility of modern development tools. We are building a bridge.


Core Principles

  • Open and hackable โ€” Built from the ground up with open-source hardware and software.
  • Real-time and Linux-based โ€” Optimized Linux distributions with real-time capabilities via PREEMPT_RT.
  • Data-centric โ€” In-memory, real-time database (osodb) at the core for flexible and immediate system interaction.
  • Modular and compatible โ€” Interfaces with legacy industrial standards (IEC 61131-3, Ladder, ST) and supports modern technologies.
  • Secure by design โ€” Encryption, certificates, authentication, firewalls, and more.
  • Universal gateway โ€” Communicates across industrial protocols (Modbus, CAN, EtherNet/IP, PROFINET, OPC-UA) and modern formats (JSON, XML, Protocol Buffers). See the connectivity matrix.
  • Scalable for all โ€” From microcontrollers and single-board computers to industrial PCs, supercomputers and control rooms.
  • SQL & REST direct control โ€” read and control the plant with plain SQL (SELECT / UPDATE) or a JSON/XML REST API (GET / PUT), from any language, no drivers or SDKs.
  • Ready for AI โ€” Designed for the AI era: machine-readable, agent-friendly, and open to what comes next.

Compatible with Node-RED, REST, MQTT, WebSockets, GraphQL, gRPC, containers, time-series and relational databases โ€” and C, C++, Rust, Python, Node.js, .NET, PHP, Java and SQL.


AI-native โ€” Model Context Protocol

Because every value flows through the in-memory osodb hub, OSOlogic can expose the whole plant through a Model Context Protocol (MCP) server โ€” so AI agents can list devices, browse the tag tree, read live values and perform guarded, auditable writes through one safe, open interface. No scraping, no brittle glue. The same hub is also reachable over REST, WebSocket, OPC-UA and MQTT, with deterministic, reversible node IDs.

โ†’ See api/mcp/ and api/rest/.


SQL & REST direct control

Because OSOLogic is data-centric, every value is a row โ€” and a resource. With the right credentials you can read and control the plant with plain SQL or a plain REST API (JSON or XML) โ€” from any language, with no drivers, no SDKs, no exotic libraries:

-- SQL: read the plant, then control it with a set-point (applied by the scan)
SELECT id, value, units FROM tags;
UPDATE tags SET required_value = 1450 WHERE id = '3.14';   -- module 3, I/O 14
# REST: the same, JSON or XML, curl-simple
curl host/api/tags/3.14                        # โ†’ {"value":1450,"units":"rpm",...}
curl -X PUT host/api/tags/3.14 -d '{"required_value":1450}'

Transparent and open to data capture (SELECT or GET straight into any BI tool), dead-simple to control (UPDATE or PUT), and gated by permissions (MariaDB GRANTs / API auth) โ€” the same model that scopes every surface. SQL and REST are first-class control interfaces, symmetric with OPC-UA, MQTT and MCP. See core/osodb and api/rest.


Architecture at a Glance

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                  UI / API / CLI                      โ”‚
โ”‚   webmin ยท HMI ยท ladder-editor ยท REST ยท gRPC ยท MCP  โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚              IEC 61131-3 Language Engines            โ”‚
โ”‚          Ladder ยท ST ยท FBD ยท SFC ยท IL               โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                   osoruntime                         โ”‚
โ”‚            Scan cycle ยท Task scheduler               โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚        osodb         โ”‚         Gateways              โ”‚
โ”‚  RT in-memory DB     โ”‚  OPC-UA ยท Modbus ยท PROFINET  โ”‚
โ”‚  (shared data bus)   โ”‚  EtherNet/IP ยท CAN ยท MQTT    โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚              I/O Layer (HAL + Drivers)               โ”‚
โ”‚        GPIO ยท SPI ยท I2C ยท UART ยท Fieldbus            โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚        OSOlogic Linux / Baremetal (osokernel)        โ”‚
โ”‚    PREEMPT_RT ยท Debian ยท RP2040 ยท STM32 ยท ESP32     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Use Cases

  • General-purpose industrial and home automation
  • Integration with machine vision systems
  • Educational and research use
  • DIY and maker projects with serious capabilities
  • Real-time gateway between legacy machines and modern cloud-based services

Repository layout

OSOlogic follows a modular scaffold designed for multi-target, multi-language industrial automation. Ready-to-flash OS images are published as release artifacts, not stored in the repository; the build systems that produce them live in os-dist/.

Expand the full top-level layout

Core Platform

Directory Description
core/ Platform kernel: osodb (RT in-memory DB), osoruntime (IEC 61131-3 scan cycle), osokernel (PREEMPT_RT patches)
iec61131/ Language engines: Ladder, ST, FBD, SFC, IL โ€” compiled and interpreted
io/ I/O layer: HAL, hardware drivers (GPIO, SPI, I2C, UART, fieldbus), emulated I/O, real-time proxy
gateways/ Protocol connectors: OPC-UA, Modbus, PROFINET, EtherNet/IP, CANopen, MQTT, OPC-DA legacy

Distributions and Hardware

Directory Description
os-dist/ OSOlogic Linux (Debian-based, x86_64/arm64/armv7) and Baremetal builds (RP2040, STM32, ESP32)
bsp/ Board Support Packages: RPi4, RPi5, CM4, BeagleBone, BorrellPLC custom boards
hardware/ Open hardware designs: PCB schematics, BOM, I/O modules, enclosures

Interfaces and Integration

Directory Description
ui/ Web interfaces: admin panel, DB admin, Ladder/ST editors, HMI-SCADA, Node-RED, dashboard
api/ REST, GraphQL, WebSocket, gRPC, MCP endpoints and OpenAPI specifications
cli/ Command-line tools: osctl, osodb-cli, io-probe, plc-flash, diag
sdk/ Developer SDKs: C, C++, .NET, PHP, Python, Node.js

Standards, Tests and Tooling

Directory Description
standard/ OSOlogic open standard: schemas (JSON/XML), canonical data model, protocol spec, RFCs
tests/ Test suites: unit, integration, E2E, hardware-in-loop, RT performance benchmarks
ci/ CI/CD workflows, Docker build images, build and release scripts
docs/ Architecture documentation, API reference, hardware docs, user guide
packaging/ Installers (oso-setup, install_OsoLogic.sh) and distribution packages (.deb, .rpm, .ipk)
contrib/ Community contributions and third-party integrations
logos/ Brand assets: OSOlogic logo (PNG, SVG) โ€” trademark, see logos/README.md

Current Status

OSOlogic 1.1 (codename Teddy) is out. A functional base โ€” the real-time PLC core, osodb with pluggable database backends (down to a bare-metal MCU store), the IEC 61131-3 toolchain, gateways, APIs, web + TUI admin and a global search โ€” already runs on our BorrellPLC devices. We are actively building out the scaffold and hardening the codebase through the Teddy (1.x) line.

Release codenames

OSOlogic major versions are named after bears โ€” starting friendly and growing fiercer as the platform matures: Teddy (1.x) โ†’ Misha (2.0) โ†’ Grizzly โ†’ Kodiak โ†’ Polar โ†’ Ursa. Minor and patch releases keep the current bear, so all of 1.x is Teddy. Each is a GitHub Release.

๐Ÿป Meet the bears in the codename fan zone โ€” a photo tribute from the cuddly Teddy to the Great Bear, Ursa (with a nod to Yogi & friends).

Editions

  • Community Edition (this repository) โ€” the open-source core, AGPL-3.0. Fully functional for building, running and integrating real automation systems.
  • Enterprise add-ons โ€” optional proprietary modules and SLA support for organizations that need to embed OSOlogic in closed products. See Licensing and docs/enterprise/.

Licensing

OSOlogic uses a dual-license model:

Component License
Core platform (core/, iec61131/, gateways/, io/, ui/, api/, cli/) AGPL-3.0-or-later
Client SDKs and schemas (sdk/, standard/) Apache-2.0
Documentation (docs/) CC-BY-4.0
Hardware designs (hardware/) CERN-OHL-S-2.0

The AGPL-3.0 ensures the platform stays open even in cloud/network deployments. The Apache-2.0 SDK lets any application โ€” open or proprietary โ€” integrate with OSOlogic without license friction.

A commercial license is available for organizations that need to embed OSOlogic in closed products or require SLA support. Contact: osologic.team@gmail.com

See LICENSING.md for the full breakdown, CLA.md for contribution terms, and CONTRIBUTING.md to get started.


OSOlogicยฎ is developed and maintained by Roig Borrell S.L. and Ibercomp S.L.

About

Break free from proprietary PLCs. Turn any machine โ€” from a tiny MCU to a server โ€” into a real-time industrial controller you actually own: program it in Ladder, Structured Text or any modern language, and drive every value as a tag over SQL, REST, OPC-UA, MQTT or an AI agent. Open hardware, real-time OS. ๐Ÿป AGPL-3.0

Topics

Resources

License

AGPL-3.0, Unknown licenses found

Licenses found

AGPL-3.0
LICENSE
Unknown
LICENSE-APACHE

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors