I want to recompile the MAX32625PICO's included DAPLink firmware myself to fix the pin-wiggling code. Maxim distributes working firmware images on a page that describes them as licensed under Apache 2.0. So I ought to be able to compile them myself, but the question is how.
It is logical to assume that the MAX32625PICO's DAPLink firmware might be part of the DAPLink project. In fact, DAPLink even includes a max32625 board project with the comment
Reference design is based on MAX32625PICO.
which suggests that maybe DAPLink's max32625 board project is (or is part of?) a working firmware for MAX32625PICO.
Unfortunately, when I follow DAPLink's compile instructions using the included max32625 board project, the resulting binary file (max32625_bl.bin
) is rejected by the MAX32625PICO. (The bootloader variously reports transfer timeout, application failed, etc.) Also the file is only 56KB. Which sounds like a reasonable size, except that Maxim's firmware image is 440KB. I suspect that my image is missing some piece (the OS?).
Others have reported similar issues with certain firmware images. For example:
... I used another firmware in the PICO (such as max32625pico_daplink.bin) and I get "Transfer time out" error in the FAIL.txt file.
One replier said maybe this happens when the firmware is "out of date". But I've compiled the code myself from the default branch of the latest repository. So I don't think that my image is "out of date". More likely the issue is in my assumption that one can build the whole MAX32625PICO firmware from just the DAPLink repository?
How do I compile the complete MAX32625PICO firmware that will be accepted by the MAX32625PICO's bootloader?