Book Image

Learning IoT with Particle Photon and Electron

By : Rashid Khan, Kajari Ghoshdastidar, Ajith Vasudevan
Book Image

Learning IoT with Particle Photon and Electron

By: Rashid Khan, Kajari Ghoshdastidar, Ajith Vasudevan

Overview of this book

IoT is basically the network of physical devices, vehicles, buildings and other items—embedded with electronics, software, sensors, actuators, and network connectivity that enable these objects to collect and exchange data.. The number of connected devices is growing rapidly and will continue to do so over years to come. By 2020, there will be more than 20 billion connected devices and the ability to program such devices will be in high demand. Particle provides prototyping boards for IoT that are easy to program and deploy. Most importantly, the boards provided by Particle can be connected to the Internet very easily as they include Wi-Fi or a GSM module. Starting with the basics of programming Particle Photon and Electron, this book will take you through setting up your local servers and running custom firmware, to using the Photon and Electron to program autonomous cars. This book also covers in brief a basic architecture and design of IoT applications. It gives you an overview of the IoT stack. You will also get information on how to debug and troubleshoot Particle Photon and Electron and set up your own debugging framework for any IoT board. Finally, you’ll tinker with the firmware of the Photon and Electron by modifying the existing firmware and deploying them to your boards. By the end of this book, you should have a fairly good understanding of the IoT ecosystem and you should be able to build standalone projects using your own local server or the Particle Cloud Server.
Table of Contents (11 chapters)

Obtaining and flashing firmware


Microcontrollers do not directly understand human-readable code. The firmware code is written in the C language by the programmer. This needs to be converted to a binary format that can be understood by the Particle microcontrollers. A program called a compiler does this conversion.

A local setup is required to be able to work with firmware. Such a setup provides you with all the software and packages needed to compile and deploy the firmware.

Flashing firmware involves two main steps:

  1. Obtaining firmware.

  2. Burning firmware onto the device.

Obtaining firmware

To be able to flash a firmware, we need to get the firmware file in binary format. There are two ways you can obtain the firmware:

  • Direct download

  • Building from source

Obtaining firmware by direct download

The easiest way to get the latest firmware is to download it from the firmware release page at https://github.com/spark/firmware/releases/.

At the time of writing of this book, the latest firmware available for...