Machine software,
modelled once.
UP turns your machine architecture into a model — and the model into production PLC code for B&R, Beckhoff and Siemens. One structure, one methodology, every platform.
UPstudio & UPcode
Two editors. One model.
Model in UPstudio or in Visual Studio Code — the same UP metamodel, the same validation, the same generated code. UPcode is a frontend on the UP runtime, so there is no migration: adopt it where it fits and keep UPstudio wherever you want. Both run side by side.
UPstudio
- Model editors, wizards and diagrams
- Validation and code generation
- Hosts the UP runtime, the MCP server and the UPai Assistant
UPcode New
- Actifsource Project Explorer in the activity bar
- Model Inconsistencies view for validation results
- Generate from the Explorer context menu, follow the Actifsource Generator output
UPai
AI in the modelling process — on a harness that holds
UPstudio runs an MCP server that opens the whole UP model to AI coding agents. They read controllers, statemachines and configurations from the live model and write changes back through dedicated tools — instead of you clicking through the UI, you describe what you want.
The model is the harness. Every AI edit passes through the UP metamodel, gets validated against it, and becomes deterministic PLC code from the same generator your hand-built models use. Nothing reaches the controller that the model would not allow.
- UPai Assistant — AI chat right inside UPstudio, with streamed answers, collapsible tool calls and clickable model links
- Ask AI on any resource in the Model Navigator
- Claude and GitHub Copilot supported — tool permissions stay yours to grant
Create a cylinder controller with states RETRACT, EXTEND and the corresponding commands
Controller CYL created: statemachine with RETRACT and
EXTEND, matching commands and guards. Validation is clean — ready to generate.
Less boilerplate. More architecture.
UP gives the development process clear architectural rules and framework elements, so complex machine control systems stay readable, reusable and testable — from the first controller to the tenth machine variant.
Model driven
Describe controllers, units and interfaces in a model. UP generates the PLC code from it — consistently, every time.
Platform independent
The same model targets B&R, Beckhoff and Siemens. Switching vendor no longer means rewriting the application.
CI/CD ready
Models are versioned, validated and generated automatically — every change traceable up to the target system.
ServiceUI included
Every UP application ships with a web HMI for operating, parametrising and observing the machine live.
UPstudio or VS Code
UPcode brings UP modelling into Visual Studio Code, on the same runtime and the same model as UPstudio.
AI-native
An MCP server exposes the model to AI agents — every change validated by the metamodel before it becomes code.
The idea
From machine structure to running code
UP is a development tool for model-based PLC application development that structures and automates the software process. It provides clear architectural specifications and framework elements to implement complex machine control systems efficiently.
- Visual representation instead of scattered source files
- Standardised methodology across teams and projects
- Less complexity, more transparency in the development process
Automation
UP in the CI/CD process
UP integrates seamlessly into existing CI/CD pipelines. Models are versioned and automatically validated; generation, test and deployment steps then run on their own.
Every change becomes controlled, traceable and reliably delivered to the target system — high quality with short release cycles.
ServiceUI
Your application under control at all times
Operate entire machines, adjust parameters and observe the state of individual controllers live — on any device, on every supported platform.


What our customers say
How companies are transforming their automation with UP — developing and maintaining software more efficiently across its entire lifecycle.
«Since the introduction of UP as a modeling and configuration tool for our machines, the engineering and commissioning time per new system has been reduced by a multiple. Confidence in the stability and reusability of developments has increased significantly thanks to the model-based architecture.»
«With AVM, we have a partner at our side who actively engages with the future of automation and software development, contributing highly innovative input to our ongoing progress. Additionally, the UP tool supports us in creating an efficient and modular software environment for a successful future.»
«UP and AVM have shown us what the development process of the future can look like. After just a few months, we were already able to recognize the benefits of integrated simulation, automated testing, and documentation.»
Start now and discover UP
Everything you need to get started with application modelling — on the documentation pages or as ready-made examples in the sample repository.
Behind UP
AVM Engineering — experience that goes into UP
AVM Engineering has been developing customised solutions in industrial automation for over 20 years, with deep expertise in PLC applications for a wide range of industries and complex machines.
With UP we have put that knowledge into a tool that changes how PLC applications are developed: proven best practices, clear structures and modern development approaches on one platform. Experience becomes efficiency — routine becomes innovation.
Get in touch
Technical or commercial questions? Our service desk is available to you.
René Zwingli · +41 71 544 60 86 · rene.zwingli@avm.swiss