Skip to content

# RTMDet-nano model exported to int8_vela.tflite fails to invoke on Grove Vision AI V2 (stock Swift-YOLO model works fine on the same device) #319

Description

@Kea3

Summary

Trained a 5-class RTMDet-nano object detector using ModelAssistant, validated its accuracy independently before deployment, exported and Vela-compiled it successfully with 100% NPU coverage — but the device fails to invoke it, while a stock Swift-YOLO-based model (Hand Gesture Detection) invokes and runs correctly on the exact same hardware.

Setup

  • Device: Grove Vision AI V2 (Himax WiseEye2 HX6538, Cortex-M55 + Ethos-U55-64)
  • Training: ModelAssistant (SSCMA), RTMDet-nano, 224×224 input, 5 classes, 100 epochs
  • mAP@0.50 reached 0.897 by epoch 93 (final checkpoint used for export: epoch 100)
  • Export toolchain: tools/export.py → ONNX → onnx2tf (tflite_backend="tf_converter") → TFLite INT8 → Vela
  • ethos-u-vela version: 5.1.0

Model accuracy validated independently before deployment

Built a separate evaluation notebook (raw-tensor inspection, decode, NMS, confusion matrix) to confirm the exported model is numerically sound before ruling out anything device-side:

  • ONNX and TFLite-INT8 confusion matrices agree cell-for-cell on a 165-image held-out test set (93.9% species accuracy, both formats)
  • Measured INT8 quantization cost vs. the float model: <0.01 mean confidence delta, <0.005 mean-IoU delta — essentially zero accuracy loss from quantization
  • Vela compilation report: 127/127 operators mapped to NPU (100%), 398.48 KiB SRAM used, 2208.34 KiB flash used — comfortably within this device's SRAM/flash budget

What happens on-device

  • Uploaded best_coco_bbox_mAP_epoch_100_int8_vela.tflite (2243 KB) via SenseCraft AI
  • Upload succeeds, device reboots normally
  • Invoke fails immediately afterward; the Device Logger panel shows blank/black output, no visible error text in the UI
  • A stock Seeed Hand Gesture model (Swift-YOLO based) uploads and invokes correctly on this same physical device — ruling out the camera, cable, connection, and basic firmware/upload functionality as the cause

Question

Does the currently-shipped Grove Vision AI V2 firmware (SSCMA-Micro) support invoking RTMDet models specifically, or is RTMDet support present in the ModelAssistant training/export toolchain without corresponding decode support yet implemented in the on-device firmware for this board? The most recent tagged firmware release I could find (sscma-example-we2, 20250102) lists "Support yolo11" as its newest feature, with no mention of RTMDet.

(Still confirming the exact firmware version currently on my device via SenseCraft's Device Info panel — happy to add that once checked, along with the .tflite file, export config, or a serial log from the AT-command interface if useful for diagnosis.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions