Not working on Macs


I can’t seem to figure this error message out.

Archiving built core (caching) in: /var/folders/2_/d082r70d7kvbz2l1ld_wmz040000gn/T/arduino_cache_307672/core/core_Jewelbots_Arduino_Library_nRF51822_nRF51822_dbb38cf3786f8dba45f3521d9c6b7c1a.a
Failed to execute script main
Upgrading target on /dev/cu.SOC with DFU package /private/var/folders/2_/d082r70d7kvbz2l1ld_wmz040000gn/T/arduino_build_985434/ Flow control is disabled.

Starting DFU upgrade of type 4, SoftDevice size: 0, bootloader size: 0, application size: 20560
Sending DFU start packet, afterwards we wait for the flash on target to be initialized before continuing.
Timed out waiting for acknowledgement from device.

Failed to upgrade target. Error is: No data received on serial port. Not able to proceed.

Possible causes:
Failed to execute script main

  • bootloader, SoftDevice or application on target does not match the requirements in the DFU package.
  • baud rate or flow control is not the same as in the target bootloader.
  • target is not in DFU mode. If using the SDK examples, press Button 4 and RESET and release both to enter DFU mode.

I’ve followed the instructions very carefully. The Jewel is in the right mode. I tried different ports. I’m using a 2017 MacBook Pro (With a USB hub) so I even tried an older MacBook with a USB 3 port but still no luck. I’ve updated the Firmware, restarted several times but still not working.



This sounds frustrating! What version of OS X are you on?


I am using High Sierra. I even tried reinstalling the boards but getting the same error.


I even tried a friend’s new jewelbot but hers doesn’t work either??? There must be something wrong!!


Bad news: This issue has been found by others.
Good news: it has a fix!!! Read this post:


My dad tried this and it didn’t work :frowning: But I’ll ask him to try one more time.


Oh no! Okay, would you like to jump on the phone and work on it together?


My dad tried again and again. But we still get the same error message. My Arduino Uno works fine in High Sierra but both of my jewel bots and my friend’s jewel bot does not. I don’t have a windows computer, only Macs. And my friend has the same computer as me so hers doesn’t work either.
We live in South Korea so a SKYPE call would be great!


@sara @stemgirl07

(We originally had the same error, did the fix, and then still had the same error. Then we figured out a last step we still needed to do:)

After doing the fix, we just had to remember to do this last step again:

Go to Tools->Port->(Select the USB port)

Everything works great now!

Thank you!


@Deanna What Mac OS are you using? Are you using a new MacBook Pro with USB-C ports? What options are you given for ports? We Uploading…


Wow! Great job on learning Swift and Javascript! And now you are programming your Jewelbot in C! You are doing awesome stuff!

The operating System on my MacBook Pro is Mac OS High Sierra Version 10.13.3

We are using a USB-C Digital AV Multiport Adapter

When the Jewelbot is plugged in to the USB cable, go to Tools->Port-> /dev/cu.usbserial

The USB port shows up only when the Jewelbot is plugged in.

Also, when the Jewelbot is low on power, the port does not show up.

While making the above observation today, we noticed that it appears that my MacBook Pro with the USB-C Digital AV Multiport Adapter is not as effective at charging the device as the USB port of the Dell PCs in our student computer lab. In fact, the device looses power while plugged in to the USB-C Digital AV Multiport Adapter of my MacBook Pro, which led to some confusion of us not being able to see the port for several minutes, followed by the Jewelbot running out of power all together. We plugged it into the USB port of a Dell PC in the lab, and it charged right up, no problems. I am assuming that charging the Jewelbot using a USB power adapter for charging would work as well as charging using the the USB port on the Dell PC in my computer lab. I wonder if this charging/power issue is a problem with my USB-C Digital AV Multiport Adapter, or if might be totally wrong on this observation all together. I will look into it further, but in the meantime, here is the quick fix:

The quick fix for me appears to be to charge the Jewelbot using a USB port elsewhere first to charge it. Then, when we want to program, we plug the Jewelbot, all charged up, into the USB-C Digital AV Multiport Adapter on my MacBook Pro.


Thank you so much for taking the time to reply! I will give it a shot!!


Thanks for the help, @Deanna! @stemgirl07, let us know if that doesn’t work. Can jump on a Skype call!!


This is Asia’s dad. We tried everything, but I still can’t see the right ports. I even tried my wife’s MacBook Pro without the USB-C ports but it still gives me the same error.


Thank you, Asia’s dad! Okay! I’m around this weekend and all next week. LMK when is good for you for a Skype call.

Thanks for being so patient, we will figure this out!


Hi there,

I’m on a MacBook Air and don’t see any ports showing up besides the Bluetooth one (even though the Jewelbot is plugged in). I followed all of the terminal/recovery mode instructions above but it still doesn’t work. I was on a Mac High Sierra, but then just updated to Mojave to see if that worked. Neither does. I’m at a school where some of us are on Mac High Sierras and some of us are on Mojaves. The Jewelbots are working for some of us, but not others. Any ideas what is happening?



Hi Lauren,

Oh no! Are you on a machine with USB or USB-C?