Restore Core with Tinker using CLI and DFU

There is probably no way people can help with this one…

Something happened to my WiFi access point (an Asus 802.11ac router in access point mode, from about 4 years ago). So I had to update my firmware. Everything’s restored there. BUT, my trusty Core couldn’t connect!

I am attempting to reset my Core from the beginning, but it’s stuck in a fast blink green.

Ok. I want to restore it with Tinker, but when I do this with CLI, I get the following:

matt@Matts-iMac ~ % dfu-util -v -l
dfu-util 0.11

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2021 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/

libusb version 1.0.26 (11724)
Found DFU: [1d50:607f] ver=0200, devnum=17, cfg=1, intf=0, path="20-6", alt=1, name="@SPI Flash : SST25x/0x00000000/512*04Kg", serial="8D84205E5055"
Found DFU: [1d50:607f] ver=0200, devnum=17, cfg=1, intf=0, path="20-6", alt=0, name="@Internal Flash  /0x08000000/20*001Ka,108*001Kg", serial="8D84205E5055"
matt@Matts-iMac ~ % particle flash --usb tinker
Error writing firmware: Cannot read property 'filter' of undefined

I did this a few years ago successfully. However, I can’t find the tinker binaries. I suspect the error message is that the Core version of the system and tinker is not included / not available / invalid link?

I’m able to load my application with this command:

dfu-util -d 1d50:607f -a 0 -i 0 -s 0x08005000:leave -D core.bin

matt@Matts-iMac Downloads % dfu-util -d 1d50:607f -a 0 -i 0 -s 0x08005000:leave -D core.bin                                                   
dfu-util 0.11

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2021 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: Warning: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release
Opening DFU capable USB device...
Device ID 1d50:607f
Device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Interface #0 ...
Determining device status...
DFU state(10) = dfuERROR, status(10) = Device's firmware is corrupt. It cannot return to run-time (non-DFU) operations
Clearing status
Determining device status...
DFU state(2) = dfuIDLE, status(0) = No error condition is present
DFU mode device DFU version 011a
Device returned transfer size 1024
DfuSe interface name: "Internal Flash  "
Downloading element to address = 0x08005000, size = 104756
Erase   	[=========================] 100%       104756 bytes
Erase    done.
Download	[=========================] 100%       104756 bytes
Download done.
File downloaded successfully
Submitting leave request...
Transitioning to dfuMANIFEST state

BUT, My Core is not able to connect to my WiFi.

I created the firmware binary using the cloud compiler, and, downloading the binary file locally.

I can run “particle setup”. but after setting the WiFi credentials, it never gets to breathing cyan. It stays fast blink green.

Hey, sorry to hear what happened to your Core.
I would try this tool:

Not sure if it supports the core though.
Another thing, your router supports 802.11 ac which means only 5GHz, could it be? the core can only connect to 2.4 GHz. Trouble there?

Thank you Gustavo. My router is a “tri-band” unit, working on 2.4 and 5 GHz. (802.11b/g/n and ac).

The browser based usb install - it shouldn’t be any better/different than command line?

I’ve seen other posts where people have had this trouble (flashing green light) and there’s some type of corruption to the WiFi credentials? I think I need to take the Core back down to a factory default setup, but can’t find exactly how to do that.

I know I should just scrap it…but, I know the hardware is fine…

These steps may work:

Put the Core in DFU mode (blinking yellow)

particle flash --factory tinker

Wait till the Spark Core’s main RGB LED returns to flashing yellow

particle flash --usb cc3000

Wait till the Spark Core’s main RGB LED returns to flashing yellow

particle flash --usb tinker

If the device does not go into listening mode, hold down the MODE button until the LED blinks dark blue. Then set the Wi-Fi credentials:

particle serial wifi

Thank you Rick… but I’m afraid that Core support must be removed from the latest CLI ?

matt@Matts-iMac Downloads % particle flash --factory tinker
Failed to flash tinker: no files included

Do the 2.4 and 5 GHz bands have the same SSID? That’s problematic for the Core.

That just may be it! Strangest thing - my access point went offline and I did a firmware update. I don’t remember the settings, but I think I had it set up under different ssids. After the firmware updated, it was set up under the same ssid!

Sadly, I won’t get to test this until next weekend….out this week to save the world!

Oops, sorry about that. You can run v2 of the CLI which still has support for the Core. Instructions are here:

https://docs.particle.io/troubleshooting/guides/build-tools-troubleshooting/specific-cli-version/