Implementing Person Detection Example on H7 R2

My team and I are using an H7 for our undergrad senior design project. The final goal is to be able to classify if an object in the image is a person, vehicle, or neither. Prior to doing this, we are attempting to use the person_detection example. Reading online it seems as though we need to edit the firmware of the OpenMV. We were able to clone the repo and put the person_detection model within src/lib/libtf and we set the firmware path to bootloader .bin file, but our LED never blinks blue to let us know that the self-test worked. Is there any step we’re missing or ways to troubleshoot?

Hi, the LED only blinks blue if the default script is still on the camera. It’s not the self-test but the default hello script running.

Okay; after clicking “Okay” on the pop up window, we are unable to find an OpenMV to connect to and end up going through the “Is the OpenMV bricked?” process. Is there something we are neglecting?

Hmmm, could be broken then. Just follow the dialog to reset it back to the normal firmware.

I think we’re missing a step, but I don’t know what it is. Here is what we are doing:

  1. Cloned the openmv repo from openmv/src at master · openmv/openmv (
  2. Put person_detection.txt and person_detection.tflite into \openmv\src\lib\libtf\models
  3. Tools->Run Bootloader from the IDE
    4. Update firmware path to portentah7_bootloader_mbed_hs_v2.bin in openmv\tools\bootloaders
  4. Run

Is there a step we are missing? Also, is the code for the person_detection example available somewhere on Git?

Additionally, I’m currently trying to build the firmware on Git bash using the following commands:
cd openmv
make -j$(nproc) -C src/micropython/mpy-cross # Builds Micropython mpy cross-compiler
make -j$(nproc) TARGET=<TRAGET_NAME> -C src # Builds the OpenMV firmware

What is the target name for the H7? And I’m pretty sure the first make command I run is not working properly… what should I expect to see on my terminal after a successful build?

The target name should be OPENMV4.

It’s based on the folder name of the board folders under src/omv/boards/*

As for the file to load, it should appear under src/build/bin/firmware.bin

You’re uploading a bootloader for a different board, where did you find that “step” ? Everything you’re asking about is already in the docs.