Hello,
I'm trying to flash a custom firmware on a Duet3 Mini5 board, and by a custom firmware I don't mean RepRapFirmware with modifications, I mean just a simple hello world firmware to run on the board. I have already used Eclipse successfully to build RepRapFirmware, but I am failing with flashing anything else.
I have tried 2 methods:
-
Downloading an AtmelStart Makefile project (for MCU SAME54P20) that just opens a serial port communication via USB and echoes back whatever string you send to the board. This has failed every time I have tried it. I have compiled the project, then used uf2conve.py, pressed reset twice on the board and uploaded the uf2 file. But as soon as the new firmware flashes, the board resets itself and it appears connected to the PC again, just like a USB device (the same behavior as when you reset the board). I think I also tried to use the crc32appender tool with once obtained the binary but didn't help.
-
Using VSCode with the plugin PlatformIO/Arduino libraries, this environment doesn't give support to SAME54P20, but does to very similar microcontrollers. It gives support to Adafruit Feather M4 with MCU ATSAME51 and also to Adafruit Grandcentral M4 with MCU SAMD51P20. I've tried with both microcontrollers (building each one in a different project) to print a serial echo and to power the Status LEDs SWDIO and SWCLK, but anything worked. With this method the board didn't reboot itself but the status LEDS do nothing and there is no serial communication (even my host OS does not detect the device).
I understand that building a hello world project with PlatformIO which does not give support to the same MCU as the one in Duet3Mini5 may result in a binary that doesnt work in this platform, but the Atmelstart project is prepared to run in this MCU. I have no clue why it doesn't flash properly.
Does anyone have any experience with this subject or can provide any hint?
Thank you,
Javier