Hi, I’m trying to run main.py from an external SD card on a LiPo powered OpenMV Cam H7 Plus.
From the docs and forum posts it seems that if an SD card is present, containing a file named main.py, the bootloader should run it, however that does not seem to work on my cam.
Here’s what I tried, on MacOS Monterey:
Updated OpenMV IDE today and flashed newest firmware when the IDE prompted me.
Erased the internal flash with OpenMV IDE > Tools > Erase Onboard Data Flash.
Manually deleted the content of the NO NAME drive that shows up when the cam is connected.
Formatted the external SD card with ExFAT (also MS DOS FAT before), named it OPENMV.
Saved your blink example in a file called main.py to the SD card.
Ejected the OPENMV SD card from MacOS.
Inserted the OPENMV SD card to OpenMV cam.
Powered the OpenMV cam (first with USB and later with just a fully charged LiPo battery).
No blinking (!) which probably means the code does not run.
(If I “Save open Script to OpenMV Cam” the exact same code runs as expected, but from flash.)
Did the default bootloader change, or do I miss a file (e.g. boot.py, and if yes, how should it look)?
Some cards just don’t work with ST SDIO core and/or drivers. I know for sure that Samsung EVO works very well with the cam, but you could try any other card. main.py should run from any available storage (flash or sd).
OK, after further investigation I guess it was my sloppy formatting that caused the issue. MacOS Diskutil shows two entries for a single SD card. Seems to be important to select the “Generic STORAGE DEVICE Media” one (not its child entry) and select “Master Boot Record” in addition to “ExFAT”. Anyway, now both (Kingston 16 GB) cards work fine with the cam.
I have the same issue and I also tried replicating these steps with no luck. I’m using a SanDisk 32GB card. I formatted it to ExFat with a MBR scheme. The weird part is that it was working fine before, then suddenly stopped working, and that’s when I found this thread and tried the steps with no luck.