Trying to put my Electron in the DFU mode (Hold Mode and Reset, release Reset, waiting until LED is flashing yellow), the LED flashs 2 or 3 times yellow and then the LED becomes solid yellow. The Electron isn’t discoverd as DFU device anymore. It worked for multiple days without problems.
Flashing over serial mode (–serial) seems to work.
From the dmesg (under Linux):
[ 478.867093] cdc_acm 2-2:1.1: urb 0 failed submission with -19
[ 478.867185] cdc_acm 2-2:1.0: failed to set dtr/rts
[ 478.870219] cdc_acm 2-2:1.1: urb 1 failed submission with -19
[ 478.872356] cdc_acm 2-2:1.1: urb 2 failed submission with -19
[ 478.874515] cdc_acm 2-2:1.1: urb 3 failed submission with -19
[ 478.876633] cdc_acm 2-2:1.1: urb 4 failed submission with -19
and
[ 934.886574] cdc_acm 2-2:1.0: ttyACM0: USB ACM device
[ 1099.311497] usb 2-2: USB disconnect, device number 11
[ 1099.318145] cdc_acm 2-2:1.1: urb 11 failed submission with -19
[ 1099.318816] cdc_acm 2-2:1.0: failed to set dtr/rts
and also some times:
[ 1657.550199] usb 1-2: device not accepting address 37, error -62
[ 1657.670185] usb 1-2: new full-speed USB device number 38 using xhci_hcd
[ 1662.718317] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
[ 1668.094457] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
[ 1668.302383] usb 1-2: device not accepting address 38, error -62
[ 1668.302426] usb usb1-port2: unable to enumerate USB device
[ 2130.583084] usb 1-2: new full-speed USB device number 39 using xhci_hcd
[ 2135.935219] usb 1-2: device descriptor read/64, error -110
[ 2151.551513] usb 1-2: device descriptor read/64, error -110
If the Electron isn’t connected to the USB, I can change into the DFU mode - LED is blinking yellow but as soon as I connect the USB cable, the LED goes off or change to solid yellow.
dmesg from better times:
Jun 4 01:33:47 jim-VirtualBox kernel: [ 448.478823] usb 2-2: new full-speed USB device number 6 using ohci-pci
Jun 4 01:33:48 jim-VirtualBox kernel: [ 448.817814] usb 2-2: New USB device found, idVendor=2b04, idProduct=c00a
Jun 4 01:33:48 jim-VirtualBox kernel: [ 448.817820] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jun 4 01:33:48 jim-VirtualBox kernel: [ 448.817823] usb 2-2: Product: Electron
Jun 4 01:33:48 jim-VirtualBox kernel: [ 448.817826] usb 2-2: Manufacturer: Particle
Jun 4 01:33:48 jim-VirtualBox kernel: [ 448.817829] usb 2-2: SerialNumber:
Jun 4 01:33:48 jim-VirtualBox kernel: [ 448.833078] cdc_acm 2-2:1.0: ttyACM0: USB ACM device
And
Jun 4 00:13:19 debian kernel: [20240.659737] usb 3-1: new full-speed USB device number 10 using xhci_hcd
Jun 4 00:13:19 debian kernel: [20240.801311] usb 3-1: New USB device found, idVendor=2b04, idProduct=c00a
Jun 4 00:13:19 debian kernel: [20240.801316] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jun 4 00:13:19 debian kernel: [20240.801319] usb 3-1: Product: Electron
Jun 4 00:13:19 debian kernel: [20240.801322] usb 3-1: Manufacturer: Particle
Jun 4 00:13:19 debian kernel: [20240.801324] usb 3-1: SerialNumber: 00000000050C
Jun 4 00:13:19 debian kernel: [20240.801849] cdc_acm 3-1:1.0: ttyACM1: USB ACM device
Jun 4 00:13:19 debian mtp-probe: checking bus 3, device 10: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-1"
Jun 4 00:13:19 debian mtp-probe: bus: 3, device: 10 was not an MTP device
I tried it now on different computers with different Linux systems and different USB cables. I blacklisted the cdc_acm. Still the same problem.
[ 241.684961] usb 3-2: device descriptor read/64, error -110
[ 241.913046] usb 3-2: new full-speed USB device number 9 using xhci_hcd
[ 247.063722] usb 3-2: device descriptor read/64, error -110
[ 262.687730] usb 3-2: device descriptor read/64, error -110
[ 262.915813] usb 3-2: new full-speed USB device number 10 using xhci_hcd
[ 267.946434] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
[ 273.325187] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
[ 273.533256] usb 3-2: device not accepting address 10, error -62
[ 273.653309] usb 3-2: new full-speed USB device number 11 using xhci_hcd
[ 278.703961] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
[ 284.082627] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
[ 284.290717] usb 3-2: device not accepting address 11, error -62
[ 284.290761] usb usb3-port2: unable to enumerate USB device
error -100 seems somehow related to power over USB (as far as I found info on the internet). Serial flashing still no problem.
I’ll get more Electrons at the end of the week. So I’ll do some tests with them.
PS: the D7 LED is solid blue while the mode LED is solid yellow.
Ok. Tested with the new Electrons. They work in DFU-Mode. So it’s not the host. Either hardware problem on the Electron or the firmware (already tried with flashing Tinker - didn’t change the DFU solid LED).
Using the same USB cable? I had a similar problem and serial mode worked and dfu-util didn’t for the most part. I would try a different USB cable. Not all cables are made the same it seems. Some just carry power and hardly any signal. When I changed cables dfu works like a charm.
Tested different USB cables from different companies, different lengths. They all work on the other Electrons.
Think it’s a hardware problem or somehow a bad Bit somewhere in the memory.
Also flashed the Electron with different firmware versions (0.5.3, 0.6.2) but still the solid yellow light.
Flashing over serial works and reading (Serial methods) too.
Can’t go into the safe mode - LED stays yellow solid.
I am having the same issue.
Yesterday I was trying my first Electron. I can put it into DFU mode and the LED blinks yellow as long as it is not connected to PC. But once I connect it to USB it seems everything halts and the yellow LED becomes solid!
Flashing through serial seems to work.
Can you advise what could be the problem? Is it firmware-related or is it a hardware problem?
Can I reset the firmware to factory setting through serial as dfu is not operational?
Also when I try running tinker. It arrives to a point that it blinks cyan for some time then it will blink yellow for around three times and repeats again back to blinking cyan.
My Electron hasn’t connected to cloud successfully yet.
Any advise is appreciated
So you put it in DFU mode and then connect it? What happens if you connect first and then try DFU mode?
That sounds like a Keys issue (blinking orange). Have a search on the community, since there are several topics dealing with this. (Youll need to have DFU working first though)'.
If I connect first then put in DFU, I get the same outcome which is a solid Yellow or sometimes it blinks yellow once and turns off. Seems to me kind of overall halt at an early state of running DFU mode.
And this happens no matter which state the computer is in. Even if I connect Electron at early boot time (Windows F8 menu or maybe earlier) I get the same symptoms. Which seems to me as unlikely to be a driver problem but I’m not certain though.
@jgdev Have you got any new with your Electron that was affected by this?
Do you notice that the D7 blue LED behaves differently when entering DFU mode than your other normal Electrons?
I have one Electron so I can’t compare.
I have no idea what the underlying cause is… but I was able to recover it using JTAG/SWD mode using an Adafruit STLink V2 mini: https://www.adafruit.com/product/2548
Used STLink in Windows to erase all sectors, re-flashed everything including the 0.6.2 bootloader and my particle cloud key… now DFU mode works again.