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

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions