# \[How-to Article\] Zero to Edge: Build Optimized Object Detection on AOM-2721 OSM Development Kit

**URL:** <https://forum.aim-linux.advantech.com/t/how-to-article-zero-to-edge-build-optimized-object-detection-on-aom-2721-osm-development-kit/1293>\
**Category:** Knowledge Base\
**Tags:** edgeai, qualcomm, edge-impulse\
**Created:** [October 25, 2025, 11:30am UTC](https://forum.aim-linux.advantech.com/t/how-to-article-zero-to-edge-build-optimized-object-detection-on-aom-2721-osm-development-kit/1293 "2025-10-25T11:30:00Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![phill.liu](https://avatars.discourse-cdn.com/v4/letter/p/a8b319/32.png) [@phill.liu](https://forum.aim-linux.advantech.com/u/phill.liu)\
**Post date:** [October 25, 2025, 11:30am UTC](https://forum.aim-linux.advantech.com/t/how-to-article-zero-to-edge-build-optimized-object-detection-on-aom-2721-osm-development-kit/1293/1 "2025-10-25T11:30:00Z")

</div>

![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/2/2ff97cb83a0ba191b4f9ab2a2ba19db67fd3ed22.jpeg)

## 1. Introduction

The Advantech AOM-2721 is an Open Standard Module (OSM), specifically a Computer-on-Module that adopts the OSM 1.1 form factor. It’s designed to be a compact and  
integrated computing platform, particularly suited for embedded applications  
and edge AI.

## 2. Prerequisites

**Hardware**

- One [AOM-2721 OSM development kit](https://www.advantech.com/zh-tw/products/risc_evaluation_kit/aom-dk2721/mod_0e561ece-295c-4039-a545-68f8ded469a8) powered by the Qualcomm Dragonwing™ QCS6490
  - Qualcomm 8-core Kryo CPU, up to 2.7GHz
  - Hexagon™ Tensor Processor with 12 TOPS AI capability
  - Adreno VPU 633, 4K30 Encode / 4K60 Decode (H.264/H.265)
  - Adreno GPU 643, OpenGL ES3.2 / OpenCL 2.0
  - Onboard 8GB LPDDR5 memory (8533MT/s)
  - Onboard 128GB UFS + 128GB eMMC storage
  - Featured I/O interfaces:
    - 1× HDMI 1920×1080@60Hz
    - 1× DP 1920×1080@60Hz
    - 2× 4-Lane MIPI-CSI
    - 1× USB 3.2 Gen1
    - 2× PCIe Gen3 x1
    - 1× PCIe Gen3 x2
    - 2× GbE

- One x86 development machine with 16GB RAM and 350GB storage
- One Full-HD HDMI monitor and HDMI cable
- One USB mouse and keyboard set

**Software:**

- Installing the Yocto OS (via a Ubuntu host machine)
- Setting up AI runtime on the AOM-2721

## 3. How to Set up the Boot Switch

- For example, the pictures below show micro switches on the AOM-2721 Dev. Kit  
which are used during the flashing process and should be common  
to any AOM-2721 compatible device.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/8/88e2a7f48fc4f5db263e863c88b02ef534b660cf.jpeg)

**Advantech AOM-2721 Dev. Kit Switches**

- In the following setup instructions, the AOM-2721 Dev. Kit is the actual  
device shown in the pictures. Other devices based on the AOM-2721 OSM may look  
slightly different.

#### 3.1 (Optional) Flashing Your AOM-2721 OSM

> Your actual device containing the **AOM-2721 OSM** may already ship with a running **Yocto-based image** flashed into it.  
> If so, you can optionally proceed to **Step 3**.
> 
> If you need to flash your device, please follow the instructions provided in  
> [AOM-2721 Yocto User Guide → Quick Start](https://ess-wiki.advantech.com.tw/view/AOM-2721_Yocto_user_guide#.E5.BF.AB.E9.80.9F.E5.85.A5.E9.96.80.C2.A0.28Quick_Start.29).
> 
> Official Yocto images created by Advantech for the AOM-2721 OSM can be found here:  
> [AIM-Linux Qualcomm Yocto OS Release Notes](https://ess-wiki.advantech.com.tw/view/AIM-Linux/BSP/Qualcomm/Linux_Yocto_OS_Release_note/LE_aeversion).
> 
> Please download the image version **aom2721a1\_yl01301\_k0606052\_q6490\_08g** or above.

Once the flashing process is complete, proceed to **Step 3** below.

* * *

#### 3.2 (Optional) Building Your Own Yocto Image for the AOM-2721 OSM

> Some users may prefer to build a **custom Yocto image** for their AOM-2721 OSM.  
> In this case, please refer to the following instructions:  
> [Build YOCTO Image by Build Script](https://ess-wiki.advantech.com.tw/view/AIM-Linux/BSP/Qualcomm/RISC_QCS_Yocto_LE1.3_AOM2721#7._Build_YOCTO_Image_by_build.C2.A0script)  
> to set up a **Yocto build host** and build a compatible image for your AOM-2721.

## 4. Starting Up Your AOM-2721 OSM and Connecting to the Internet

#### 4.1 Overview

This section describes how to power on your AOM-2721, establish a network connection, and install the **Edge Impulse CLI**.

* * *

#### 4.2 Step-by-Step Setup

1. **Install the [Edge Impulse CLI](https://stackedit.io/docs/tools/edge-impulse-cli)** on your host computer.

2. **Connect the power supply** to the back of the AOM-2721 OSM.

3. **Connect the serial console:**

4. **Open a serial connection** between your host computer and the board.  
You can do this directly using the Edge Impulse CLI:

5. **Press the power button** to start the boot-up process.

6. **Log in** after 30–60 seconds when you see the login prompt in your serial terminal:

7. **Set up a network connection:**

8. **(Optional) Continue setup over SSH:**

* * *

## 5. Installing the Edge Impulse Linux CLI

- On the AOM-2721 SOM, install the Edge Impulse CLI and required  
dependencies by running the following commands:

## 6. Connecting to Edge Impulse

- After installing all dependencies, run:

## 7. Verifying that your device is connected

- That’s all! Your device is now connected to Edge Impulse. To verify,  
go to [your Edge Impulse project](https://studio.edgeimpulse.com/studio/profile/projects) and click **Devices**. Your device should be listed here.

For example:

Go to [https://advantech.edgeimpulse.com/studio/677676/acquisition/training](https://advantech.edgeimpulse.com/studio/677676/acquisition/training)

# 8. Edge Impulse Account Creation and Project Setup

- Please create your account first.  
If you already have an account, please jump to **5. Data Acquisition and Upload.**

* * *

**Step 1:**  
The Advantech-branded Edge Impulse sign-up page, where users create an account by entering a username, company email, job title, and password, completing the CAPTCHA, and accepting the terms of service before clicking **“Sign up.”**

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/1/198e856eb6492e9ac8552dc1f4aafef600f92a61.png)

**Step 2:**  
The Advantech-branded Edge Impulse log-in page,where users enter their username or company email address and click **“Next”** to proceed with authentication.

Additional options include resetting the password or creating a new account.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/7/702618300dbd3d28c3be83b48be1a767ccad41ce.png)

**Step 3:** Creating a new project in the Edge Impulse platform by entering the project name “Automated Optical Inspection,” selecting the Enterprise type, and choosing Public or Private settings before clicking “Create new project".

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/d/d0742fd34665370059c32180b87c66e944ab8707.png)

**Step 4:** The project homepage of “Automated Optical  
Inspection” in the Edge Impulse platform, where users can add existing data,  
collect new data, or upload a model, as well as follow tutorials to quickly  
build a model.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/1/1d5aeb539619421ddc85252d4eacf898c65800d1.png)

## 9.Data Acquisition and Upload

**Step 5:** In the Edge Impulse project, under the “Data  
acquisition” page, users can click “Add data” to start building the dataset or  
connect a device to collect new image data.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/3/33330c2fc0881bf6fbbe192cd9e0cb9319f5cf05.png)

**Step 6:** In the “Add existing data” menu, users can  
choose from three options to add data to the project: uploading data, importing  
from another project, or using a storage bucket.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/7/7564a670f665e51420d57224dad21b83745c0435.png)

**Step 7:** On the “Upload data” page, users can choose to  
upload individual files or a folder, specify whether the data belongs to the  
training or testing set, and define labels by inferring from filenames, leaving  
them unlabeled, or entering them manually. After configuration, click “Upload  
data” to begin the upload.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/a/a10929f6d7866e7c93a5df522bd58971ba827700.png)

**Step 8:** Selecting the local training folder (train) to  
upload to the Edge Impulse platform for building the training dataset.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/6/68956a46827861f00261d67a0e81e6202f7dceac.png)

**Step 9:** On the “Upload data” page, setting the labeling  
format to YOLO TXT and choosing the labeling method as bounding boxes for  
object detection tasks.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/0/0ee381e4a72f40569d64675610eb7a0001231170.png)

**Step 10:** Uploading the testing dataset to the Edge  
Impulse platform and assigning the data category as “Testing.”

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/9/908240cb072bdd212e063944fa3ee092b2a59522.png)

**Step 11:** Completing the upload of the testing dataset,  
setting the format to YOLO TXT and using bounding box labeling to prepare a  
complete testing set.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/9/9fda29ad3e732e10ba89bae72b55e06b79c4dcde.png)

**Step 12:** Uploading post-processing data to the Edge  
Impulse platform and categorizing it under Post-processing.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/1/1627e5f88373f5324e8485a498db5c7d27a37518.png)

**Step 13:** Completing the upload of post-processing data  
with YOLO TXT format and bounding box labeling method.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/0/01b002abef61e89b964b9be92f53e0012d8c3023.png)

**Step 14:** The “Data acquisition” page showing 500  
collected data items, categorized into Training, Testing, and Post-processing  
sets, with options for editing labels, moving items, and enabling or disabling  
data.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/6/6cc7586166bebc919b090344206485935e472d81.png)

## 10.Data Labeling and Preparation

**Step 15:** The batch edit labels (Edit labels) function,  
setting 490 samples to the “crooked” label, with other defect categories such  
as over soldering and tombstone available from the dropdown menu.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/e/e52d5129e8a5984145a4fd67a7405c30c46d00c5.jpeg)

**Step 16:** Viewing uploaded images in the dataset, with the  
sample image and bounding box annotations shown on the right, such as labeling  
the defect as crooked.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/4/4f8cd9e26f3a66da1e86ebaafdffeb4753131635.jpeg)

**Step 17:** Using the “Edit labels” function to assign the  
selected image as over soldering, with the updated label displayed on the  
right.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/6/64f15e28ea643a5f45894b0f0fd357f891e71510.jpeg)

**Step 18:** Batch labeling images with the tombstone defect,  
with the updated annotations displayed on the right.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/aim_linux/original/2X/5/56f417a27ca7b4ec5e654d2375b22597dcf1a24c.jpeg)

---

<div class="post-metadata">

**Author:** ![phill.liu](https://avatars.discourse-cdn.com/v4/letter/p/a8b319/32.png) [@phill.liu](https://forum.aim-linux.advantech.com/u/phill.liu)\
**Post date:** [October 27, 2025, 5:55am UTC](https://forum.aim-linux.advantech.com/t/how-to-article-zero-to-edge-build-optimized-object-detection-on-aom-2721-osm-development-kit/1293/2 "2025-10-27T05:55:45Z")

</div>

Unlisted on October 27, 2025, 5:55am UTC



---

<div class="post-metadata">

**Author:** ![phill.liu](https://avatars.discourse-cdn.com/v4/letter/p/a8b319/32.png) [@phill.liu](https://forum.aim-linux.advantech.com/u/phill.liu)\
**Post date:** [October 27, 2025, 5:56am UTC](https://forum.aim-linux.advantech.com/t/how-to-article-zero-to-edge-build-optimized-object-detection-on-aom-2721-osm-development-kit/1293/3 "2025-10-27T05:56:10Z")

</div>

Listed on October 27, 2025, 5:56am UTC



---

<div class="post-metadata">

**Author:** ![phill.liu](https://avatars.discourse-cdn.com/v4/letter/p/a8b319/32.png) [@phill.liu](https://forum.aim-linux.advantech.com/u/phill.liu)\
**Post date:** [October 27, 2025, 5:56am UTC](https://forum.aim-linux.advantech.com/t/how-to-article-zero-to-edge-build-optimized-object-detection-on-aom-2721-osm-development-kit/1293/4 "2025-10-27T05:56:14Z")

</div>

Unlisted on October 27, 2025, 5:56am UTC



---

<div class="post-metadata">

**Author:** ![phill.liu](https://avatars.discourse-cdn.com/v4/letter/p/a8b319/32.png) [@phill.liu](https://forum.aim-linux.advantech.com/u/phill.liu)\
**Post date:** [October 27, 2025, 6:15am UTC](https://forum.aim-linux.advantech.com/t/how-to-article-zero-to-edge-build-optimized-object-detection-on-aom-2721-osm-development-kit/1293/5 "2025-10-27T06:15:28Z")

</div>

Listed on October 27, 2025, 6:15am UTC


