Want to add internet connectivity to your next project? Tired of buying shields for your Arduino? Check out the Particle Photon.

The Particle Photon has a powerful STM32 ARM Cortex M3 microcontroller as its brain and a Broadcom BCM43362 Wi-Fi chip as its connection to the internet. 18 mixed GPIO pins and a web-based IDE similar to Arduino IDE makes it easy to give connectivity to your project. The Photon has an RGB LED and two buttons--Setup and Reset--to switch between different modes to help debug your project. Particle is an open source platform, so you have access to all of their schematics and code to easily improve upon their products. SparkFun has taken advantage and created a Photon RedBoard, which gives the Photon the form factor of an Arduino so you can use your favorite Arduino shields with the Particle service. 

The Photon itself is just a breakout board for their Wi-Fi module called the P0, which contains the microcontroller and Wi-Fi chip, but no antenna. The RedBoard uses the P1 module, which is the P0 with a built in antenna. Both of these come preloaded with Particle firmware and access to their cloud service, but require a custom breakout board to give access to all of the pins.

Particle makes it easy to go from prototype to large scale manufacturing with these three modules. This four part series will let you know what to expect with the Photon and help you get started making your own internet of things.


Opening the Box

The Photon kit comes with a Photon with headers, a USB cable, a little red LED, a photodiode, two resistors, and the all important Particle sticker. It all comes packaged neatly in a cute little cardboard box.


Particle makes it really easy to get started, even for those with no experience building circuits. The Photon is already plugged into a breadboard, shoved through a piece of paper with instructions to poke holes through the paper and put the included components into the breadboard.


Getting Started

Particle has superb documentation on getting started with the Photon, and the process went smoothly for me. There is an app for iOS and Android that helps connect your Photon to your Particle Account and get started playing with the Photon with Tinker. If you do not have an Apple or Android device handy, there is also a way to connect the Photon using your computer and a CLI, or Command Line Interface. I have run into some issues in the past connecting a Spark Core (precursor to the Photon) to my school's WPA2 Enterprise network, so be wary of what type of security your network has if you run into trouble connecting your Photon.

The CLI requires an installation of a few things on your computer, and has some really neat features that I will be using in later parts in the series.



Tinker is firmware that comes preloaded on the Photon and allows you to use four main functions from the Particle app and CLI: digitalRead, digitalWrite, analogRead, and analogWrite, which you may already be familiar with if you have worked with an Arduino. digitalRead and digitalWrite can be used with any of the 16 GPIO pins on the Photon to either read or write LOW (0 V) and HIGH (3.3 V or 5 V) values respectively. analogRead can be used with 7 pins: A0 - 5, WKP, and DAC. analogWrite can be used with PWM (pulse width modulation) enabled pins on Tinker: D0, D1, D2, D3, A4, A5, WKP, and DAC. Read the documentation for more information about the pins on the Photon.

You can use the components provided to play with Tinker, the LED for digitalWrite and analogWrite, and the photoresistor for digitalRead and analogRead.



With this you'll be able to blink LEDs and read photoresistor values from all over the world using your Photon and Tinker.

In the next few parts, I'll go over a few different ways to load sketches onto your Photon, how to set up a local Particle cloud so you don't have to always go through Particle servers with your code, and how to use JavaScript to make an interactive webpage with your Photon.