๐ 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.
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:8080See sandbox/ for the endpoints (REST :8080, OPC-UA :4840, MariaDB :3306).
- Get OSOlogic onto the board โ flash a pre-built image or clone the platform.
- Run the installer โ the guided wizard
sudo oso-setup(fast, ncurses UI with a plain-text fallback), or the advancedinstall_OsoLogic.shfor full control.
โ Deployment guide ยท Installer reference
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.
- 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.
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/.
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.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 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 โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
- 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
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
| 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 |
| 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 |
| 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 |
| 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 |
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.
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).
- 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/.
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.
