Firmware/Script updating through non-usb interface

I’m intending on embedding an H7 system inside a mobile robot where I won’t have access to the usb in this configuration. I have the ability to interface via CAN, I2C, SPI or uart to a headless, single board computer. Is there any way for me to update the firmware or the compiled script?

From looking at this thread it looks like there currently is not support for updating via script and I’d need to build this for my application. Is that correct? Could you give me a head start and point me in the direction of what section of the code base to start with?

You can just write a script that updates a module that it loads.

I.e. main.py runs your bootloader code and whatever. You then have a file that’s the app as another python file which is included in main.py. Use try: except: to include the file to handle it missing or being corrupted.

Then, the main script receives a new file and writes the updated module, then resets the board to cause the whole file to be reloaded after being reprogrammed.