Troubleshooting mesh network issues

Hello all, I was wondering if the collective mind could help me figure out some issues I’m seeing with my simple single Xenon to Argon to cloud network. I’m totally willing to read other things so if are there good posts somewhere please point them out.
It’s a pretty simple problem. I have a xenon running on battery and sleeping for 10 mins at a time. Every 10 mins it wakes up and sends a Particle.publish with WITH_ACK message. I then forward that off via webhook to a little SCADA system I have. I’m seeing quite a few gaps in the expected 10 min intervals. Was just wondering how to start troubleshooting that. It’s not something I’m necessarily concerned about I would just like to know where the issue is.

Welcome to the Particle Community.

Whilst the Xenon on the mesh network is very quick and reliable to establish a mesh network connection, making the Cloud connection may take a while and may fail within the window the device has before going back to sleep. Thus, if you operate sleepy end nodes it is far more reliable to have them Mesh.publish() to the gateway node (Argon) which can then Particle.publish(). You need to keep the gateway powered and not sleeping thereby you shouldn’t have missed transmissions to your SCADA system.

The basic model is gateway in setup() does a Mesh.subscribe(“NODEDATA”, handler); where “NODEDATA” is the event name of the Mesh.Publish() made by the end node when it wakes up.

The handler function then reads the data in the mesh event and could simply do a Particle.publish().

That’s the basic model, you need to think about whether you use SYSTEM_MODE(SEMI_AUTOMATIC); or default AUTOMATIC on the Xenon. Checking for Mesh.ready() before Mesh.Publish() also a necessary check to ensure the publish succeeds.

1 Like

Thank you @armor that is SUPER helpful and gives me some areas to read up on. Much appreciated!