[Solved] FPGA boot loader recovery

Hi Everyone,

We've prepared some manual steps to repair the FPGA's bootloader for those of you facing sketch upload issues.

To get started, download and extract the following URL, then follow the INSTRUCTIONS.txt file for the operating system you are using:


Please let us know if you have any issues.

NOTE: later on there will be an update to the core to prevent this issue.

just tried this on windows 10 and my mac. They both fail at 49% on step 9 with SAM-BA operation failed

Hi Dario or Sandeepmistry

Are you folks trying this code with devices pulled off the assembly line and not some pre built demo units prior to production?

Hi @a2retro,

I'm using 2 boards from the production batch. The recovery process works fine with my Mac.

I'm able to get my boards into the state where upload hangs between 46 - 49%, by loading a sketch that uses VidorPeripherals and double-tapping the reset button. Then I can recover the boards by following the instructions provided. However, the board might not be in the same state as yours.

@ronsoul do you have a powered USB hub to try the procedure with again?


I do not have one but Ill order one. Are you thinking its not getting enough power?

Thank you for the help,

Based on Dario’s comments in http://forum.arduino.cc/index.php?topic=560394.msg3821794#msg3821794 … maybe.

My colleague Cristian has also tried the instructions on Windows and Linux with out issues.


I see. It never worked even in bootloader mode connected to an iPad charger. And I have it connected to a USB3 port. Ill order one and report back on the results.

Thanks again, Ron

This appears to have fixed mine and I can now upload again! Thanks so much.

Thanks for posting the fix, VidorFPGARecovery.zip. It worked for me to solve the ~half upload freeze issue.


I just received the powered usb hub. Its still fails at 49% on step 9.

I have tried this on my windows 10 machine with USB3, a mac with USB3 and now with a powered usb hub on windows 10. It seems like I may have a defective unit. Whats the next step?


Hi @ronsoul

Instead of double-tapping the reset button, could you please try running this Python script to reset the board for the applicable steps:

#! /usr/bin/python

import sys
import serial

ser = serial.Serial(sys.argv[1], 1200)

Run with: python 1200bpsreset.py /dev/

Has there been any resolution to this? I tried (with success) installing “VidorFPGARecovery.zip” on a mac. That part worked…

Now (still) uploads crash at 37%.

The uploads were working 60% of the time but now they are not at all:

Due to my original issue I removed and reinstalled the board definition files.

Original and still unsolved issue:

Copied and installed the “VidorDrawLogo” example from github, changed line 50:




Also added a few debug lines:

Serial.println(“Entering while() loop…”);
while (1) {}

An I DO get the debug code to the whole “setup()” and “loop()” procs are running end-to-end but NO HDMI update.

The logo does not update on the HDMI screen to reflect my “My” change.

Now, due to my hacking away at this to get it to do the basics as I understand them, no more upload ability.

Thx - Jeff


I tried to upload again - the upload worked but no update to the HDMI screen to reflect this change at line #50.

Now, much as before, it seems like the upload works 40% of the time. Single device connected directly to a "MacBook Pro (Retina, 13-inch, Late 2012)".

My original issue is still open:

Line 50: vdgfx.println("MyARDUINO"); // added "My"

HDMI screen does not show the update adding "My" to "ARDUINO".

I ALSO get this warning every time it compiles:

WARNING: library SPI claims to run on (samd) architecture(s) and may be incompatible with your current board which runs on (samd_beta) architecture(s).

Hi Everyone,

There was some issues with the bitstream provided in the original VidorGraphics library. We've pushed an updated version to Github: https://github.com/vidor-libraries/VidorGraphics

Please re-download the library and add to your sketchbook to get the fixes.


Thank you for all of your help. I still have the same issue it fails at 49% in step 9. Is there anything else I can do?

Regards, Ron

Hi @ronsoul,

That's very strange. Can you please confirm you are not power cycling the board or removing the USB cable between steps?

We plan to have a new SAMD boot loader fix this week or next week with some fixes. Would you be able to wait until this is out? I'm certain your hardware is fine, because the steps before step 9 succeed.


Just tried to power cycle it as you said. Its still behaving the same way.

Sure I can wait, its no problem. Thanks for the help.


Sorry ignore the last post I was on my phone. I did not power cycle or remove the USB cable.


I am stuck at step 7. Even after 10 Minutes this call does not return.

loopmasta:VidorFPGARecovery stiwi$ ./tools/mac/clujtag -p /dev/tty.usbmodem31 -s boot.svf
Copyright (C) 2009 RIEGL Research ForschungsGmbH
Copyright (C) 2009 Clifford Wolf clifford@clifford.at
Copyright (C) 2015 Cluster clusterrr@clusterrr.com
Lib(X)SVF is free software licensed under the ISC license.

Thats it …

Hi @loopmasta,

Please use /dev/cu.usbmodem31 instead of [ /dev/tty.usbmodem31/i]: ``` $ ./tools/mac/clujtag -p /dev/cu.usbmodem31 -s boot.svf ```