Hi everyone,
We are in the process of integrating the Hailo-8 chip (M.2 card) into our product, which is based on a Zynq UltraScale+ MPSoC. Our Linux distribution is built using PetaLinux (Yocto Langdale, kernel 6.1).
I’ve been trying to run an official example in our board. The example I picked is Cpp Object Detection . For this example I wrote a small Yocto recipe which works as it should. For the test I use the model in the download_resources.sh script. The source is a simple USB webcam which appears as /dev/video0
in Linux. I had to set the environment variables for OpenCV to force using V4L2 as backend (this is also proposed by the README). For running the I used the command from README.
I get an error message from the example and here is the result of the test:
# ./hailo-cpp-object-detection -hef=yolov8n.hef -input=/dev/video0 -s
Input is not an image or video, trying to open as camera
-I-----------------------------------------------
-I- Network Name
-I-----------------------------------------------
-I yolov8n.hef
-I-----------------------------------------------
-I- Input: yolov8n/input_layer1, Shape: (640, 640, 3)
-I-----------------------------------------------
-I- Output: yolov8n/yolov8_nms_postprocess, Shape: (80, 100, 8000)
-I-----------------------------------------------
[HailoRT] [
error
] CHECK failed - Got timeout in `wait_for_async_ready` (1000ms) - the edge 'yolov8n/yolov8_nms_postprocess' could not receive 1 transfer-requests
Failed wait_for_async_ready, status = 4
[HailoRT] [
error
] CHECK failed - Can't handle infer request since a queue in the pipeline is full.
[HailoRT] [
error
] CHECK_SUCCESS failed with status=HAILO_QUEUE_IS_FULL(82)
I believe the the chip does work in our setup based on the command I found in internet. Here are the result of the commands I found useful:
# hailo fw-control identify
(hailo) Running command 'fw-control' with 'hailortcli'
Executing on device: 0000:0a:00.0
Identifying board
Control Protocol Version: 2
Firmware Version: 4.22.0 (release,app,extended context switch buffer)
Logger Version: 0
Board Name: Hailo-8
Device Architecture: HAILO8
Serial Number: HLLWMBA224902129
Part Number: HM218B1C2LAE
Product Name: HAILO-8 AI ACC M.2 B+M KEY MODULE EXT TEMP
# hailortcli run yolov8n.hef
Running streaming inference (yolov8n.hef):
Transform data: true
Type: auto
Quantized: true
Network yolov8n/yolov8n: 100% | 270 | FPS: 53.59 | ETA: 00:00:00
> Inference result:
Network group: yolov8n
Frames count: 270
FPS: 53.59
Send Rate: 526.82 Mbit/s
Recv Rate: 523.53 Mbit/s
I appreciate if anyone could tell me where the issue comes from.
Thanks in advance!