Particle's new Mesh development boards are fantastic. They can communicate amongst each other, and use a gateway device to communicate with the Internet.
I preordered a Particle Xenon, which has no Wi-Fi or cellular connectivity, meaning that it cannot connect to the Internet without a gateway. (The Particle Boron and Argon have cellular and Wi-Fi respectively, so may be used as a gateway.)
An oversight in the Particle setup process seems to be that it's not made clear how you can use the Xenon without a gateway. Admittedly, there's not much point in using a Xenon without a gateway or mesh network; you're effectively using a slightly glorified Arduino. However, it is possible to use a Xenon standalone, and isn't too difficult once you know what you're doing.
particle project create name, replacing name with the name of your project. You'll also be asked to enter a project name again, in which case you enter the same name as earlier.setup or loop until your device has an Internet connection. The whole point is that we don't want to use an Internet connection!setup or loop functions (i.e. at the top level): SYSTEM_THREAD(ENABLED); SYSTEM_MODE(MANUAL);particle compile xenon name --saveTo firmware.bin, again replacing name with the name of your project.particle flash --usb firmware.bin to flash the new firmware onto your device.That's it! Please leave a comment if you have any questions.
Blinking an LED:
int LED = D7;
SYSTEM_THREAD(ENABLED);
SYSTEM_MODE(MANUAL);
// setup() runs once, when the device is first turned on.
void setup() {
// Put initialization like pinMode and begin functions here.
pinMode(LED, OUTPUT); // sets pin as output
}
void loop()
{
digitalWrite(LED, HIGH); // sets the LED on
delay(200); // waits for 200mS
digitalWrite(LED, LOW); // sets the LED off
delay(200); // waits for 200mS
}