I’ve been playing around with various micro controllers for quite awhile. Building little electronic projects and it’s been very enjoyable. I came across this relatively new micro controller from Particle.io called the Photon. Particle was previously known as Spark but changed their name to be more unique. The previous generation micro controller was called the Core and it was quite good – built a few projects with that controller.
What sets the photon apart from other micro controllers is that it is Internet of Things ready. Besides having a small 32 bit Arm chip, 16 channels of IO, a serial port, it also has WiFi baked right into the chip. If that weren’t enough, Particle has the whole back end cloud system setup and ready for you to use. In fact if you want, you can write code in your browser, compile and flash the controller straight from the Internet (more on that later).
The photon arrives in a smart little box about the size of a match box. It can be powered by a regular USB cable, or you can connect a power supply (wall adapter or batteries) directly to the device. The first step, before you can use the Photon is to ‘claim’ the device. Simply plug a USB cable to the device to power it up. Next, using a free App from the App store, select the device (it will find it) and claim it. What this process does is adds the device to your Particle account so you can start programming it.
The programming language is C++ and it can be programmed very much like an Arduino. In fact most Arduino libraries will work and in some cases a bit of modification is necessary, but Particle has a growing list of ready to use libraries to get you started right away.
The IDE is based on Atom. Which is a whole story in itself – maybe I’ll save that for another blog post. You can choose to either edit in a browser by signing into the Particle website or download their IDE and edit locally. While the browser edit/compile/flash idea is really novel, I found it to be a little buggy for bigger projects so I use the locally run IDE on my Mac.
Everything is done in the cloud. When you it the compile button, it compiles the code in the cloud. And when you’re ready to flash or program the device with your code it will download the compiled code directly from the cloud to your device. Some might feel uncomfortable about doing this, however I find the convenience of not needing to know what version of libraries, compilers etc. go with which device outweighs any concerns – heck I’m just a hobbyist building electronic gadgets.
The last ingredient in making this an excellent Internet of Things micro controller is their backend that can handle posting of events, triggering functions and communicating with the device. They have a portal that can track events and such (still work in progress as I write this, but looks very promising) but more importantly they have a channel with IFTTT so you can easily setup your Internet of Thing to trigger or respond to actions.
You can read more about the Particle photon at their website – particle.io or just pick one up for $20 and start building your next IoT gadget!