Arduino does not recommend to program the Due board via Native port as it is not reliable:

If the MCU crashed for some reason it is likely that the soft erase procedure won't work as this procedure happens entirely in software on the SAM3X

Unfortunately Arduino doesn't say what is crash and how to solve this issue if your home made Due has only the Native port.

I have only several assumptions but not sure that they are correct.

The Arduino Due boot-loader starts only if the Flash is not programmed. If the code is programmed to the flash but is damaged the boot-loader will not start. As the MCU is hanged it can not erase the flash.

What can be done in this situation?

Just push the erase button on the board. It will the erase the content of the memory and allow boot-loader to start.

Now the programming via the Native port should be possible.

Please correct me if I'm wrong.

  • The erase pin can be configured as a GPIO. In this case pressing the erase button will not erase the flash memory. If this is the case the hardware reset will be necessary. Don't know yet if the erase button works together with the reset. – Tigran Sep 24 '15 at 14:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.