# EdgeCortix Support

## Summary

| AI Accelerator | Support Level | CPU Architecture | Operating System | API/driver version |
| -------------- | ------------- | ---------------- | ---------------- | ------------------ |
| Sakura-II      | Experimental  | x86\_64          | Ubuntu 22.04     | MERA 2.5           |

## Introduction

### About EdgeCortix

EdgeCortix SAKURA-II is an advanced AI accelerator providing best-in-class efficiency, driven by our low-latency Dynamic Neural Accelerator (DNA). SAKURA-II is designed for applications requiring fast, real-time Batch=1 AI inferencing with excellent performance in a small footprint, low power silicon device. SAKURA-II is designed to handle the most challenging Generative AI applications at the edge, enabling designers to create new content based on disparate inputs like images, text, and sounds.

## Workflow

The Nx AI Manager simplifies the process of securely deploying your AI models on Sakura-II devices with the following steps:

1. Install all necessary software dependencies.
2. Install the Nx Meta Server on your machine and choose the EdgeCortix runtime option.
3. Upload your model to the Nx AI Cloud for compilation.
4. Compile and install the required post-processor.
5. Set up your inference pipeline.

## Hardware and Software Requirements

**Hardware Requirements:**

* X86 system with min of 32GB RAM to be able to support deployment for larger models (i.e LLMs)

**Software Requirements:**

* Ubuntu 22.04 LTS.
* Python 3.10

## Installation steps

The MERA SDK 2.5 that enables creating model deployments for SAKURA-II can be downloaded from Edgecortix developer zone via this link: <https://www.edgecortix.com/en/developers/software-downloads>

**Note**: User needs to have a registered account or create one to be able to download the SDK.

### Verify installation

Once the MERA SDK is installed, user can follow the steps from either the <https://www.edgecortix.com/en/developers/sakura-ii-edge-ai-m.2-module-user-manual> or the <https://www.edgecortix.com/en/developers/sakura-ii-edge-ai-pcie-card-user-manual> to ensure that SAKURA-II is installed correctly and ready to use. Once confirmed, then users can use the MERA User Manual <https://www.edgecortix.com/en/developers/mera-2.5-installation-and-user-manual> or the README files within the SDK to run an inference on Sakura-II.

## Getting Started

This guide walks you through deploying the **Yolov8m** model on an EdgeCortix Sakura-II device using the Nx AI Manager.

Before you begin, ensure you are familiar with the Nx AI Manager and the process of running models on a CPU. If you need a refresher, please see the [configuration section](https://nx.docs.scailable.net/nx-ai-manager/configure-the-plugin).

For this guide, we will use the following resources:

* **Nx Meta:** Use the Nx Meta 6.1.1 version or later, which you can install and configure as outlined [here](https://nx.docs.scailable.net/nx-ai-manager/install-network-optix).
* **ONNX Model:** The model is available at [model.onnx](https://www.google.com/search?q=https://drive.google.com/file/d/1lwB1c1KgMFjBDIGC2qIDibdwCxymdmne/view%3Fusp%3Dsharing)
* Post-processor: The post-processor source is available at [post\_processor.zip](https://www.google.com/search?q=https://drive.google.com/file/d/1MbIdc53gESZaQmce2KVOwA1gCC7me1nN/view%3Fusp%3Dsharing)

### Upload model to Nx AI Cloud

Upload your ONNX model to the [Nx AI Cloud](https://admin.sclbl.nxvms.com/) following the steps outlined in [the upload section](https://nx.docs.scailable.net/nx-ai-cloud/upload-your-model).

**Crucially,** enable the **Edge Cortix** conversion option within the model upload form and set the correct normalization values (as demonstrated in the image below).

The cloud platform will automatically convert the standard ONNX model into a Sakura-II-compatible MERA binary in the background. The model is ready for deployment once its status updates to **ok**, as shown below:

### Select the EdgeCortix runtime

The Nx AI Manager provides native support for multiple AI accelerators. To route inference to the chip, select the **EdgeCortix** runtime in the Nx AI Manager settings page:

### Install post-processor

Models running on the Sakura-II require an **external post-processor** to translate raw network output tensors (e.g., probability matrices) back into meaningful Nx metadata, such as object bounding boxes and classifications.

To deploy the provided YOLOv8m example, complete the following steps to compile and install the external C/C++ post-processor directly on the Nx Meta Server machine:

1. Extract the post-processor source code archive.
2. Execute the provided compilation script compile\_install.sh. This builds the post-processor and automatically copies its config.json definition into the Nx AI Manager's post-processors directory:

bash ./compile\_install.sh

To apply the change, restart the Nx VMS server. Instructions are available in [this section](https://www.google.com/search?q=https://nx.docs.scailable.net/support-and-troubleshooting/troubleshooting/controlling-the-server-and-the-plugin%23restarting-the-server).

### Configure pipeline

Within the Nx Meta Client, [configure the pipeline](https://nx.docs.scailable.net/nx-ai-cloud/use-your-model) as shown in the image below:

### Enable inference on camera

The final step is to activate inference for your camera by toggling the **Device Active** switch on the Nx AI Manager settings page (as shown below).

You should immediately begin seeing inference results in the Nx Meta Client after enabling the "Objects" tab.

To enable model inference on multiple cameras, simply repeat steps 4 and 5 for each camera.

## Supported Models

Currently, the only model supported by this integration is the **Yolov8m** model used in the example above.

We are actively working to expand the set of supported models in this integration.

## Monitoring

### Monitor pipeline throughput

To see the number of frames the Nx AI Manager is processing for a camera, enable the model FPS event. You can find detailed instructions on this page: [Show AI inference framerate on video](https://nx.docs.scailable.net/nx-ai-manager/howtos/show-ai-inference-framerate-on-video).

### Monitor chip metrics

To monitor the device temperature or power consumption, users can run the Telemetry utility from within the Tools directory. See the README.md file within the Telemetry folder for instructions

## Troubleshooting

### Missing bounding-boxes

If you are not seeing bounding boxes visualized in the Nx Client, check the following potential factors:

* **Model Accuracy:** The model might not be accurate enough for the specific environment where it is deployed.
* **Corrupted Configuration:** If the pipeline configuration has become corrupted, try re-installing the post-processor and reconfiguring the pipeline.
* **Throughput Saturation:** If you assign the pipeline to too many high-framerate streams, the pipeline throughput may become significantly lower than the stream framerate, causing the Nx AI Manager to drop most frames. To troubleshoot this, disable the AI Manager integration on all but one camera and gradually increase the number of cameras until you identify the machine's saturation limit.
* **Pipeline Incompatibility:** If a camera on the server is assigned a model that is not compatible with the EdgeCortix chip, the AI Manager integration will stop working for *all* cameras across the server. Verify that all cameras have the correct pipeline assigned. If any camera has an incompatible model, disable the AI Manager integration for that camera.

## Technical Support

For technical questions or assistance, please reach out to us through the following channels:

* ​​EdgeCortix Developer Support: [Submit a Support Ticket](https://www.edgecortix.com/en/developers/submit-a-support-ticket)
* Nx Customer Support Portal: [Network Optix](https://support.networkoptix.com/)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nx.docs.scailable.net/nx-ai-manager-v6.1.2/ai-accelerators-support/advanced/edgecortix-support.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
