Cloud functions

Particle.connect()

Particle.connect, connect

Particle.connect() connects the device to the Cloud. This will automatically activate the network connection and attempt to connect to the Particle cloud if the device is not already connected to the cloud.

void setup() {}

void loop() {
  if (Particle.connected() == false) {
    Particle.connect();
  }
}

After you call Particle.connect(), your loop will not be called again until the device finishes connecting to the Cloud. Typically, you can expect a delay of approximately one second.

In most cases, you do not need to call Particle.connect(); it is called automatically when the device turns on. Typically you only need to call Particle.connect() after disconnecting with Particle.disconnect() or when you change the system mode.

Connecting to the cloud does not use Data Operation from your monthly or yearly quota. However, for cellular devices it does use cellular data, so unnecessary connection and disconnection can lead to increased data usage, which could result in hitting the monthly data limit for your account.

On Gen 3 devices (Argon, Boron, B-Series SoM, and Tracker), prior to Device OS 2.0.0, you needed to call WiFi.on() or Cellular.on() before calling Particle.connect(). This is not necessary on Gen 2 devices (any Device OS version) or with 2.0.0 and later.

Since 5.6.0:

In Device OS 5.6.0 and later you can choose which interface to connect to. Normally you should use automatic connection management, but in special cases you can force a specific interface to be used.

Specifying an interface with Particle.connect() will only connect to that interface with no fallback to other interfaces, and is not recommended in most cases.

// PROTOTYPE
static void connect(const spark::NetworkClass& network = spark::Network);

// EXAMPLES
Particle.connect(WiFi);
Particle.connect(Ethernet);
Particle.connect(Cellular);