The Product · ROSA

The tools your team builds connected products with.

ROSA is development infrastructure and tools, one product: your team builds the system, tests it on real hardware, proves it with evidence from real records, and steers the whole portfolio. Everything lands in your repos, your CI, your infrastructure, as your code.

Let's talk How an engagement starts
ROSA, your portfolio status live

One product

What your team does with ROSA.

Four jobs, one product. ROSA carries the work that is nearly the same in every connected product, so your team's time goes into what makes yours different.

Build

Model your product explicitly: hardware target, modules, how they communicate. ROSA generates the system code deterministically and brings ready-made, maintained modules plus managed Zephyr and Linux.

Test

Author tests without ceremony, run them in emulation or on your hardware benches, see results in the CI you already run, and gate releases on facts.

Prove

Compliance evidence as a by-product of building: a live SBOM per build, CVE handling with recorded evidence, exportable packs per release. Evidence readiness for the CRA, from the first build.

Steer

Status, forecasts, and policy adherence derived from what actually ran, never written by hand. Management and engineering look at the same records.

A fair question

Zephyr is free. The vendor SDK is free. So what does ROSA add?

The open base is genuinely good, and ROSA builds on it instead of replacing it. Here is the honest division of labour: what the free pieces give you, and what still has to be built for every product.

The open RTOS (mainline Zephyr) and embedded Linux

Kernel, scheduler and threads, drivers, protocol stacks: BLE, Matter, CAN, HTTP. Free and mature.

The hardware vendor SDK

The same, packaged for that vendor's silicon: board support, drivers, examples. Also free.

What remains for your team, without ROSA

Application structure, how components communicate, hardware configuration, the security and update system, the test setup, toolchain and CI, compliance evidence. And your product logic.

What remains for your team, with ROSA

Your product logic. The rest arrives as maintained modules, templates, deterministic generation, and tooling, and we keep the OS base current, secure, and compliant.

Nothing is forked and nothing is replaced: ROSA builds on mainline Zephyr and Linux, and we keep that base current so your team does not have to.

Build · your model

Your system in one model. Everything else, generated.

You define what your product is, in an explicit model. ROSA generates the system around your code deterministically: reviewable, repeatable, never a guess.

ROSA, the system designer

The system designer: hardware target, patterns, modules, and the topics that wire them. One editor, one model. The graph updates as you configure it and can never drift from what actually gets generated.

The product model lives in a single type-safe configuration: your hardware target, the modules that make up your application, and how they communicate. Configuration errors are caught at translation time, before your compiler ever sees the code.

Modules never reference each other directly. All communication goes through generated, typed interfaces on named topics: publish/subscribe or request/response, enforced by architecture rather than convention. When hardware changes, the transport changes. The interface does not.

The result is a clean separation of concerns: infrastructure code is generated and never touched by hand. Your team works in exactly two places, the model and the business logic.

You define

  • Hardware target and board configuration
  • Your application modules and ready-made ROSA modules
  • Communication topology and data flow
  • Execution model per module (shared or dedicated thread)

ROSA generates

  • C++ headers and sources for all module interfaces
  • Typed communication infrastructure between modules
  • Build scripts and configuration symbols
  • System initialisation and lifecycle management

Build · maintained parts

What should be identical across every product, maintained by us.

The part of firmware that is the same everywhere, breaks everywhere, and eats roadmaps everywhere: board support, connectivity, updates, security. Your team picks it as ready-made modules, and we keep them current so your team ships product.

ROSA, module policies: the catalog and allow-list

The module catalog: reviewed like a dependency manifest, with every entry's status and where it's used.

Every module goes through the same allow-list your architects control: approved, in review, or blocked, with a reason attached. Your team picks from a catalog we keep patched and current, not from a pile of vendored code nobody owns.

Board & Zephyr

Board support and mainline Zephyr integration: a pilot puts ROSA on your own SoC in one week. Scalable systems architecture with clean separation of concerns by default.

Connectivity & updates

Matter, Thread, KNX IoT, BLE Mesh, Wi-Fi: standards implemented once, not re-fought per product. OTA updates with MCUboot, A/B partitioning, and rollback out of the box.

Security & production

Dependency and vulnerability management: we keep up so you don't have to. System health, diagnostics, logging. End-of-line testing and provisioning, factory-ready from the start.

The cost of keeping these parts up to date is shared across all ROSA customers, instead of falling on your team alone. That's the entire economic point.

Test · Prove

Test on real hardware. Prove it with the same records.

Your team authors tests without ceremony, runs them in emulation or on the bench, and gates releases on facts. The same records become compliance evidence: a live SBOM per build, CVE handling with recorded evidence, exportable packs per release. That is evidence readiness for the CRA, not a binder assembled before the audit.

ROSA, live device console

The live device console: engineers work live with the device, and every interaction can become a regression test on the spot.

Tests run in emulation or hardware-in-the-loop on your benches, and results land in the CI you already run. Every green checkmark drills down to its evidence: test run, commit, artifact, approval. Release gates evaluate live instead of being asserted in a meeting.

Steer

You always know where your products stand.

Embedded development is usually a black box between kick-off and release. ROSA opens it, for every role that has to answer for the product.

ROSA, portfolio status with forecasts

Your portfolio status, live: every project's progress, forecast, and upcoming milestone, derived from the records, not from Friday reports.

Status and forecasts derive from what actually ran: test results, findings, milestone gates. Deviations are explicit overrules with an owner and an expiry, never silent. Management and engineering look at the same records, so status meetings stop consuming engineering time.

For management

Status and forecasts per project, derived from the actual records: test results, findings, milestones, not from hand-written Friday reports.

For architects

Company-wide policies: approved hardware, module allow-list, sanctioned patterns, with per-project adherence visible at a glance.

For engineers

Architecture editing, test authoring, live device consoles, milestone gates: the daily work, in the same interface everyone else looks at.

Ownership

Your code stays yours. In writing.

No lock-in. No black box.

Generated code is readable, reviewable, and yours, with no runtime dependency on us. You own the code, the learnings, and the product. If 4Rooks disappeared tomorrow, you keep everything you ship.

Runs in your infrastructure.

ROSA runs where you run it: your repos, your CI, your infrastructure, locally or in your backend. Nothing of yours runs on our servers.

Mainline Zephyr. No fork.

ROSA builds on the standard toolchain your team already knows: devcontainer, CI, upstream Zephyr. Your engineers stay employable, your stack stays portable.

Deterministic generation. Not AI.

An agent can help you draft the model. Generation from the model is deterministic: same model, same code, every time. AI tools work exceptionally well with ROSA, because the structure is explicit, but your firmware is never a language model's guess.

Ready to see it on your hardware?

We start from your existing setup. The first conversation is 45 minutes, no commitment, no sales deck.

Let's talk →