Your program compiles, runs on the development PC, and then will not start on the controller beside the line. The code is rarely the problem: the target machine is missing the runtime half of your vision library, or the license that lets it execute there. This guide lists everything that has to be installed and activated on a target machine, why a development license does not travel with the executable, and the steps, arithmetic and checks that get the deployment right the first time. If an executable already fails with a missing-component message, the vision application startup error guide narrows the cause. This guide plans the deployment so that message never appears.
What has to be on the target machine
A deployed vision application is a stack, and every layer has to exist on the machine that runs it:
- Your executable, plus its models, scripts and configuration files.
- The library vendor's runtime package, installed from the vendor's installer, at the version your build linked against.
- A runtime (deployment) license activated on that machine, through the vendor's documented activation procedure.
- The camera drivers for the interfaces you use: the network driver a GigE port needs on the target NIC, and the host controller driver a USB3 port needs.
- The operating system runtimes your build links against, such as the C++ runtime packages.
- Drivers for anything else the station drives, for example the serial or network interface of a light controller.
Every item comes from the vendor that owns it: the runtime installer and the license from the library vendor, the camera driver from the camera vendor. Anything assembled by hand on the build machine — a DLL copied out of an install folder, a driver borrowed from another project — is the first thing to fail during a line audit.
Why the development license does not follow the executable
Development seats and runtime seats are different products at every commercial vision library. The development license covers building and debugging on the machine where you develop. Running the built executable on a different computer is deployment, and vendor terms treat it as a separate right: one deployment (runtime) license per target computer on which the application runs. That rule is why a fully activated development PC proves nothing about the second machine.
Some vendors also sell a debug license for attaching a debugger to a deployed runtime; it is a separate item from both the development seat and the deployment license.
If you are still selecting the toolchain, the development environment comparison shows what the licensing models look like before you build on one.
What you need before you deploy
- One deployment license per target machine, from the library vendor.
- The runtime installer whose version matches the library your build linked against.
- Camera driver packages for every camera interface on the target.
- Administrator credentials, and a rehearsed offline-activation path if the machine never touches the internet.
- The application packaged with relative paths for its models and configuration.
- Time for a dry run: as a rule of thumb, half a day per machine the first time, under an hour once the image exists.
Deploy in eight steps
If the cameras arrive late, build and test the application against recorded frames first — the emulation guide covers development without hardware. Then deploy in this order:
- Record what you built. Note the library name and version, the compiler and bitness, and the runtime packages the installer needs. Pin this set in writing; the version-pinning guide explains why one version everywhere prevents the classic build-versus-target mismatch.
- Prepare the operating system. Install updates once, then switch automatic updates off — an unattended reboot mid-shift is a self-inflicted outage. Give the camera NIC a static IP and the machine a reliable time source.
- Install the vendor's runtime package from its installer. The installer registers components and lays down prerequisites that a file copy misses; do not assemble the runtime by hand.
- Activate the deployment license on that machine, exactly as the vendor's documented procedure describes — serial number, license file or code exchange. Do this before the machine is rack-mounted.
- Install the drivers for your area scan cameras and connect each one. A GigE camera needs the vendor's network driver bound to the target NIC; a USB3 camera needs the host controller driver. Confirm every camera enumerates before moving on.
- Deploy the application with relative paths for models, images and configuration. Absolute paths from the build PC are the most common reason a deployed program cannot find its files; the model file path guide covers the failure pattern.
- Configure startup the way the line will run it: auto-login as the operator account, the application started as a scheduled task or service, a watchdog that restarts it after a crash.
- Image the finished machine. A disk image of the installed, licensed, tested target is your spare-in-minutes recovery and the reference for the next station.
Worked example: count the licenses, budget the disk
A three-station line with one configured spare:
Adding a fourth station next quarter is one more license; rebuilding the executable changes none.
Now the disk on the license-included controller in the comparison below — 8 GB of memory, 128 GB SSD:
The 30, 3 and 10 GB figures are planning values — measure your own build. Each extra 10 GB of OS, models or local logs takes 2,000 frames off the archive (10,000 MB ÷ 5 MB). If the line archives more than that between maintenance windows, send the defect images to a network store instead of the local disk.
Choosing the target machine
An office desktop runs vision software; it is a poor target machine. A vision controller is built for the job: fanless construction for the electrical cabinet, network ports sized for machine-vision traffic, built-in light controller channels, and a specification you can hold stable across stations.
For a turnkey line where the runtime license should arrive with the hardware:
- LAN ports
- 5+ LAN ports
- USB 3 ports
- 3-4 USB 3 ports
- Light outputs
- 4 built-in channels
- Memory
- 8 GB
It ships with a VM6200Pro license included, so the runtime side of the license plan is settled before the box is opened.
If your application runs on your own deployed runtime, order the controller without the bundled vision software license:
- LAN ports
- 3-4 LAN ports
- USB 3 ports
- 2 USB 3 ports
- PoE
- PoE camera ports
- Light outputs
- 6 built-in channels
Two more cover the ends of the range: the MV-VC2140-128G40-1T suits a single-camera station on an Intel N-series processor, and the MV-VC5525-256G70-NN carries PoE camera ports, 8 built-in light channels and 32 GB of memory for a multi-camera cell.
The four side by side:
| Specification | MV-VC3301H-128G66 | MV-VC2140-128G40-1T | MV-VC4712-256G10-2TH | MV-VC5525-256G70-NN |
|---|---|---|---|---|
| CPU | Intel® Core i3-8100 | Intel® Processor N97 | Intel® Core Ultra 7 processor 255H | Intel® Core i5-12400 |
| Memory | 8 GB | 8 GB | 2 × DDR5 6400 MHz non-ECC SO-DIMM memory slots; Up to 48 GB per slot, Up to 96 GB with two slots | 32 GB |
| Storage | 128G SSD | 128 GB SSD + 1 TB HDD | 1 × 7-pin SATA3.0, 1 × M.2 SATA 2280, 1 × M.2 NVMe 2280; 1 × 2.5"/3.5" drive bay | 256 GB SSD |
| GPU | Intel® HD Graphics 630 | Intel® UHD Graphics | Intel® Arc 140T GPU | Intel® UHD Graphics 730 |
| Operating system | Windows 10 64-bit, Not activated | Unactivated 64-bit Windows 10 LTSC 21H2 | Windows 11 64-bit (not activated) | Unactivated Windows 10 |
| Encryption method | VM6200Pro license key | Not support | MV-VC47**-**6-**: VM6200pro encryption supported; MV-VC47**-**0-**: encryption not supported | – |
| Video output | HDMI interface × 1, VGA interface × 1; Supports independent display output at the same time; Max. resolution 1920 × 1080 @ 60 Hz | HDMI interface × 1, VGA interface × 1; Supports independent display outputs at the same time; Max. resolution 1920 × 1080 @ 60 Hz | Independent dual display supported; 1× HDMI port, Up to 1920 × 1080 @ 60 Hz; 1× VGA port, Up to 1920 × 1080 @ 60 Hz | HDMI interface × 1, VGA interface × 1; Supports independent display output at the same time; Max. resolution 1920 × 1080 @ 60 Hz |
| Digital I/O | 8 digital isolated inputs supported; 16 opto-isolated outputs supported (NPN/PNP switchable) | Opto-isolated input × 8; Opto-isolated output × 8 | 18 digital isolated inputs supported; 18 isolated digital outputs | Opto-isolated input × 8; Opto-isolated output × 12 ( supports NPN/PNP switching), digital-isolated low-side driver output × 8; Non-isolated bi-directional differential I/O × 4 |
| Network interface | 6× Gigabit Ethernet ports | GigE interface × 4 | 4× Gigabit Ethernet ports; PoE power supported, 15 W per port, 25 W total across 4 ports | GigE interface × 7, including interface for PoE × 4 |
| USB Interface | USB 2.0 × 4; USB 3.0 × 4; Built-in USB 2.0 × 1 | USB 2.0 × 2; USB 3.0 × 2 | 4× USB 2.0 ports; 2× USB 3.0 ports; 1 × internal USB2.0 port | USB 2.0 × 4, USB 3.0 × 4, built-in USB 2.0 × 1 |
| Serial Port | 2× full-function RS-232, RS-485/RS-422 switchable | RS-232 × 1, supports switching to RS-485 or RS-422 | 2 × configurable RS-232/RS-422/RS-485 | RS-232 × 2 by default, supports switching to RS-485 and RS-422 |
| Light interface | 4-channel 24 V constant-voltage light drive, Max. power per channel: 72 W, Max. power (4 channels): 150 W | Light interface with 24 VDC constant voltage × 4; (Brightness is adjustable. Max. current 3 A for single light interface, and total max. power consumption 80 W. Supports light mode switching between strobe and solid via external control) | SMR-03V-BC female; 6-channel 24 V constant-voltage light drive, Max. power per channel: 72 W, Max. total power: 110 W | 24 VDC constant voltage × 8; (Max. power consumption of single channel is 72 W, total max. power consumption 190 W) |
| Price | $2,419.00 | $1,679.00 | $6,049.00 · quoted | $4,479.00 · quoted |
All 4 share: Certification CE, KC. Values as printed in each product's data sheet; open a part for its drawing and full specifications.
Verify the deployment before it goes live
Test the machine the way it will run, not the way you built it:
- Run with the development tools absent — never install them on the target. A program that starts only when the SDK is present is still missing its runtime.
- Run under the line's user account, not your administrator account.
- Disconnect the office network. Anything that reaches out for a license check or model download should fail here, in front of you, not on day 30.
- Trigger 100 cycles and measure trigger-to-result time against the bench number.
- Power-cycle three times and let the watchdog do its work.
When part of the processing splits between camera and host, the edge inference deployment guide plans that division. If the executable still fails after all this, treat it as diagnosis rather than planning, and work through the startup error guide linked at the top.
Common mistakes
- Copying DLLs instead of installing the runtime. It skips registration, prerequisites and the license, so it fails both technically and contractually.
- Assuming the development license covers the line. It covers the build PC; every target needs its own deployment license.
- Driver gaps. A USB3 camera that enumerates but drops frames on the target usually has a host controller or bandwidth problem — the USB3 transfer error guide walks that diagnosis.
- Version drift. A runtime one minor version away from the linked headers can load and still misbehave; the SDK upgrade guide shows what breaks after a library upgrade.
- Testing only as administrator, then watching it fail under the operator account on day one.
- Re-imaging a licensed machine without reactivating. Activation is typically bound to the machine, so after a re-image, reactivate through the vendor's documented procedure before the shift starts.
- Blaming the license for every failure. After a clean deployment, runtimes still fail on infrastructure — an HMI runtime that cannot find its controller after an application deployment, for example, has its own documented diagnosis.
When the per-seat runtime is not the answer
Per-machine deployment licenses are the standard model for commercial vision libraries, but three cases change the math:
- Permissively licensed open-source libraries under BSD or Apache 2.0 — OpenCV is the workhorse example — carry no per-machine fee. You trade vendor support and some algorithm breadth for a runtime you can ship with the machine.
- Controllers that bundle a runtime license settle the license question at purchase, as the two variants in the comparison above show.
- On-camera processing moves the runtime onto the camera and leaves the controller as a pass-through; the trade is a compute ceiling per camera against zero runtime installs on the PC.
Whichever route you take, the discipline is identical: know the versions, keep the paths relative, and test without the development tools.
Pre-flight checklist
Before you order:
- License plan: one deployment license per machine that will run the application, spares included.
- Controller variant matches the plan: license-included for bundled software, unlicensed for your own runtime.
Before you ship:
- Runtime installer version pinned to the build.
- Camera drivers on the install media.
- Offline activation path rehearsed.
At the machine:
- Runtime installed from the vendor's installer, license activated, every camera enumerating.
- Application running as the line user, watchdog armed, disk image taken.
If you want the license plan and the controller list checked before you order, send the station count and camera interfaces through the system configurator or contact the applications team. The systems topic page collects the rest of the deployment and integration guides.
Questions
Can I run the deployed application while the development license dongle sits in the target machine?
No. Development and runtime rights are separate products at every commercial vision library vendor: the development seat covers building and debugging on the build PC, and running the built executable on another computer needs that machine's own deployment license under the vendor's documented activation. Plan one deployment license per target computer, or build on a permissively licensed library such as OpenCV when the per-seat model does not fit your product.
How many deployment licenses does a three-station line with one spare controller need?
Four. The license count follows machines that run the application, not developers or cameras: three production controllers plus the spare, activated before it goes on the shelf so a swap stays a short disk change. Adding a fourth station next year means a fifth deployment license; rebuilding your executable does not change the count.
Do I need a new deployment license after rebuilding or updating the application?
No. Deployment licenses attach to target machines, not to individual builds. You can rebuild, patch models and update your own executable on a licensed machine without touching the license. What needs attention is the library version: a major runtime update can require installing the matching runtime package on every target, so pin the version you built against and check the vendor's compatibility table before upgrading.
Do any vision controllers ship with the vision software license already included?
Yes, on selected models. The MV-VC3301H-128G66 ships with a VM6200Pro license included, while the MV-VC4712-256G10-2TH is ordered without a VM license key — the right variant depends on whether your application runs on the bundled software or on your own deployed runtime. Ordering the unlicensed variant means you are not licensed twice for software you will not run.
What activates the runtime license on a machine with no plant network access?
Use the vendor's documented offline activation: many vision libraries support a license file or code exchange started on the air-gapped target and completed on a connected PC. Generate the request on the target, carry it to an internet-connected machine, and bring back the activation file. Do this before the controller is rack-mounted, while you still have a desk, a keyboard and an afternoon.
Can I debug my code on the deployed machine?
Only if your vendor sells a debug license for deployed runtimes — several do, as a separate item from both the development seat and the deployment license. Without one, debug on the bench, where the development license covers execution, and rely on logging on the line. Attaching a debugger to the target without the vendor's debug rights breaks the same per-machine rule the deployment license enforces.

