Trying again to fix the whole Particle experience


I have posted before about my woes, and even shoe boxed my whole collection of particle projects becasue for reasons unknown to me the particle platform just simply is not working anymore.

As far as i can tell there are a whole catalog or problems with drivers, node versions, particle cli versions. The whole thing is a total mess.

What i would like to do is having taken a deep breath, try again to get things working again.

I have one project I did some time ago, which is running a DT11 Sensor monitoring a few envirometal varibles. I built this project sometime ago and it was built on a core and a photon. They are both in the room with me, and both are working fine. They have very similar code and very similar hard ware. But the fact they are actually working now, means what ever is casuing my problems is NOT my router, or ISP. That is configured correctly. The data is showing up on the Console and they are quite happy.

My real problem is that I can no longer use a old core or get a photon working. Either using the particle app, the spark app on a samsung tablet, or the CLI, on a windows 7 machine.

I think it is safe to say I can jolly well give up on the app/tablet side of things. Thats never been reliable in my experiance and so lets ignore that for now.

However I think my main efforts should be centered on my desktop PC. For reasons unknown to me and after extensive updates of the cli and windows drivers there is a compatability issue going on. So the approch I would like to try is to strip my PC of all things particle/spark related and try again.

Which leads to the question:-

How do I uninstall from a windows machine:-
Particle CLI
Any and all Spark/particle device drivers
and any other related softwear that could be screwing the whole thing up?

Thank you for any thoughts:-


I have to say that Windows 7 drivers management is not very good. I also had some issues using Windows 7. After investigation, there was nothing wrong with the particle software, just that Wndows behaved badly.

Note that the order of operations is important. This is the order of things that worked for me; changing the order of the steps could lead to difficulties (it did for me)


  1. Uninstall Particle CLI first. How? Depends on how you installed it. If you used the windows installer, then use the windows installer to do the uninstall (via the Control Panel). If you installed using NPM, then use that to uninstall (look up the command).
  2. Uninstall node (although you probably do not need to do this, but you did ask for everything to be stripped).
  3. Uninstall ParticlDev (the local development environment, if you installed it)
  4. Use the Device Manager from the Control Panel to uninstall all USB drivers that you no longer need or are zadig or particle related.
  5. Uninstall any SDKs for making iOS/Andriod/Windows apps.
  6. REBOOT your computer afterwards

To Install on Windows 7:

  1. Start with the Windows CLI Installer
  2. In Windows 7, be sure to use the Windows CLI Installer, not any other method.
  3. REBOOT now.
  4. Download, Unzip and Install ParticleDev if you want to develop on your local machine (but it still compiles in the cloud).
    5 In Windows 7, DO NOT install Atom and then the ParticleDev package; do step 4instead.
    6 Install any SDKs if you want/need them.

I can understand your frustration and we appreciate that this is your impression, but the statement is just not true.
Neither the platform nor the tools are broken for thousands of other users, hence the more likely interpretation might be that you may be hitting bugs and extrapolate from these instances that the whole lot is broken, but that’s just wrong.

This might be a fallacy. You can actually have some devices work on the same router but any additional one might fail - e.g. due to limited DHCP IP range which will commonly be set in your router.

But now to your questions:
Extending @cyclin_al’s answer

  • for uninstall 1. the npm command would be npm uninstall -g particle-cli (you may also have non-global instances in other directories - locate them and call npm uninstall particle-cli or just delete the folder)
  • for uninstall 3. the Windows uninstaller may leave some folders behind, you can locate them and delete them too, but it’s not required.
  • for uninstall 4. you may need to have DevMgr display non-present devices and hidden drivers to wipe all references to Particle drivery this way ( ) and make sure to tick the remove from harddrive checkbox

And as a word of consolation: Particle is aware of the bumpy experience the not-so-simple tool-set has caused for many people, hence they are about to release a new way of setting up devices from any browser with no need for drivers or a mobile app. We all hope this will work a lot smoother than the currently used tools (although it’s a more complicated task than an average user might anticipate)
Stay tuned :wink:



Well I’ve had another frustrating eveing, but with some progress. I will try to record my experiance as best as I can but I am VERY tired.

This is still on a window 7 machine

I did not uninstall any thing but gave reinstalling the Windows CLI Installer another go.

It appeared to install ok, but it took a few gos before I was comfertable. After the initial install it took another 5min to install a load of drivers, and I could be sure I wasn’t opting not to install them by default, so I let it take along time to install.

Then I replugged in the troublesome photon. It took a very long time to find the drivers in USB mode and again a very long time in DFU mode. But it found them and declared itself on COM6.

The I completed these steps:-

Use DFU mode on your Photon and run
particle update

DFU mode again and
particle flash --usb tinker.

Then erase all credentials (press RESET and hold SETUP for > 10 seconds until it blinks blue fast)… and try again with:
particle serial wifi

This is the Results from the terminal window:-

C:\Users\Cyber>particle update

Your device is ready for a system update.
This process should take about 30 seconds. Here goes!

! System firmware update successfully completed!

Your device should now restart automatically.

C:\Users\Cyber>particle flash --usb tinker
Found DFU device 2b04:d006
spawning dfu-util -d 2b04:d006 -a 0 -i 0 -s 0x080A0000:leave -D C:\Us
dfu-util 0.8

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2014 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to

Opening DFU capable USB device…
ID 2b04:d006
Run-time device DFU version 011a
Claiming USB DFU Interface…
Setting Alternate Setting #0
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 4096
DfuSe interface name: "Internal Flash "
Downloading to address = 0x080a0000, size = 3952
Download [=========================] 100% 3952 bytes
Download done.
File downloaded successfully
Invalid DFU suffix signature
A valid DFU suffix will be required in a future dfu-util release!!!

Flash success!

So far so good. although I am not too sure of that Invalid DFU suffix signature issue:-

I then when I did particle serial wifi, I got this result:-
Done! Your device should now restart.

But thats when it falls apart.

I then got a strange flashing cyan with a quick orange burst

I did some google foo and came up with this:

I tried:

Partical keys new
But only got

Search in community came up blank for : flashhing cyan with orange burst

Any ideas…?


It is possible to have router problems that caused that particular grief. Again, I had similar problems as we worked out in this thread:

I actually think it was an ISP problem, rather than a router problem, but that is only a guess, but for sure one or the other.

As for the “red/orange burst” issue, the normal solution to try is this:

This should generate new both private & public keys.

1 Like

You’ll have to make sure openSSL is installed and included in your path. Not quite sure why it didn’t come with the installer. This topic should tell you what you need:

BTW, searching for ‘orange’ will give you a lot of topics regarding this :wink:

Well I most defnitely used the install, becasue I did read the message saying it is important.

Just to let you know those drop box links are broken.

I’ve just checked my path, but can not see any OpenSSL referance. But my path is huge now, that that is some thing I will check out.



1 Like

Well I have completely uninstalled the particle-cli.

I uninstalled the installer version, and found there must have been a npm version present as well, and uninstalled this as well.

I uninstalled the drivers including the hidden drivers.

These links might be of help to anyone else.

Then I reinstalled the installer version of particle-cli.

I managed to use ANOTHER photon and managed to succesfully set that up. I as a procedural test is did:-

Use DFU mode on your Photon and run
particle update

DFU mode again and
particle flash --usb tinker.

Then erase all credentials (press RESET and hold SETUP for > 10 seconds until it blinks blue fast)… and try again with:
particle serial wifi

Minor issue required me to manual claim the device to my particle account, but I managed to and then proceded to flash it with a blink sketch successfully.

So that indicates I have a working platform on atleast 1 computer, my windows 7 desktop.

However I am having trouble with my problem photon.

I repeated the particle update, tinker flash, reset the crednentials and particle serial wifi.
However it flashing cyan withs a quick orange.pause before returning to the cyan flash.

Will keep trying, to plough through the community.


(ScruffR: Took the liberty to adapt the link to the end of the thread as this cuts the looong discussion short :wink: )

Have you considered following this hint given above?

Nearly there.

For some reason Openssl, was casueing errors. I have had to declare it in my path manually. Then a particle keys doctor command mangaged to get it beyond the blinking cyan orange issue.

However I tried the particle keys server and that resulted in a cyan/red problem.

redoing the particle key doctor fixed that and it now breathing cyan.

Think it would be best to manually claim the device… looking that command up…


Finaly fixed it… Now have the troublesome photon up and running a blink test sketch, flashed from the IDE

Wow, this has been quite a head bang and nearly 3 days of effort.

If a summary helps anyone who might be following this here has been my lessons learnt:-

As someone how has been using the particle platform from the early spark days, its worth uninstalling the particle cli completely. Check it has gone by testing the command line for ‘particle login’ if its not installed in either variant then you will not be able to log in.

Uninstall the drivers and reboot.
Reinstall particle-cli.
Don’t assume that Openssl will be installed without the need to declare it in the path. The installer instructions do make a point of avoiding a custom install, as it says the installed takes care of it without having to set up the over all enviroment, and thus they say do not change the install directorys, but in my instance whilst openssl-win32 was installed during the install, the path was not updated to the fact that openssl-win32 installed itself in its own directory.

for some reason particle keys server didn’t work for me, but I easily used:-

‘particle device add 0123456789ABCDEFGHI’ to add it to my account.

Thank you for all those who offered help and suggestions. They were all worth it, a negative test result can still have a positive impact on a solution. So thank you

Now to remember what projects I wanted to get back too,


1 Like

@VideoLiam, glad you stuck with it! So, what are you going to make with your Photon? :wink:

Well I got hold of a load of LED matix panels that came off the video screens for a rock stars video wall. Apparently there we a touch grey for them… so there were a dozen or so crates of these panels going begging.

OK, I’m only going to use one or two of these 16 x 64 panels in an instalation, but the advantage of using the photon to drive then is I can update the code after they have been installed without having to keep plugging in… then maybe ad a webhook to two and get then to interact with the enviroment…


@VideoLiam, are these “dumb” matrix panels or they include the drivers and all?

They are basic matrix panels, with shift registers onboard, and LED drivers.

To drive them I only need to send shift register commands a quick run down of the spec:-

here are 48 MBI5034 LED controller chips on the PCB, which are 16 bit shift register constant current sinks.
The controller chips are labelled R,G & B 1-16. So each chip does 16 LEDs of the same colour. They each have a current set resistor.
There are two address line inputs and the LED chips seem to be soldered in to banks of 4. Which makes sense.
There is an HC138 decoder on the address lines, and only the first four outputs seem to be wired. Again, matches the above.
There are also 8 dual FET chips, which seem to control the 4 banks.

An arduino Uno with drive them to a limited degree, and a tensy 3.6 has been tested to drive them all LED’s on… But I can get other hardware to interact with them…

But for now I just want to be able to play with them without having to plug and unplug every two minutes…


1 Like

@VideoLiam, I wonder how similar these are to the Freetronix units? Do you have an Ardunino library for these?

@VideoLiam, Great stuff for sticking through the process. As a consolation, hopefully you have learned a lot about Windows and installing (partial) toochains, even though it was more than you expected.

Best of luck with your projects! It is amazing what the possibilities are with the Photon…


No they are digiLED units I’m afaid.

I have a simple test sketch if it helps:-

#define PIN_CLK 2
#define PIN_ADD0 3
#define PIN_ADD1 4
#define PIN_OE 5
#define PIN_LAT 6
#define PIN_D1 7
#define PIN_D2 8

int ct = 0; // test counter

void setup() {
for (int i = 0; i < 7; i ++) {
pinMode(2 + i, OUTPUT);
digitalWrite(2 + i, LOW);
digitalWrite(PIN_OE, LOW);

// test 1
// set A0 and A1 to 0 0
// controls bank to push vals to.
// 3
// 2
// 1
// 0
// etc
digitalWrite(PIN_ADD0, 0);
digitalWrite(PIN_ADD1, 0);
// each bank consists of 128 leds
// d1 is data for bottom half of display
// d2 is data for top half

// shifting data:
// each bank is further split into chunks
// 0 pixel is bottom right, proceeds to left until hitting 8
// row then changes to row+4 and continues from column 0
// colour then changes to next in cycle
// | row 0 | row 4 | row 0 | row 4 | row 0 | row 4


void loop() {
//turn off display
digitalWrite(PIN_OE, HIGH);
//set latch low to send data
digitalWrite(PIN_LAT, LOW);
ct %= 384;

//think of each bank as 384 alternating rgb leds. Turn each one on in turn
// this will do both upper and lower panels at the same time
for (int i = 0; i < 384; i++) { // led index
if (i == ct) {
digitalWrite(PIN_D1, 1);
digitalWrite(PIN_D2, 1);
} else {
digitalWrite(PIN_D1, 0);
digitalWrite(PIN_D2, 0);
// toggle clock
digitalWrite(PIN_CLK, LOW);
digitalWrite(PIN_CLK, HIGH);


// flip the latch
digitalWrite(PIN_LAT, HIGH);
digitalWrite(PIN_LAT, LOW);

// turn on display
digitalWrite(PIN_OE, LOW);


Also check out:-!topic/london-hack-space/RZeO143uh7A

There is a long running discussion thread:-


@VideoLiam, wonder if the RGBPanelMatrix library could be adapted for these panels.