Thermal Stabilization


Zivid cameras are facilitated with Thermal Stabilization which regulates the internal temperature of the projector to 35° Celsius depending on the ambient temperature. Thermal Stabilization is on by default and starts to control the internal temperature once the camera is powered on. It is designed to reduce the impact of temperature-dependent performance factors by reducing temperature fluctuation caused by variable duty cycle. Hence, with Thermal Stabilization the trueness of the camera after an inactive period is closer to the trueness that is obtained during continuous capturing. This allows the robot to pick with almost as high confidence in its picking pose at the start as at the end of the camera’s working period.


The Thermal Stabilization is configured to keep camera operating parameters, such as temperature and accuracy, in the optimal working range.

The Thermal Stabilization mode will heat the camera from the moment the camera powers on, switch off during capture, and resume heating 10 seconds after the last capture. Hence, the Warm-up time is reduced because the camera is warmer in comparison to a cold camera assuming the camera has been powered on for approximately 10 minutes before initializing warm-up. In particular, the Warm-up time in low-duty cycle applications where the capture cycle is more than 10 seconds is reduced because the thermal stabilization mode emulates a very high-duty cycle application in between warm-up captures.


It is still necessary to run Warm-up because the target temperature of the application may differ from the temperature that Thermal Stabilization stabilizes at. It is especially important that Warm-up is ran before infield correction to ensure optimized trueness for your application.


The Zivid cameras uses Temporal Structured Light to produce 3D data. This technology depends on the position of the projector relative to the camera. As the temperature changes, so does this relative distance. While this is not the only factor that is temperature dependent, it is the most obvious. All Zivid cameras are individually calibrated at multiple temperatures to account for these changes. However, there are still some changes with temperature during the warming and cooling phases of the camera which is referred to as warm-up drift. The technical datasheet numbers take these changes into account. With Thermal Stabilization the camera can to a higher degree adjust for these temperature-dependent changes that occur during warming and cooling phases by controlling the internal temperature of the projector. Thus, there is less thermal variation between an active and inactive camera.

How it works

Thermal Stabilization controls the internal temperature by duty cycling the primary heat source of the camera, the projector. To produce heat while ensuring minimal light leakage the projector is duty cycled with a black image. The duty-cycling frequency is set relatively high both to emulate a very high duty cycle application and to avoid flickering in the leaked light.


The small amount of light leakage from the projector is seen as yellow.

Thermal Stabilization controls the internal temperature of the projector to 35° Celsius depending on the ambient temperature. This means that, since the control input is restricted, the target temperature of 35° Celsius might not be reached if the temperature difference to the ambient temperature is too large. For such scenarios, the asymptote that the internal temperature converges to is closer to the target temperature for the application in comparison to the reference temperature. Either way, Thermal Stabilization results in less thermal variation, meaning improved temperature stability and, thus, improved trueness for variable-duty cycle applications.

Thermal Stabilization is active from the moment the camera is connected to the power supply and reactivates 10 seconds after its last capture. This means that, if the application has a capture cycle below or equal to 10 seconds, Thermal Stabilization is only on during scheduled pauses.


There is a switching time penalty to configure the projector from thermal stabilization mode to capture mode. The switching time increases with the length of the projector sequence that is used for capture. The worst case scenario is HDR captures taken with stripe where the time penalty is 40ms.

How to disable it

Thermal Stabilization can be disabled via the configuration file, Config.yml.

If the file already exists and its located in %LOCALAPPDATA%ZividAPI for Windows or "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API for Ubuntu, update it with the following information:

    serializer: 1
    data: 16
            Enabled: no

If the Config.yml file does not exist, download it and place it in the following directory:

move %HOMEPATH%\Downloads\Config.yml %LOCALAPPDATA%\Zivid\API\
mkdir --parents $XDG_CONFIG_HOME/Zivid/API
mv ~/Downloads/Config.yml $XDG_CONFIG_HOME/Zivid/API/


If $XDG_CONFIG_HOME is not set use $HOME/.config.


Any existing Config file will be overwritten.


Zivid configuration files must use .yml file extension ( not .yaml).

The setting in Config.yml takes effect the first time an instance of the SDK connects to the camera. This can be done in the following way:

  • Run ZividListCameras to ensure that the camera is connected

  • Run the following lines two lines:

    Go to source


    Zivid::Application zivid;
    Go to source


    var zivid = new Zivid.NET.Application();
    Go to source


    app = zivid.Application()

    Go to source


    auto camera = zivid.connectCamera();
    Go to source


    var camera = zivid.ConnectCamera();
    Go to source


    camera = app.connect_camera()

Version History




Thermal stabilization is on by default for Zivid 2 and can be disabled by configuration. Thermal stabilization starts to regulate the internal temperature when the camera is powered on and after 10 seconds of inactivity.


Thermal stabilization is added as an experimental feature that can be enabled.