> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Fine tune an AI model with custom data using Edge Impulse

> Use Edge Impulse to build, train, and deploy custom AI models on Qualcomm Dragonwing devices with hardware-accelerated NPU inference.

Edge Impulse is an end-to-end platform for building edge AI models on Qualcomm®
Dragonwing™ devices.

It enables dataset creation, model training, and hardware-accelerated deployment.
The platform supports audio, image, sensor data, and custom models in multiple formats.

## Prerequisites

* Ensure that you have set up the device for your development board.
* Ensure that you have established an SSH connection with the Qualcomm evaluation kit. Once connected, the evaluation kit is accessible through its configured IP address. The IP address is required to push models and artifacts for running AI/ML applications.

## Train an AI model

To start building models using Edge Impulse, complete the following steps:

1. Sign up for a free developer account at [Edge Impulse](https://studio.edgeimpulse.com).

2. Install the Edge Impulse command-line interface and dependencies on the device.

   ```shell theme={null}
   wget https://cdn.edgeimpulse.com/firmware/linux/setup-edge-impulse-qc-linux.sh
   ```

   ```shell theme={null}
   sh setup-edge-impulse-qc-linux.sh
   ```

   ```shell theme={null}
   source ~/.profile
   ```

3. Connect the device to Edge Impulse.

   ```shell theme={null}
   edge-impulse-linux
   ```

   The wizard launches and prompts you to sign in and select an Edge Impulse project.

   <Tip>
     To switch to a different project or use an alternative camera, rerun the command with the `--clean` argument.
   </Tip>

4. Verify that the device is connected to Edge Impulse.

   a. Navigate to your Edge Impulse project and select **Devices**.

   b. Confirm that your device appears in the list.

   <img src="https://mintcdn.com/qualcomm-prod/Sb9VrG0-ITL9uwLF/Key-Documents/AI-Developer-Workflow/_images/ai-edgeimpulse-connected-devices.png?fit=max&auto=format&n=Sb9VrG0-ITL9uwLF&q=85&s=d77a6ceaee905892243a3cc462b2a3e3" alt="Edge Impulse connected devices list" width="744" height="104" data-path="Key-Documents/AI-Developer-Workflow/_images/ai-edgeimpulse-connected-devices.png" />

5. To build your first AI model, follow one of the [Edge Impulse tutorials](https://docs.edgeimpulse.com/tutorials).

6. To run your model, from the terminal or SSH session on your development board, run the following command:

   ```shell theme={null}
   edge-impulse-linux-runner
   ```

   This command automatically builds, downloads, and runs the model on the NPU. It supports quantized models only. To manually download the EIM file, go to the **Deployment** page of your Edge Impulse project and search for `Linux (AARCH64 with Qualcomm QNN)`.

## Bring your own model

Edge Impulse also supports bring your own model (BYOM) in formats such as SavedModel,
ONNX, LiteRT, TensorRT, or scikit-learn. Models deployed through BYOM are fully supported
on Qualcomm Dragonwing platforms, with NPU acceleration available for quantized models.

If your model is not already quantized, you can upload a representative dataset to improve performance.

To bring your own model for Qualcomm Dragonwing devices, see
[Edge Impulse > Bring Your Own Model](https://docs.edgeimpulse.com/studio/projects/dashboard/byom).
