link icon
Ask The Community

Do you want to enjoy the new TeamViewer user interface for Windows?

Download the new version and let us know what you think about it! 👉 Please click here 👈

Can I run TeamViewer IoT on Yocto?

This article applies to all TeamViewer IoT users.

    The Yocto Project enables the creation of custom Linux-based systems for embedded devices. 

    The TeamViewer IoT Agent will run on Yocto Linux devices given minimum requirements and configurations are met.

    In order to run the TeamViewer IoT Agent, please ensure the device/build satisfies the following: 

    System requirements


    • Arch model: The following are supported:
      • ArmV5
      • ArmV7
      • x86 (32-Bit) (Pentium 4 or newer model)
      • x86_64 (64-Bit) (Pentium 4 or newer model)
      • Note: Older CPU models will cause "Illegal Instruction" error.
    • At least 30 MB free disk space on rootfs partition of the device
    • BASH Unix shell
    • systemd software suite
    • glibc-utils package (version 2.17 or higher)

    Additional libraries/packages Recommended for debugging / integration:

    • libavahi-client3
    • libavahi-common3
    • libavahi-common-data
    • avahi-daemon

    Build Configuration

    When creating your Yocto image, the build configuration, specified in (conf/local.conf), you will need to include additional properties. The example below shows the configuration for preparing an image for a Raspberry Pi 3 device.

    • MACHINE = "raspberrypi3" 
    • PREFERRED_VERSION_linux-raspberrypi = "4.%" 
    • DISTRO_FEATURES_append = " systemd"
    • VIRTUAL-RUNTIME_init_manager = "systemd" 
    • IMAGE_INSTALL_append = " glibc-utils bash"
    • IMAGE_ROOTFS_EXTRA_SPACE = "50000"  #50 MB


    The current TeamViewer IoT Agent comes in a Debian package (.deb) format. As your Yocto instance may not support Debian package installation via DPKG, it is suggested that the TeamViewer IoT Agent package be downloaded and unpacked onto a non-Yocto OS (e.g. Ubuntu).

    • Step 1: From a non-Yocto Linux device, download the latest TeamViewer IoT Agent from
    • Step 2: Unpackage the downloaded file to a self-contained folder using "dpkg-deb -R":
      • For example:
        • dpkg-deb -R teamviewer-iot-agent-armv7_1.0.58_armhf.deb ./
        • replace "teamviewer-iot-agent-armv7_1.0.58_armhf.deb" with the filename of the Agent you downloaded
    • Step 3: Mirror folder/file path from self-contained package onto your Yocto build
      • the self-contained folder will contain all the files/folders (binaries/configs) required to run the TeamViewer IoT Agent. These files need to be moved over to your Yocto build preserving their folder structure.
      • As your Yocto build is custom built, some or all of the folder structures may be needed to be created manually
        • For example: the self-contained folder may contain a file global.conf located under "var/lib/teamviewer-iot-agent";
        • you should copy this file to your Yocto build and place it under "/var/lib/teamviewer-iot-agent". If /var or the nested folders do not exist, create them using the mkdir linux command.
        • Repeat the process for all files/folders contained within your self-contained folder
    • Step 4: Start the TeamViewer IoT Agent
      • you will have to start the TeamViewer IoT Agent according to the services you have running on your Yocto device
        • For example:
          • sudo systemctl restart teamviewer-iot-agent.service
          • Note: the example above assumes systemctl exists on your Yocto build

    If you have any issues or specific questions, please refer to the TeamViewer IoT knowledge base & support communities.


    • Hello,

      first of all thank you for the manual.

      We still have a few questions. We have gone through steps 1 to 2 as described. At point 3 we are missing several files. Could you provide us with the complete folder structure or name it?


    • mircea_c
      mircea_c Posts: 125 Staff member 🤠

      Hi @IOT-KI

      Could you follow  the steps below?

      -Download our image for target architecture. For example ( wget
      -Unpack Debian package. For example ( dpkg -xa teamviewer-iot-agent-armv7_2.7.7_armhf.deb . )
      -Unpack installation scripts ( dpkg -e teamviewer-iot-agent-armv7_2.7.7_armhf.deb ). Scripts will be in DEBIAN directory.
      -Add unpacked package files with structure which used in package...
      -Add preinst and postinst scripts to the target image
      -Run preinst and postinst scripts during first boot

      Our Agent depends on `bash perl dbus glibc glibc-utils libavahi-core libavahi-common libavahi-client procps curl ca-certificates libdbus` libraries.




      Tech Support IoT

      Did my reply answer your question? Accept it as a solution to help others.
      Find this helpful? Say thanks by clicking on the Thumbs Up button.

    • mircea_c
      mircea_c Posts: 125 Staff member 🤠

      Hi @IOT-KI 

      Could you check your account for private message?

      Thank you

      Tech Support IoT

      Did my reply answer your question? Accept it as a solution to help others.
      Find this helpful? Say thanks by clicking on the Thumbs Up button.