Here are the full release notes for the July release of DEEPCRAFT™ Studio
Local Model Training feature allows you to train models locally on your own PC or on a Linux-based server within your network. The server may be an on-premises machine, a virtual machine, or a cloud instance accessible via SSH. Local training supports containerized environments using Podman or Docker, allowing you to train models consistently across supported systems. To know more, refer to Local Model Training.
Added support for the Callback C API when generating code for models using Graph UX. This event-driven API lets applications register output callback functions during IMAI_init() and provide input data through the generated IMAI_enqueue{N}() functions. Model outputs are delivered automatically through the registered callbacks when available, without using IMAI_dequeue().
This means you can now generate code for more complex model graphs, including graphs with multiple inputs, multiple outputs, multiple sensors, or multiple model pipelines in the same graph using Code Gen Entry and Code Gen Exit nodes. DEEPCRAFT™ Studio automatically selects the API style based on your model’s structure. When more than one API style is applicable in Graph UX, you can choose the preferred API style in the Generate Code template. This gives you the flexibility to select the API that best fits your application requirements. One such scenario is shown in the image below. For more information, see Edge API.
With the introduction of the Callback C API, Graph UX now uses Code Gen Entry and Code Gen Exit nodes to define which part of the graph is included in code generation. This replaces the previous workflow, where you selected input and output nodes and generated code only for the graph section between the selected nodes.
In the new workflow, you can place Code Gen Entry and Code Gen Exit nodes at the desired nodes in the graph. You can also add multiple pairs of the nodes in the same graph, allowing you to generate code for different graph sections at the same time. This enables code generation for more complex use cases, such as graphs with multiple sensors, models with multiple outputs, and multiple model pipelines in a single graph.
Advanced users can also use this workflow for debugging and experimentation. For example, you can generate code for both the model and the preprocessor from the same graph. This is useful when preprocessing or post-processing needs to run on the board, or when behavior may differ between the PC and the target board because of memory constraints, sensor differences, or hardware-specific processing. You can also simulate different environments in Graph UX, generate code for both raw and augmented data paths, and deploy one of those paths to the board for validation.
For vision models, Graph UX automatically adds Code Gen Entry and Code Gen Exit nodes when you open a .tflite file for code generation for the first time. If you used the .tflite file for code generation before this change, you must add these nodes manually. Add the Code Gen Entry node before the cast node and the Code Gen Exit node before the bounding box track node by right-clicking the connection between nodes and inserting the required code generation nodes. To know more, refer to Code Generation for Vision Models.
Two new optimization options are now available for PSOC™ Edge M55+U55 in the Code Generation tab: Arena Cache Strategy and Force Python Backend.
Arena Cache Strategy allows you to choose how the arena cache size is determined for Ethos-U55 NPU memory optimization. You can select Min, Max, or Custom. Max is the default option, while Custom enables the Arena Cache Size field, allowing you to specify the cache size manually in bytes.
Force Python Backend enables the deprecated Vela Python API backend for model optimization when required. When enabled, additional Python-backend-specific settings become available, including Recursion Limit for large model graph traversal and Max Block Dependency for controlling dependency delays between NPU kernel operations.
Refer to Advanced optimization for PSOC™ Edge M55+U55 for more details.