Failed to upgrade target - Linux


#1

I got my jewelbot for my 7y old daughter but I have not been successful trying on OSX or Linux.
Frankly the message has been the same on either machine. As I write I am using Linux so lets
take it from this point.

I followed all the instructions online. I attempted to just test uploading one example sketch.
I push down button for 2 seconds, see the purple

Is there something with USB settings I need to verify. If I unplug I don’t see the port in Arduino
and when I pug it back in I see it highlight

This is the error I get:

Upgrading target on /dev/ttyUSB0 with DFU package /tmp/arduino_build_158130/sketch_jun06a.ino.zip. 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:

  • 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.

Appears that its this device

Bus 002 Device 009: ID 0403:6015 Future Technology Devices International, Ltd Bridge(I2C/SPI/UART/FIFO)

lsusb
Bus 001 Device 002: ID 8087:8001 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 17ef:1010 Lenovo
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 007: ID 04f2:b449 Chicony Electronics Co., Ltd
Bus 002 Device 005: ID 8087:0a2a Intel Corp.
Bus 002 Device 009: ID 0403:6015 Future Technology Devices International, Ltd Bridge(I2C/SPI/UART/FIFO)
Bus 002 Device 006: ID 17ef:100f Lenovo
Bus 002 Device 004: ID 17ef:1010 Lenovo
Bus 002 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Monitor /var/log/messages

  1. plug in device and I see:

Jun 6 18:34:36 mlammon kernel: usb 2-3.4.3: new full-speed USB device number 12 using xhci_hcd
Jun 6 18:34:36 mlammon kernel: usb 2-3.4.3: New USB device found, idVendor=0403, idProduct=6015
Jun 6 18:34:36 mlammon kernel: usb 2-3.4.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jun 6 18:34:36 mlammon kernel: usb 2-3.4.3: Product: FT230X Basic UART
Jun 6 18:34:36 mlammon kernel: usb 2-3.4.3: Manufacturer: FTDI
Jun 6 18:34:36 mlammon kernel: usb 2-3.4.3: SerialNumber: DO00KDVT
Jun 6 18:34:36 mlammon kernel: ftdi_sio 2-3.4.3:1.0: FTDI USB Serial Device converter detected
Jun 6 18:34:36 mlammon kernel: usb 2-3.4.3: Detected FT-X
Jun 6 18:34:36 mlammon kernel: usb 2-3.4.3: FTDI USB Serial Device converter now attached to ttyUSB0
Jun 6 18:34:36 mlammon mtp-probe: checking bus 2, device 12: “/sys/devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3.4/2-3.4.3”
Jun 6 18:34:36 mlammon mtp-probe: bus: 2, device: 12 was not an MTP device

What else to check?

Thanks,
Mike


#2

Hey Mike,

This is a headscratcher. Do you have a different USB cable you could test?


#3

Hey Sara,

Yes, I actually did have one and its the same result.

Thanks,
Mike


#4

Okay, are you getting this message in under 2 minutes after seeing the flashing purple lights? Coding mode times out in 2 minutes.


#5

Hi Sara,

Yes, I push the button I wait for the purple lights to dim out and try and upload. The response is immediate
and within the 2 minute period.


#6

Got it, thanks for your patience while we figure this out. What Operating System/version of the Arduino IDE are you using?


#7

Hi Sara,

Red Hat Enterprise Linux Workstation 7.3. This is what we should work from.


#8

Got it, we have gotten Linux working with the firmware. Let me check with someone that I know got it running with Linux recently to see what version.


#9

[disclaimer: some total guesses, but might help]

You might try disabling MTP Probing as shown here:

export MTP_NO_PROBE="1"

I also saw some info on udev rules in the base firmware here: https://github.com/RedBearLab/nRF51822-Arduino#add-udev-rules-linux-only


#10

Thanks for the info. I got a chance to try it out again today but no luck.

I still getting the same error.


#11

I am not in a rush but I would like to get this working at some point.


#12

Understood, thanks for your patience. Would it be possible to try another machine? We do support some versions of Linux but not yours specifically.


#13

The only other machine I have is Mac OSX and I have the same exact issue. I am surprised Red Hat not supported. I actually learned about your product from the last RH Summit…


#14

Mike, that stinks you are experiencing the same on your Macbook. Happy to jump on a Google Hangout if that would be helpful. I’m free during the day this week.

We were super excited to be invited to speak by RedHat, but aren’t affiliated with them any way.