ERROR: Timed out waiting for Arduino 101 on /dev/ttyACM0

I have installed Arduino IDE 1.8.3 on Ubuntu 16.04. And While uploading sketches to the board I am getting below error:

[exec] Sketch uses 48432 bytes (31%) of program storage space. Maximum is 155648 bytes.
[exec] Starting download script...
[exec] Flashing is taking longer than expected
[exec] Try pressing MASTER_RESET button
[exec] ERROR: Timed out waiting for Arduino 101 on /dev/ttyACM0
[exec] ERROR: Timed out waiting for Arduino 101 on /dev/ttyACM0
[exec] Invalid library found in /home/rahul/Downloads/Intel Aurdino/Arduino/build/linux/work/libraries/Firmata-2.5.6: /home/rahul/Downloads/Intel Aurdino/Arduino/build/linux/work/libraries/Firmata-2.5.6

I have tried several times installing the IDE and plugging/unplugging Arduino 101 and followed answers on different forums as well but no luck yet. And everywhere I am getting answers mostly for windows system only. I also tried using MASTER RESET button while uploading process but still the same error.

Could anyone please help me how to fix this on ubuntu 16.04.

FYI : By running the command 'lsusb' on terminal it shown the connected Arduino 101 device. And I am getting the same error while uploading the sketch from the web editor.

I found the answer:

On Linux system just run the below command:

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

And the issue will be solved.

In the above command just change the 1.6.4+1.18 as per your system and then execute the command.

On my system Ubuntu 16.04 instead of "1.6.4+1.18" I found "1.6.9+1.28" hence I changed the command and ran, it got executed successfully then and then I was able to upload sketches.

To check on your system which version no.(i.e. 1.6.4+1.18) is there just do "cd ~/.arduino15/packages/Intel/tools/arduino101load/"

what is the command you used? sudo with nothing after it does nothing.

I going to run the ./arduino command as root and see what happens.

Thanks @rahulmodi8812, running that script worked for me as well! That said, after updating the board driver to 2.0.2 I no longer see that script included inside the package dir. However, the same script is available on GitHub: curl -sL https://raw.githubusercontent.com/01org/corelibs-arduino101/master/scripts/create_dfu_udev_rule | sudo -E bash -.

ljfranklin:
Thanks @rahulmodi8812, running that script worked for me as well! That said, after updating the board driver to 2.0.2 I no longer see that script included inside the package dir. However, the same script is available on GitHub: curl -sL https://raw.githubusercontent.com/01org/corelibs-arduino101/master/scripts/create_dfu_udev_rule | sudo -E bash -.

Thanks, was trying to get Arduino 101 up and running on Arch linux. The curl command still works as of Feb 19 2019, and got be unblocked.

Hi,
A little update on this one :
I had the same problem with a bad connection of an Arduino/genuino 101 using Arduino 1.8.12, linux mint
First , perform installation of the board through the board manager in the arduino IDE.
Then the connection problem.
I had to find the location of this file which is now in :
.arduino15/packages/Intel/tools/arduino101load/2.0.1/firmwares/create_dfu_udev_rule
allow access by
sudo chmod +x create_dfu_udev_rule
and I had to execute using
bash create_dfu_udev_rule
then it worked

that was hard ! :confused:

Thanks to previous posters

I am new to arduino on linux and I am hoping someone could help me. I have been able to get all of my other devices to work except this one.

I am using Arch Linux and I can get all the way to to the point of creating the rule, but when I do it tells me no such directory exists.

How do I go about adding this rule to my machine?

Thanks in advance for the education!