Recover electron from beaver attack

–My water monitoring station in northern Minnesota was cut down in its prime by beavers. It ended up half submerged and flooded with river water. It sat in the river for 3 weeks before I could make the 7 hour trip to rescue it. Since rescue I dried, toothbrushed and dried it again. Amazingly the LEDs come on when I plug it in and it connects by the libusbK port on my Windows system. But the beaver attack seems to have traumatized the electron and I can’t get past DFU mode.
–This is probably hopeless but since the electron seems to go into DFU mode, I thought I’d try to recover it. Symptoms are:
–When power applied,
red power LED on.
blue D7 LED on.
multi-color LED flashes multi-color for 2 seconds and then yellow (DFU mode)

I tried particle doctor at the CLI.
Device Doctor responds “Updating system firmware” and states the firmware update successful.
Device Doctor then responds “Flashing the Device Doctor app” and “Flash success!” but then reports “The Doctor didn’t complete successfully. Could not find serial device.”

I also tried using the CLI to flash the system over usb, The effort went:
G:>particle flash --usb system-part1-0.7.0-electron.bin
Flash success!
G:>particle flash --usb system-part2-0.7.0-electron.bin
Flash success!
G:>particle flash --usb system-part3-0.7.0-electron.bin
Flash success!

Even with all these successful flashes, I still only get the DFU mode.
Is there a step I’m missing or is the electron toast?
thanks, john

1 Like

It’s quite possible there is damage to the u-blox cellular module.

This might help tell if that’s the case. Compile and flash this user firmware by USB:

SYSTEM_MODE(MANUAL);
void setup() {
}
void loop() {
}

In manual mode the modem won’t turn on and that will help narrow down the possible problems.

1 Like

Could also be the switcher providing 3.8v to the Ublox modem. I would check all the supplies on the board to make sure they are healthy.

1 Like

When you say the LED flashes multicolor for 2 seconds, what colors?

I can’t get the electron into Listening Mode, so I can’t flash your suggested firmware over usb. The electron is connected over usb but in “Electron DFU Mode” with the libusbK USB driver. That doesn’t seem to work with the “particle flash --serial firmware.bin” command.
Is there is a way to flash your suggested code when the electron is in DFU mode?

You’re right, it could be power to the Ublox. I don’t have the electrical engineer expertise to check all the power supplies on the board. So I’ll muddle around with other possible solutions for a little while more.

1 Like

@colemanjj do you have a makerspace nearby? someone there might be able to help you out with that Ublox power issue

Thanks for the inquiry. When I apply power to the electron all the LEDs light up. This seems probably a bad sign.

The red charging LED pulses at 1 second interval.
The blue LED at D7 is solid blue.
The mode LED flashes red/blue rapidly for about 2 seconds then turns to a yellow rapid flash.
These LEDs continue that way indefinitely, until I disconnect power.
or
If I run “particle doctor” in the CLI, the text in the CLI seems to indicate the system firmware is being flashed and the mode LED stops flashing briefly and then resumes flashing rapidly yellow.
or
If I run “particle flash --usb system-part1-0.7.0-electron.bin” in the CLI the mode LED pauses for a couple of seconds and then resumes flashing rapidly yellow.

Text in the CLI indicates that the flashes are successful but the electron stays in DFU mode.
Thanks in advance for any insights you can provide.

MikeP171,
Good idea. There probably is a makerspace around here someplace, this is Madison Wisconsin afterall. I’m not hooked into the maker community so if anyone knows of some contacts in Madison let me know. Thanks

For DFU the command is particle flash --usb firmware.bin and not --serial.

That is normal, since you also need to flash part2 and part3 and finally the application firmware ot get a system that can get out of DFU Mode safely.
After that you should (if not already done) update the bootloader, but this has to be done via --serial in Listening Mode.

2 Likes

ScruffR,
thanks for the suggestions.
With the electron in DFU mode I ran:
G:>particle flash --usb system-part1-0.7.0-electron.bin
Flash success!
G:>particle flash --usb system-part2-0.7.0-electron.bin
Flash success!
G:>particle flash --usb system-part3-0.7.0-electron.bin
Flash success!
unit is still flashing yellow (in DFU mode)
then:
G:\particle flash --usb --force bootloader-0.7.0-electron.bin
Flash success!
unit is still flashing yellow.
I then flashed the short code provided by rickkas7 with the command:
G:>particle flash --usb firmware.bin
still flashing yellow and the electron is still connected in “Electron DFU mode” with the libusbK USB driver

Seems so close to working but I think this unit may be toast.
Unless there is something obvious left to try, I will put it in a drawer for a rainy day when I have nothing else to fiddle with. Thanks everyone for the help. If I ever get it going I’ll post here to explain how.
john

btw. I did check the obvious pins for voltage. 3V3=3.36v , VIN=4.7v when power by usb from computer.

That would actually be flash --serial bootloader-0.7-0-electron.bin as mentioned here

I also said

So part1, part2, part3 then firmware.bin and then the device should get out of DFU Mode, and only after that flash the bootloader.

I don't know what brute-forcing the bootloader via DFU may have caused. You should only use the force switch if you absolutely know what you are doing.

However you should be able to start over again
DFU Mode

particle flash --usb tinker
particle flash --usb system-part1-0.7.0-electron.bin
particle flash --usb system-part2-0.7.0-electron.bin
particle flash --usb system-part3-0.7.0-electron.bin
particle flash --usb tinker

(with CLI 1.30.0 you should also be able to just run particle update)

Listening Mode

particle flash --serial bootloader-0.7.0-electron.bin

ScruffR,
Thanks for the further suggestions. I did the 5 commands in the order you suggested. Each said “Flash success!” but I can’t get the unit out of DFU mode.
Since I’m using CLI 1.30 I also tried “particle update” which responded with:
“System firmware update successfully completed!
Your device should now restart automatically.”

but the unit stays in DFU mode. I also disconnected all power and reconnected but no luck, still DFU mode.
I appreciate your help but I think it’s stuck.
thanks, john

Is the button that gets you into DFU mode stuck in the down position?

Maybe a piece of beaver tooth is stuck down in there or something :smile:

image

4 Likes