ZED Playground

This repo provides a Docker Compose setup and Dev Container config based on stereolabs/zed:5.1-gl-devel-cuda12.8-ubuntu24.04.

Prerequisites

  • Docker + Docker Compose v2
  • NVIDIA Container Toolkit (GPU support)
  • ZED camera connected via USB (optional)

If you use GUI apps inside the container, you need X11 access from the host.

Quick Start (Docker Compose)

  1. Allow local X11 access for root:
xhost +local:root
  1. Start the container:
docker compose up
  1. Open a shell in the running container:
docker compose exec zed bash

Dev Container (VS Code / compatible)

  1. Open this folder in a Dev Container-capable editor.
  2. It will use .devcontainer/devcontainer.json and docker-compose.yml.

Notes

  • If you are on Wayland, X11 forwarding may require XWayland. If GUI apps do not appear, log into an X11 session or enable XWayland.
  • USB devices are passed through via /dev/bus/usb and the container runs privileged for camera access.
  • The workspace is mounted at /workspaces/zed-playground.

Udev Rules (Host)

Udev controls device permissions and power settings on the host. If ZED sensors fail to initialize inside the container, the host likely does not allow non-root access to the camera MCU/IMU or has USB autosuspend enabled.

This repo provides two options:

  • misc/99-slabs.rules: a ready-to-use rule file that grants access to ZED USB/HID devices and disables autosuspend for known ZED USB IDs.
  • misc/udev_fix.sh: downloads the official 99-slabs.rules, installs it to /etc/udev/rules.d/, and reloads udev.

Run the script on the host (not in the container), then unplug/replug the camera so the new rules take effect.

  • /usr/local/zed/samples has ZED SDK sample applications.

See adujardin/setup_zed_udev-rules.sh from stereolabs community.

Calibration Download

If automatic calibration download fails, grab it manually:

http://calib.stereolabs.com/?SN=<ZED_SN>

<ZED_SN> is the decimal serial number without the SN prefix.

Place the downloaded SN<XXXX>.conf in the default settings path:

  • Linux: /usr/local/zed/settings/
  • Windows: C:/ProgramData/stereolabs/settings

If you pass a custom settings path in your app, the SDK will try that first and fall back to the default path if the file is not found.

See also

Description
No description provided
Readme 5.2 MiB
Languages
Python 96.5%
C++ 3.2%
CMake 0.1%