Spark core flashing green after wifi reset

@rbbahia, do you have the correct SSID? Does you password have any spaces or weird characters?

Not actually your problem cause, but if you do it that way I'd guess you'll have troubles since you keep retriggering Spark.connect() before it actually finished, possibly causing it to never connect.
And for MANUAL you'd need to call Spark.process() regularly (not Spark.connect()).

It is increasingly difficult. I will explain what I did now. Recalling that local use cloud linux.

1 - Factory reset hold mode button and press and release reset button while keeping the mode button pressed until blinking cyan
2 - the core is blinking blue.
3 - now I run the command: spark flash --usb CC3000
4 - after flash, blinking blue with red for a few seconds and then turns yellow flashing.

What should I do now? apply factory_firmware.bin?

If I insert the wifi credentials and I install the factory_firmware.bin he flashes cyan very fast for more or less 30 seconds Then flashes red fast at the same time, then back to fast blinking cyan,

One question what is the correct sequency os commands to load software after a hard reset?

???

1 - when holding mode button after reset you should first get yellow (DFU mode) and after that white (factory reset), but not cyan.
2 - the blue blinking should tell you to enter WiFi credentials (best via USB, but SmartConfig may work too)
3 - to have this work, you’d need to put the Core into DFU mode (yellow blinking - see 1)
4. might be due to points 1, 2 & 3 - do you mean magenta, when calling it “blinking blue with red”?

I have the same problem, I think. I applied the factory reset and got it to flash blue, but when I try to apply the wifi credentials through the android app, it starts flashing green. I also tried clearing the wifi credentials using the method described here:

I would have thought that a factory reset would remove the previous wifi credentials.

I also tried reflashing CC3000 but that didn’t help.

If you've got :particle: Particle CLI installed, I'd recommend this over the SmartConfig/App way.
Command: particle serial wifi

If you haven't you can also set the credentials via USB serial (for Windows you'd need to install drivers)
When doing it this way, you'd open a serial monitor (e.g. PuTTY) and enter w to get into WiFi credentials.
Important is that you should be asked about about your network security settings.


It does, but you can even have up to seven sets of WiFi credentials without problem, they'd just be scanned one after the other, if they fit to any of the present networks.
So there shouldn't be need to erase all existing credentials in order to get your Core connected to a new network (the oldest should get pushed out automatically)

But if you still find WiFi credentials after factory reset, you might not have performed it properly.
The Core needs to be flashing white rapidly for some time and come back into Listening Mode by itself.


BTW, there are some limitations for the CC3000
It can't connect to 5GHz networks, so deactivate this option on your router (b,g only)
It can't connect to WiFi channels >11, so set up your router accordingly.

See also
https://docs.particle.io/guide/getting-started/start/core/#prerequisites-for-setup

1 Like

My network is 2.4GHz only and none of the wifi channels is greater than 7. Tried connecting to the Spark Core through Putty (while it is in DFU mode) but all I get is a black screen with a static green cursor. Typing “w” does nothing. I am using Putty Portable on Windows 7.

Not in DFU mode but in Listening Mode (blinking blue).

OK, I managed to get to the part where I enter the credentials and I got this:

Thanks! Wait about 7 seconds while I save those credentials...

Awesome. Now we'll connect!

If you see a pulsing cyan light, your Spark Core
has connected to the Cloud and is ready to go!

If your LED flashes red or you encounter any other problems,
visit https://www.spark.io/support to debug.

    Spark <3 you!

The light reverts to flashing green though. I tried multiple times for good measure and also to connect to a different Wifi router (there’s more than one signal in the area).

You did get asked for WPA2/WPA/WEP/open?
You have no MAC filtering on your router?
The COAP port is open on your firewall?
You’ve got free IPs in your DHCP range on the router?
Does LED ever start flashing green rapidly?
How long is your SSID and passphrase?
Any “funny” characters (non ASCII) in it?
Can you try different (simple) SSID/PWD or even an open network?
Can you try your mobile phone as AP?

You did get asked for WPA2/WPA/WEP/open?
Yes
You have no MAC filtering on your router?
No
The COAP port is open on your firewall?
Not sure what this is
You’ve got free IPs in your DHCP range on the router?
Yes
Does LED ever start flashing green rapidly?
Yes, whenever I restart the device or after I attempt to set the wifi credentials
How long is your SSID and passphrase?
23 characters (this used to be fine)
Any “funny” characters (non ASCII) in it?
No
Can you try different (simple) SSID/PWD or even an open network?
Tried by temporarily removing WiFi security but that didn’t help
Can you try your mobile phone as AP?
Tried but failed

Edit: The device was working fine up until a week ago but then I started having trouble with my cable modem/router and had it replaced. Since then the Spark Core has been flashing green at about 5Hz (I think) whenever I start the device or soon after I attempt to enter the wifi credentials.

Just some more questions - since your answers to the previous ones didn’t show anything obvious:

Is your Phone your tried to tether the Core a iPhone? If so can you try a less advanced one :wink:
Have you by any chance updated your application to firmware version 0.4.5 or are still on 0.3.4?
Have you got a Core with chip or uFL antenna?
Any possibility/sign for the hardware (esp. antenna) to be damaged?


COAP Port (UDP Port 5683) is the standard port needed open for cloud communication - which doesn’t seem to be your issue, because you’re not even getting onto the WiFi.
https://en.wikipedia.org/wiki/Constrained_Application_Protocol

First of all thanks for not giving up on me.

My phone is a Samsung Galaxy S3 Mini
I don’t know how to update the firmware version. Can you point me to a recent tutorial?
My Core got a chip antenna

Not sure if it helps but I’ve had the device since May of this year. This device was working fine up until I was playing around with changes to the network. Then I resolved all my network problems but the core won’t connect, even after numerous factory resets.

Unlike the Photon where you have roughly three firmware parts (2x system + 1x user/application code) the Core only has one combined application/system firmware section.
So when you build your application code you can decide ontop of which system firmware release you want to build your program.
If you use Particle Build (Web IDE) you can select the desired firmware via a drop-down list under your destination Core’s device ID
see
https://docs.particle.io/guide/getting-started/build/core/#wait-what-is-firmware-

But as you only can flash via USB, you’d need to download the resulting firmware.bin by use of the little cloud symbol next to the app name in Web IDE and then flash via `particle flash --usb yourFirmware.bin’

When I press the cloud symbol it tries to send the firmware to my Core through wifi, but that cannot work because I cannot get it connected. How to do I download the bin file to my PC so I can attempt to send it via USB?

This cloud symbol does that for you?

For me it just builds and then downloads the bin file.

Sorry, my wrong, the error I got was because of a problem with the included library. I will worry about that later. In the meantime I managed to download the firmware for a simple blinking program to my PC. Now how do I go about "flash via `particle flash --usb yourFirmware.bin’ "?

I believe I got node.js installed on my pc because when I type “node” in the command prompt, the prompt changes to “>” . But if I enter:

particle flash --usb c:\firmware.bin

I get:

SyntaxError: Unexpected identifier
at Object.exports.createScript (vm.js:44:10)
at REPLServer.defaultEval (repl.js:117:23)
at bound (domain.js:254:14)
at REPLServer.runBound [as eval] (domain.js:267:12)
at REPLServer. (repl.js:279:12)
at REPLServer.emit (events.js:107:17)
at REPLServer.Interface._onLine (readline.js:214:10)
at REPLServer.Interface._line (readline.js:553:8)
at REPLServer.Interface._ttyWrite (readline.js:830:14)
at ReadStream.onkeypress (readline.js:109:10)

OK, do you happen to know which version node.js you’ve got on your machine?

If you haven’t alread got Particle CLI follow this guide
https://docs.particle.io/guide/tools-and-features/cli/

If you had already got CLI make sure to run npm update -g particle-cli directly from your console (not from within node).

If you haven’t already got it you’d also need DFU support (which you should have, since you said you’d reflashed the CC3000)
https://docs.particle.io/guide/getting-started/modes/photon/#dfu-mode-device-firmware-upgrade-

And if you are on Windows you also need this tool to install the DFU drivers
http://zadig.akeo.ie/

After all that put your Core into DFU mode, then start zadig, find your Core in the drop-down and install libusbK for it.

Once you got that, to avoid any confusion about forward or back slashes and such, cd into the directory where you’ve got your firmware.bin downloaded to.

And again directly in the console enter 'particle flash --usb [firmware.bin]where[firmware.bin]` is the name of the downloaded file.

Sounds a lot of work, but it’s worth it. In future you’ll be able to solve possible problems a lot easier :wink:

I tried npm update and got a revolving cursor animation which wouldn’t stop. I opened another console window and ran “particle flash --usb firmware.bin”

and got this:

C:\>particle flash --usb firmware.bin
Found DFU device 1d50:607f
Apparently I didn't find a DFU device? util said  dfu-util 0.7-msvc

Copyright 2005-2008 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2012 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util@lists.gnumonks.org

Found DFU: [1d50:607f] ver=0200, devnum=7, cfg=1, intf=0, alt=1, name="@SPI Flas
h : SST25x/0x00000000/512*04Kg", serial="6D9151934857"
Found DFU: [1d50:607f] ver=0200, devnum=7, cfg=1, intf=0, alt=0, name="@Internal
 Flash  /0x08000000/20*001Ka,108*001Kg", serial="6D9151934857"

checking file  firmware.bin
spawning dfu-util -d 1d50:607f -a 0 -i 0 -s 0x08005000:leave -D firmware.bin
dfu-util 0.7-msvc

Copyright 2005-2008 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2012 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util@lists.gnumonks.org

Invalid DFU suffix signature
A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 1d50:607f
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuERROR, status = 10
dfuERROR, clearing status
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 1024
DfuSe interface name: "Internal Flash  "
Downloading to address = 0x08005000, size = 76116
Download        [=========================] 100%        76800 bytes
Download done.
File downloaded successfully
Transitioning to dfuMANIFEST state
Flashed!

C:\>

After that the light started flashing green again

The revolving cursor should be running a while to download all the required files and install them. If you didn’t cancel the process it should be ready by now.

What version are you on now (particle --version)?
I see you’ve still got dfu-util v0.7, maybe you could update to v0.8

But obviously reflashing didn’t help. So we are back at start :weary: This is most annoying!

One final suggestion might sound stupid (especially since you did try before).
Wipe all the WiFi credentials again (hold MODE/SETUP button till rapid flashing blue).
Activate WiFi tethering on your Galaxy S3 Mini.
Enter the credentials correctly.
Take your Phone and Core somewhere far away from your home (WiFi interference) and try if it can connect then.

I’ve pinged more clever Particle guys than me - maybe one of them has a better idea :blush: