[Solved] Particle Integration Down?

@RWB @David_Armitage what version of the Particle firmware are you both running? I’d like to replicate your scenario as close as possible.

The first version of the test is up and running. It has two Photons. One on 0.6.0 and one on 0.7.0. One is publishing every 10 minutes and one is publishing every 10 seconds. I’m using curl to directly watch the Particle event stream API to eliminate any variables introduced by the Particle Node client or the Losant infrastructure.

If that runs well for a few days, I’ll switch to using the Particle Node client without Losant. If that runs for a few days, I’ll introduce Losant. Hopefully we’ll catch it somewhere along the line.

I’m running 0.8.0-rc.8 and have been for awhile without any issues except the recent events were talking about.

Thanks for testing this out for us.

@Brandon_Cannaday @Michael_Kuehl My integration is actually not working right now.

It says the last received event was 4 hours ago but the Particle Console is showing constant Particle Publishes that normally are received by Losant.

The Dashboard has not received data for 4 hours.

I am also running 0.8.0-rc.8

You can see my Dashboard at https://app.losant.com/dashboards/5a5111f68cc82100078f0db5

FYI, we rolled out the more aggressive health checks late last night, and are continuing to watch our local device tests (as well as your dashboard, David - thanks for linking that!).

Maybe a good idea would be when there is a disconnect to show that in the dashboard stream/historical stream?
Right now it seems the dashboard (particularly time series graphs, which is probably everyones most used block) automatically bridges the points with an interpolated line which basically paints over any disconnects visually speaking.

@David_Armitage Curious what Voc Sensor your using?

@Michael_Kuehl I’ve not noticed any more issues that required an integration reset.

@David_Armitage @RWB have either of you had any more issues since the changes we rolled out the evening of the 16th?

It seems like the issue is resolved, though as @Christopher_Penney pointed out it can be difficult to see a disconnect. If there are any occurring the integration is restarting properly though. Thank you for addressing this.

No more issues since you guys fixed it.

I have 2 different applications running with no missing data or restarts required.

I like how the time graph links the last received data to the most recent so don’t change that but adding some disconnected indicator would be nice.

Great, I very happy to hear that!

We are discussing internally adding a more permanent connect/disconnect log for integrations, so you can see at least a few days of history with reasons for the disconnections, instead of just the last connect time or the last disconnect reason - but that would be a longer term addition, it probably would not be added soon.

Hey Dylan, any updates on the plan to have that direct integration with particle devices so that we can use device:connect and device:disconnect nodes to trigger flows base on the connectivity of the integration device as if it were directly connected?

We don’t have any immediate plans to tightly integrate Particle connection status with a Losant device. However, you can update your Particle integration configuration and use the attached workflow to get the end result you’re looking for.

First, in your Particle integration config, update it to listen for the spark/device/diagnostics/update device vitals event.

Then, import the attached workflow into your application. Set the two global variables for your Particle device ID and Particle access token.

Once a minute (you can change that frequency by adjusting the Timer Trigger), the workflow kicks off an HTTP request to refresh your device’s vitals. This will then kick off the Particle Event Trigger, where we check if it’s the vitals event with a Conditional Node.

I added a JSON Decode Node in there as well since Particle returns the information in a stringified JSON object; that should make it easier for you to build out the rest of the workflow.

Between the JSON Decode Node and the Debug Node at the bottom, you can add in any other nodes to handle the diagnostic information you’re getting back from Particle.

particle-vitals-check-develop.flow (4.0 KB)

2 Likes