Open core

The stance, in writing.

Infrastructure you wire into a restaurant should not be able to disappear behind a pricing change, an acquisition, or a dead cloud. So the parts you depend on are open, and the business is built on the parts you'd rather pay for anyway.

The split

Open where you depend on it. Paid where we do the work.

Open — free forever

  • The wire protocol.The local HTTP API, command and telemetry schemas — published as code, with a conformance suite so "implements the protocol" is checkable, not marketing.
  • The firmware. Flash your own ESP32-S3 boards. A node you own keeps working even if this project stops.
  • The digital twin. The simulator and dev tooling, free to run in CI.

Paid — when it exists

  • Hardware.Assembled, cased, supported nodes — for people who don't want a soldering hobby.
  • The fleet control plane. Monitoring, remote config, and OTA updates across hundreds of sites. Optional by architecture: a print job never routes through it.
  • ISV licensing.White-label builds, pre-flashed configs, and "works with" conformance certification for POS vendors.

None of the paid tiers exist yet, and that's deliberate — the roadmap gates the hosted layer on pilots actually asking for it.

Why this split

Because it's the only model that survives contact with this industry.

Restaurant hardware outlives companies. The precedents we're copying are the ones that respected that.

Tailscale

The local/paid split

Open client, free local data plane; the paid product is centralized management. Nodes work the same way: local printing is free forever, fleet management is the product.

Shelly

Cheap open hardware, at scale

ESP32-class devices with a documented local API grew into a €150M/yr public company. Open local APIs and commercial success are not in tension.

Home Assistant / ESPHome

Community as the moat

The most valuable asset in this niche is a crowdsourced database of printer quirks. That only happens around an open project.

Status

Where the code is right now.

Honesty section: the repository is not public yet. It opens with the pilot phase, once the licensing is finalized and the docs won't waste your evening. What's already true:

  • · The protocol, firmware, twin, and conformance suite exist and run in CI today — 119+ TypeScript tests, C test suites under AddressSanitizer, and the real firmware binary booting in an emulator on every push.
  • · The protocol schemas are shared, in code, between the firmware, the twin, the tools, and this website — there is exactly one definition of the wire format.
  • · Early access (waitlist) gets the repository first, before the public launch.