Particle IoT

IT Pro Camp Jax 2016

The three Truths

  • Eventually anything that can be written in JavaScript will be written in JavaScript
  • Everything that can be connected to the Internet will be connected to the Internet
  • If it is on the internet, it must be true!

Internet of Things

  • IoT devices collect lots of data

  • AWS and Azure both have Big Data 
    and Machine learning solutions 

IoT Devices

  • Refrigerator
  • Wearables (Apple Watch or Gear)
  • Garage Door Opener
  • Security System (Ring.com)

IoT Device Category

  • Small Computer
  • Micro-controller

Raspberry PI

PI Details

  • Full Computer
  • Introduced in 2012
  • Meant for education
  • 5 times as popular in private sector
  • Board about the size of a credit card
  • Prices range from $5 to $35

PI 3

  • 256 MB to 1 Gig in RAM
  • 1.2 Ghz quad-core ARM processor
  • HDMI
  • Ethernet
  • 4 USB ports
  • Now with Wi-Fi and BLE 4.0
  • 40 GPIO connecting pins

PI Operating Systems

  • Many ARM based distros of Linux
  • Windows 10
  • OSMC (Media Center)
  • And many others...

Micro-controllers

  • Not computers
  • Write programs as firmware
  • Some come with Wi-Fi
  • Inputs and outputs
  • Digital and Analog
  • Not enough power to stream video or audio
  • Wire up servos, lights, sensors, speakers and cameras
  • Power robots

Key features

  • Internet connected
  • Particle Cloud Service
  • Host your own
  • Arduino like code
  • Pre-built libraries
  • inexpensive, starting at $19

Launched as Spark

  • SparkCore introduced 2013
  • SparkCore used CC3000 WiFi chip
  • Changed name to Particle
  • Particle Photon Fall 2015
  • Photon uses Broadcom chip
  • Particle Electron 2016 2G/3G

Photon Features

  • Real-time OS (FreeRTOS)
  • Broadcom BCM43362 Wi-Fi chip
  • 120Mhz ARM Cortex M3 processor
  • 1MB flash memory, 128K RAM
  • 18 Mixed-signal GPIO ports
  • Supports Digital/Analog
  • I2C, UART, SPI and PWM

Development

  • Arduino-like syntax 
  • Node.js based cli
  • npm install -g particle-cli
  • Web IDE @ build.particle.io
  • Particle Dev ATOM based IDE

APIs

  • Arduino like libraries for common addons like LCDs
  • 4 Built-in cloud functions
    • Particle.variable
    • Particle.function
    • Particle.publish
    • Particle.subscribe
  • JavaScript library
  • iOS/Android libraries
  • IFTTT
  • Webhooks
  • REST API

Basic Program

void setup() { }

void loop() { }

IoT HelloWorld!

// Define the pins we're going to call pinMode on
int greenLed = D7;

// This routine runs only once upon reset
void setup() {
  // Initialize D7 pin as output
  // It's important you do this here, inside the setup() function rather than outside it or in the loop function.
  pinMode(greenLed, OUTPUT);
}

// This routine gets called repeatedly, like once every 5-15 milliseconds.
// Spark firmware interleaves background CPU activity associated with WiFi + Cloud activity with your code. 
// Make sure none of your code delays or blocks for too long (like more than 5 seconds), or weird things can happen.
void loop() {
  digitalWrite(greenLed, HIGH);
  delay(500);               // Wait for 500mS = 1 second
  digitalWrite(greenLed, LOW);
  delay(500);               // Wait for 1 second in off mode
}

Particle Electron

  • Cellular based board
  • 2G and 3G options
  • 2G to be EOL 2016
  • No Wi-Fi, no problem
  • $69 Dev kit
  • First 3 months free
  • $2.99 month for 1MB
  • No contracts
  • $0.99/each additional MB

Electron Kit

  • Breadboard
  • 3.7 V lipo battery
  • Solar panel (optional)
  • Waterproof case (optional)
  • GPS (optional)

Particle limitations

  • Doesn't have the power of Raspberry Pi
  • Limited resources
  • Limited to 1 request/event per second
  • Bypass by hosting your own cloud
  • 3V3 to 5.5V range

Particle advantages

  • Designed for mass production
  • Easy to use
  • Easy to connect to Internet
  • Dashboard management
  • Great development experience
  • Well documented
  • Inexpensive

DEMO

https://particleled.herokuapp.com

tweet jaxarcsig (forward | back | right | left)

Questions?

Particle IoT IT Pro Camp Jax

By David Fekke

Particle IoT IT Pro Camp Jax

The slides for the IT Procamp conference on using Particle IoT prototyping boards for your IoT projects.

  • 1,557