I just received an Arduino 101 so I did the following in a wave of excitement...

  1. Connected the USB cable between it and my Macbook Pro
  2. Started the Arduino IDE version 1.6.7
  3. Wrote a little bit of code
  4. Selected Tools | Boards | Boards Manager... and installed the Intel Curie Boards as per Getting Started
  5. Selected Tools | Board: "Arduino 101"
  6. Selected Tools | port: "/dev/cu.usbmodemFA141 (Arduino 101)"
  7. Selected Sketch | Upload

I was expecting something amazing, but I got the error:

Starting upload script
Payload: /var/folders/jr/5rmqcrqj58103d4p1f6_3sjr0000gn/T/build7c6ce067b9e8a57f9917c651ec494989.tmp/orientation.ino.bin
Waiting for device... 
ERROR: Timed out waiting for Arduino 101.

Is there anything I can do to debug this or did I miss a step perhaps?

(I tried the good ol' turn it off and on again, including shutting the IDE down).

7 Answers 7


Press the reset button next to the USB port. (either one, the master reset is between the DC jack and USB ).

This will cause the Arduino 101 to reboot and enter DFU mode for 5 seconds if it is connected on USB. The download will proceed when the Curie enters DFU.

The IDE uses a baud-rate signal over USB. It is a virtual serial port, so baud rate doesn't matter. But when the host side (Arduino IDE) switches the baud rate to 1200, the board will reboot and enter DFU mode for download. If it gets stuck for some reason and misses the message to reboot, you can just hit the reset button and accomplish the same thing.


I was having the same problem: unable to upload a program to a brand new 101. Now it works.

I can successfully load both BLE LED example programs and also the ReadTime program read via Serial Monitor. (BTW, using the iOS MCP app, you need to send either 00 or 01 to turn the LED on/off.)

I am running a modern 64 bit laptop with USB 3.0 ports. All ports work fine with either of two USB cables that I have. So I don't believe the problem is related to USB cables or USB 2.0/3.0.

How did I fix it? Well, I tried several things and I'm not sure which one fixed it, so perhaps someone can try these methodically and confirm the best fix.

  1. Uninstall the Arduino IDE and manually deleted the Arduino15 folder in user..\AppsData.

  2. Restart laptop.

  3. Download and install IDE 1.6.8. (Earlier failed attempt was with current 1.6.9.)

  4. Restart laptop.

  5. Open IDE. In Boards Manager, searched Intel, selected Curie boards, and install v1.0.4. (Earlier failed attempt was with current 1.0.5.)

  6. Restart laptop.

  7. Open IDE. Plug in 101 for the first time. Device showed up normally in Device Manager.

  8. Select proper port (COM5 for me) and proper board (101). Select example file LED under CurieBle. Click verify. Looks good. Click upload. SUCCESS! Can now see the 101 in nRF MCP, can turn LED on/off. BLE functions now work with 5V USB charger. (but not 9V battery, guess that's not an option) When connected to laptop USB 3.0 port, the 101 now stays in COM5 the entire time, no longer cycling on/off when I try to upload. No need to press either reset button during upload.

So the fix is either one of the software downgrades, or careful installation procedure.

Previously, I tried the dfu-utils updates but that didn't fix this problem.


If the path to your source file contains a space, it might be causing this error. For more information, and a workaround, see this topic in the Arduino forum.


I posted a fix here:


I was really looking forward that this will be the fix for all Arduino 101 Error

  • 1
    While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. Nov 16, 2020 at 14:08
  • Oh yes sure I will just copy and paste the steps here
    – Raf
    Nov 27, 2020 at 6:50

I was really persistent to look for ways on how to fix the Arduino/Genuino 101 Timeout Error, I searched different forums and read a lot of suggestions on how to fix the error, but still all failed, I know some of the 101 users already bricked their 101 or other just left it behind. We are all aware that the Arduino 101 is already discontinued and even support is already stopped, Hence this little but powerful microcontroller is still out there and probably used by the some. Anyhow, to be straight to the point I finally I discovered the fix for the error. Notice that when you insert your 101 to the USB plug it will read and install the device, checking it in the device manager will show the Arduino/Genuino 101 in "Other Devices" and a new COMPort (COMX) is added, then you install the Arduino IDE (regardless of the version), then install the Arduino 101 Board thru "Board Manager", the manager will install the Arduino 101 but it will not notify you that the driver for Arduino 101 is not installed due to error. So in short we are assuming that the driver for Arduino 101 is successfully installed. This is where the error lies. The software driver "dpinst-amd64" is not digitally signed and Windows is blocking to install unsigned drivers. So what's the fix? The fix here is still to install the "dpinst-amd64" since it is the driver needed to recognize your 101, the trick here is you need to install it in other way, not in your regular PC operation. You need to access the "disable signature enforcement" under the startup options (not safe mode). This startup mode will enable you to install unsigned drivers (I trust this Intel Curie driver since it was downloaded with the board). After installation restart your PC to its regular startup and plug-in again your Arduino/Genuino 101, this time the PC will now recognize the microcontroller and you can now upload sketches without the time out error.

For a step by step procedure:

  1. Access Update and Security>Recovery>Advanced Startup
  2. Your computer will eventually restart and will bring you to the Advanced Startup, access Troubleshoot>Startup Settings. Your PC will restart again and options for the startup will display, choose number 7 "disable signature enforcement"
  3. Your PC will start. Locate "dpinst-amd64.exe" in C:>Users>YOUR USERNAME>AppData>Local>Arduino15>packages>Intel>hardware>arc32>2.0.4(latest version)>drivers>dpinst-amd64
  4. During installation a message will prompt if you want to install the unsigned driver, just click install.
  5. After installation restart your PC and your Arduino/Genuino 101 is good to go.
  6. To confirm that your Arduino/Genuino 101 is installed go to Device Manager and you will see that the Arduino/Genuino 101 is not anymore in the Other Devices.

I hope this will help. :D I will try to make a video about this fix. :D Thanks!




I am running Ubuntu 18.04 and I had a similar problem but solved it in the end.

What worked for me was:

  1. Update Arduino Curie driver in Boards manager to the latest version which is v 2.02 at the time of this post

  2. Run the following command in terminal in order to grant execution rights:

     chmod +x ~/.arduino15/packages/Intel/hardware/arc32/2.0.2/scripts/create_dfu_udev_rule
  3. Run the executable

     sudo ~/.arduino15/packages/Intel/hardware/arc32/2.0.2/scripts/create_dfu_udev_rule
  4. Restart Arduino and try to reupload

Edit for Debian testing

At the time of this edit, all the previous steps work for the Bookworm distribution, with the latest Arduino IDE version (1.8.19) and the latest Arduino Curie driver version (2.0.5). Just remind to adapt the previous path according to the driver version.


It's already documented in the arduino.cc, but I will just add here as reference:

Linux only: some distributions need to be configured to perform the upload. After installing the core, execute

sudo ~/.arduino15/packages/Intel/tools/arduino101load/1.6.4+1.18/scripts/create_dfu_udev_rule

inside a shell to gain upload permissions.

Reference: Upload Procedure

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.