Skip to main content
Version: 0.10.x [Latest Beta]

Runtime dependencies

Some features rely on runtime files that are not shipped inside every compiled SDK package. Barcode reading requires a barcode reader backend, and Ambarella models require the runtime that exactly matches both the exported model and the target chip. These files are stored under <data dir>/dependencies/ and tracked in a local manifest.db.

<data dir> is the SDK data directory (see Configuration and DENKFLOW_DATA_DIRECTORY).

Online (default)

The first time a feature needs a dependency, the SDK downloads the required files from the DENKflow hub, verifies each one, and records it in the manifest. Subsequent runs reuse the verified local copy without contacting the hub.

A confirmation prompt is shown before downloading. In non-interactive environments (CI, containers), set DENKFLOW_NONINTERACTIVE=1 to accept terms and confirm the download automatically.

Ambarella runtime files are stored in a chip-specific directory such as dependencies/ambarella/cv22/ or dependencies/ambarella/n1-655/. Do not copy files between these directories: the SDK validates the chip and runtime version before initializing the model. See Ambarella deployment for supported chips and device prerequisites.

Offline (manual)

When the machine has no hub access, provide the dependency manually:

  1. On a machine with internet access, download the matching .denkdependency archive from the hub under Software -> DENKflow Dependencies.
  2. Copy the file directly into <data dir>/dependencies/.

On the next run the SDK discovers the archive before any network call, verifies its contents against the embedded manifest, extracts and records the files, and then deletes the consumed archive. No further action is needed.

For Ambarella, choose the archive for the exact chip and runtime version shown by the initialization error. Users of compiled packages do not need the Ambarella SDK or DENKflow source code to import an offline dependency.