"Invalid DFU suffix signature...exit status 74"

Hey guys,

I am not able to upload sketches to my Arduino Portenta Machine Control board from my Arduino IDE which is working on a Linux OS(I am using a Linux machine due to its faster compilation times). I had the same error on my Windows machine, but solved it by using this tool 'https://zadig.akeo.ie/'. However, this tool supports only Windows machines.

Has anyone solved this error in a Linux machine?or has an idea on how to solve this?

Any help is highly appreciated.

I am not familiar with your board so can't help.

You don't give many details. Is the board not recognised? If so lsusb and dmesg are your friend. Does the upload fail? Is so, please post the complete error message.

Hey @sterretje , I have added some pictures of the errors I get. I am not able to upload my sketch, although is shows the port is available. The board is recognised in the IDE as well.

Hi @h_se. In order for Arduino IDE to upload to the Arduino board, your user account must have write permission for that device. Standard user accounts don't have this permission by default. This error can occur when you attempt an upload without the necessary permissions. So it is necessary to configure your system to allow the upload. This is done by creating a special file. Arduino provides a script that will create the file for you.

I'll provide instructions you can follow to run that script:

  1. Open the following URL in your web browser:
    https://github.com/arduino/ArduinoCore-mbed/blob/main/post_install.sh
  2. Click the downward pointing arrow icon ("Download raw file") at the right side of the toolbar:
    image
  3. Wait for the download to finish.
  4. Open a command line terminal in the folder that contains the downloaded file.
  5. Type the following command:1
    chmod +x post_install.sh && sudo ./post_install.sh
    
  6. Press the Enter key.
  7. If prompted for it, enter your Linux account password and press the Enter key.

The command should complete successfully. Now try uploading again, just as you did before. Hopefully the error will no longer occur.



1. "Fix udev rules on Linux". Arduino Help Center.

Hi @ptillisch,

Thanks a lot for your reply. Your solution does (kind of) work.

I am able to upload my sketch. However, I am able to upload only once. When I upload it the first time, I select a port called Arduino Envie M7[0101] - while using this port I get the same "DFU" error and the port disconnects after attempting to upload. When I try to upload the second time, a port called Arduino Portenta H7[0200] replaces the previous "Arduino Envie M7[0101]" port. With this port, I am able to upload but it also disconnects after uploading.
So basically, I am able to upload every even iteration(eg 2nd, 4th, 6th time).

Would you know of a way to modify this, such that I can upload every iteration ?

Note: The vendor ID and device ID of both the products are the same

sorry but but what is this solution cmon. I shouldn't be forced to add files just to do a basic operation...

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.