101 unable to load, "exit status 74" (new member)

New member, first post here. I'm fighting memory and speed on AVR boards (pseudorandom pulse generator and radiation counter/scaler application) and so wanted to try a 101.

However the 101 will not upload any sketch, even examples. Advice greatly appreciated. Particulars follow.

Thanks in advance,

Mike

Issue description:

Platform: MacBook Pro; MacOS 10.11.6; IDE 1.8.2

Installed Intel Curie core 1.0.7 in Boards Manager as directed and
restarted IDE.

101 board is recognized upon USB connection at
"/dev/cu.usbmodem14231 (Arduino/Genuino 101)”
and correctly responds to "Get Board Info" as follows:

BN: Arduino/Genuino 101
VID: 8087
PID: 0AB6
SN: AE6642EK618030X (matches sticker !)

Green “power” light is on, no other signs of life.

On "Upload" after compiling, progress window shows “Waiting for device…” ,
which may be repeated, and eventually times out.

Pressing MASTER RESET after the first "Waiting" message gives message

“Device found!”

but then quits and reports

“exit status 74”

and

“An error occurred while uploading the sketch”

Tried both USB ports and numerous example sketches.

Here is an update with additional data.

I noticed previous revisions of the Curie core for IDE were available in board manager. All else equal:

  • version 1.0.7 does not work, as described in original post.

  • version 1.0.6 also does not work, but gives different error messages (see below).

  • version 1.0.5 DOES work, however it throws a "DFU suffix signature" error (see below).

Presumably later versions are issued to fix known bugs so it would be helpful to know diffs (other than breaking IDE of course). Can someone provide a link?

Second it would be good to know if anyone is looking into this for the next core release, before I waste too much more time porting my sketches to the 101.

Thanks in advance,

Mike

Attachment: upload dialog for versions 1.0.7, 1.0.6, and 1.0.5 (setup is same as OP, i.e. MacBook Pro; MacOS 10.11.6; IDE 1.8.2).

* this is with version 1.0.7 *

Sketch uses 17648 bytes (11%) of program storage space. Maximum is 155648 bytes.
Forcing reset using 1200bps open/close on port /dev/cu.usbmodem1421
/Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.9+1.28/arduino101load/arduino101load /Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.9+1.28/x86/bin /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin /dev/cu.usbmodem1421 verbose ATP1BLE000-1541C5635 141312
Starting download script...
Args to shell: [/Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.9+1.28/x86/bin /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin /dev/cu.usbmodem1421 verbose ATP1BLE000-1541C5635 141312]
Serial Port: /dev/cu.usbmodem1421
BIN FILE /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin
Waiting for device...
Waiting for device...
Waiting for device...
Waiting for device...
Waiting for device...
Flashing is taking longer than expected
Try pressing MASTER_RESET button [// user presses MR]
Device found!
exit status 74
An error occurred while uploading the sketch

* this is with version 1.0.6 *

Sketch uses 17264 bytes (11%) of program storage space. Maximum is 155648 bytes.
Forcing reset using 1200bps open/close on port /dev/cu.usbmodem1421
/Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.9+1.24/arduino101load/arduino101load /Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.9+1.24/x86/bin /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin /dev/cu.usbmodem1421 verbose
Starting download script...
Args to shell: [/Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.9+1.24/x86/bin /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin /dev/cu.usbmodem1421 verbose]
Serial Port: /dev/cu.usbmodem1421
BIN FILE /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin
Waiting for device...
Waiting for device...
Waiting for device...
Waiting for device...
Waiting for device...
Flashing is taking longer than expected
Try pressing MASTER_RESET button [// user presses MR]
Waiting for device...
Waiting for device...
Waiting for device…
Waiting for device...
Device found!
dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
dfu-util: No DFU capable USB device available
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util / Tickets

ERROR: Upload failed on /dev/cu.usbmodem1421
ERROR: Upload failed on /dev/cu.usbmodem1421

* this is with version 1.0.5 *

Sketch uses 30033 bytes (15%) of program storage space. Maximum is 196608 bytes.
Forcing reset using 1200bps open/close on port /dev/cu.usbmodem1421
/Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.4+1.18/arduino101load/arduino101load /Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.4+1.18/x86/bin /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin /dev/cu.usbmodem1421 verbose
Starting download script...
Args to shell: [/Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/1.6.4+1.18/x86/bin /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin /dev/cu.usbmodem1421 verbose]
Serial Port: /dev/cu.usbmodem1421
BIN FILE /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_779165/Blink.ino.bin
Waiting for device...
Device found!
dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
dfu-util: can't detach
dfu-util 0.8

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2014 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util@lists.gnumonks.org

Opening DFU capable USB device...
ID 8087:0aba
Run-time device DFU version 0011
Claiming USB DFU Interface...
Setting Alternate Setting #7 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 0011
Device returned transfer size 2048
Copying data from PC to DFU device

Download [ ] 0% 0 bytes
Download [== ] 10% 2048 bytes
Download [===== ] 21% 4096 bytes
Download [======= ] 31% 6144 bytes
Download [========== ] 42% 8192 bytes
Download [============= ] 53% 10240 bytes
Download [=============== ] 63% 12288 bytes
Download [================== ] 74% 14336 bytes
Download [===================== ] 84% 16384 bytes
Download [======================= ] 95% 17228 bytes
Download [=========================] 100% 17228 bytes
Download done.
Sent a total of 17228 bytes
state(2) = dfuIDLE, status(0) = No error condition is present
Done!
Resetting USB to switch back to runtime mode
SUCCESS: Sketch will execute in about 5 seconds.

Update: same failure with core version 2.0.2 released today as reported above with version 1.0.7.
Requires master reset to proceed with upload, then exits with status 74 and throws error; nothing loaded.

Arduino: 1.8.2 (Mac OS X), Board: "Arduino/Genuino 101"

Sketch uses 48732 bytes (31%) of program storage space. Maximum is 155648 bytes.
Forcing reset using 1200bps open/close on port /dev/cu.usbmodem1421
/Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/2.0.1/arduino101load -dfu=/Users/mike/Library/Arduino15/packages/arduino/tools/dfu-util/0.9.0-arduino1 -bin=/var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_849820/Blink.ino.bin -port=/dev/cu.usbmodem1421 -v -ble_fw_str="ATP1BLE00R-1631C4439" -ble_fw_pos=169984 -rtos_fw_str="" -rtos_fw_pos=0 -core=2.0.0
arduino101load 2.0.1 - compiled with go1.7.5
Starting download script...
Serial Port: /dev/cu.usbmodem1421
BIN FILE /var/folders/lb/f_yllkvc8xj6nf001s72p3qr0000gn/T/arduino_build_849820/Blink.ino.bin
Waiting for device...
Device found!
exit status 74
An error occurred while uploading the sketch

Hi zike, the behaviour you are encountering seems to be related with an incompatibility of your mac + OSX release with dfu-utils, since we tested on a lot of macs and the upload behaves correctly on all of them.

Have you tried:

  • changing USB port
  • changing USB cable
  • disconnecting any extra USB device from the PC except the 101
  • attach the board through an USB hub

?

Sorry for the late response. If you tested at least 3 of these methods with no result I'll set up some direct debug session.

Exit status 74 ( under windows ) seems to have been resolved with the new 2.0 firmware.

Hi Facchinm- No worries, thank you for looking!

In order:

  • yes (both USB ports behave the same)
  • yes (actually all the USB cables I have, four)
  • yes (nothing else)
  • I don't have what I'd call a hub, just a 4x breakout; but with this, no change

Meanwhile I received the suggestion to also check the behavior under previous IDE releases. Results are as follows:

IDE 1.8.2 - cores 1.0.6, 1.0.7, 2.0.2 fail; core 1.0.5 works (modulo serial issue described in other thread)

IDE 1.6.13 - cores 1.0.6, 1.0.7, 2.0.2 fail; core 1.0.5 works (same issue)

IDE 1.6.5 - no Curie core works

I'm nearing the end of my window of opportunity for this task, going on travel soon; but if you can assign something simple to help isolate the issue, I will do my best to get you the data before I go.

Thanks again,

Mike

facchinm:
Hi zike, the behaviour you are encountering seems to be related with an incompatibility of your mac + OSX release with dfu-utils, since we tested on a lot of macs and the upload behaves correctly on all of them.

Have you tried:

  • changing USB port
  • changing USB cable
  • disconnecting any extra USB device from the PC except the 101
  • attach the board through an USB hub

?

Sorry for the late response. If you tested at least 3 of these methods with no result I'll set up some direct debug session.

Ballscrewbob--

Still happening with core 2.0.2 under MacOS; but is it therefore known what "Exit status 74" actually means? Consumed with curiosity...

Thanks,

Mike

Ballscrewbob:
Exit status 74 ( under windows ) seems to have been resolved with the new 2.0 firmware.

Hi Zike

LOL I dont know what it means either apart from I was suffering it under win 7 x64 too.

The firmware update seems to have fixed it here but not yet run enough tests to be sure.

My main test will be getting a 101 reliable under CREATE.

Hi zike,
could you try replacing the arduino101load binary you can find in /Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/2.0.1/arduino101load with the one I'm attaching? It uses a different method to discover if the board is connected (and could bypass the error 74). If it doesn't work, open /Users/mike/Library/Arduino15/packages/arduino/tools/dfu-util/0.9.0-arduino1/ and copy all these files there, replacing dfu-util binary.
If the first method works it means that dfu-utils is finding a non-compliant hardware while scanning the bus and thus it crashes.
Let me know if there is any improvement.

arduino101load-2.0.0-darwin-testU.zip (894 KB)

Hi Facchinm,
I had the same problem as Zike. I updated arduino101load as you suggested and now I can upload code to the 101, but I still need to push the reset button after the Waiting for device...
What concerns me a bit is the message: aborting previous incomplete transfer
Below the messages during upload:

Forcing reset using 1200bps open/close on port /dev/cu.usbmodem1421
/Users/JFdB/Library/Arduino15/packages/Intel/tools/arduino101load/2.0.1/arduino101load -dfu=/Users/JFdB/Library/Arduino15/packages/arduino/tools/dfu-util/0.9.0-arduino1 -bin=/var/folders/w_/5r62tb8s7n19kl4g5js6s8_w0000gn/T/arduino_build_123607/BLE_peripheral_explorer_V2.ino.bin -port=/dev/cu.usbmodem1421 -v -ble_fw_str="ATP1BLE00R-1631C4439" -ble_fw_pos=169984 -rtos_fw_str="" -rtos_fw_pos=0 -core=2.0.0 
arduino101load 2.0.2 - compiled with go1.7.5
Starting download script...
Serial Port: /dev/cu.usbmodem1421
BIN FILE /var/folders/w_/5r62tb8s7n19kl4g5js6s8_w0000gn/T/arduino_build_123607/BLE_peripheral_explorer_V2.ino.bin
Waiting for device...
Device found!
Verifying BLE version: ATP1BLE00R-1631C4439
BLE version: verified
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 8087:0aba
Run-time device DFU version 0011
Claiming USB DFU Interface...
Setting Alternate Setting #7 ...
Determining device status: state = dfuDNLOAD-IDLE, status = 0
aborting previous incomplete transfer
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 0011
Device returned transfer size 2048
Copying data from PC to DFU device

Download [                         ]   0%            0 bytes
Download [=                        ]   5%         6144 bytes
Download [==                       ]   9%        10240 bytes
Download [===                      ]  13%        14336 bytes
Download [====                     ]  17%        18432 bytes
Download [=====                    ]  21%        22528 bytes
Download [======                   ]  25%        26624 bytes
Download [=======                  ]  29%        30720 bytes
Download [========                 ]  33%        34816 bytes
Download [=========                ]  37%        38912 bytes
Download [==========               ]  41%        43008 bytes
Download [===========              ]  45%        47104 bytes
Download [===========              ]  47%        49152 bytes
Download [============             ]  49%        51200 bytes
Download [=============            ]  53%        55296 bytes
Download [==============           ]  57%        59392 bytes
Download [===============          ]  61%        63488 bytes
Download [================         ]  65%        67584 bytes
Download [=================        ]  69%        71680 bytes
Download [==================       ]  73%        75776 bytes
Download [===================      ]  77%        79872 bytes
Download [====================     ]  81%        83968 bytes
Download [=====================    ]  85%        88064 bytes
Download [======================   ]  89%        92160 bytes
Download [=======================  ]  92%        96256 bytes
Download [======================== ]  96%       100352 bytes
Download [=========================] 100%       101500 bytes
Download done.
Sent a total of 101500 bytes
state(2) = dfuIDLE, status(0) = No error condition is present
Done!
dfu-util: can't detach
Resetting USB to switch back to runtime mode
SUCCESS: Sketch will execute in about 5 seconds.

@ JFdB

Suggest you take a look here

It explains how to post code and error messages so people don't have to scroll for weeks to read them.

facchinm:
Hi zike,
could you try replacing the arduino101load binary you can find in /Users/mike/Library/Arduino15/packages/Intel/tools/arduino101load/2.0.1/arduino101load with the one I'm attaching? It uses a different method to discover if the board is connected (and could bypass the error 74). If it doesn't work, open /Users/mike/Library/Arduino15/packages/arduino/tools/dfu-util/0.9.0-arduino1/ and copy all these files there, replacing dfu-util binary.
If the first method works it means that dfu-utils is finding a non-compliant hardware while scanning the bus and thus it crashes.
Let me know if there is any improvement.

Hi facchinm,

I had exactly the same issue and it solved using method #1.
Now the 101 just works fine but as JFdB said it this method have it's own issues (just like he pointed out in his post). Is it possible to solve the issue with the next update, please?

P.S. I also tried method #2 in combination with #1 to see what would happen, it exited with status 64.