One canonical model drives physics-based simulation across MQTT, OPC UA, and more industrial protocols. No hardware required.
Three steps. One canonical model drives everything.
Ask any AI to generate a canonical model, or write one by hand. Typed members, engineering units, lifecycle behaviors, all in one schema.
Physics-based generators run your model. Thermal lag, transport delay, mean-reverting noise. Same seed, same output, every time.
Every protocol publishes from the same tick. Structured topics, typed values, engineering metadata.
miravo/plant/pump-001/temperature Objects.Plant.Pump001.Temperature Register 40001 → 87.3 Industrial software needs better environments, not more random data.
Define assets with typed members, data types, access semantics, engineering units, and lifecycle behaviors in a canonical schema. Every protocol adapter reads from the same asset graph. No translation layers. No drift between what MQTT publishes and what OPC UA exposes.
Generator types model thermal lag, transport delay, and mean-reverting noise. Assets degrade through lifecycle stages. Faults trigger from real conditions and cascade.
MQTT publishes UNS-structured topics. OPC UA exposes typed ObjectTypes with EURange and AccessLevel. One simulation tick drives all protocols simultaneously.
Asset models and scenario templates included out of the box. Run a realistic water treatment plant or smart factory in one command.
Open source. Docker, standalone binary, or bunx. CLI-first with JSON output for CI/CD. Seeded RNG for reproducible runs.
Miravo ships with authoring skills that work with any AI: Claude Code, Codex, Gemini, ChatGPT, OpenCode, and more. Describe what you need in plain language and get realistic models with accurate physics, lifecycle degradation, and fault modes. Review the output, tweak what you need, and run. The fastest path from idea to running environment.
One command. Real industrial data flowing.
Develop against environments with production topology, protocol structure, and behavioral patterns. Faults and edge cases are part of the model, not afterthought test scripts.
Deterministic, reproducible runs across protocols from the same simulation tick. Inject faults on demand. Run headless in CI with zero config.
Run a smart factory or water treatment plant in one command. Inject faults live. Operationally realistic data from real equipment models, not random generators.
Datasets with known fault signatures, degradation curves, and labeled lifecycle transitions. Deterministic seeded output. Scales to 100K+ data points per second.