Skip to content

MicrochipTech/PIC32MZW1_WFI32_IFTTT_Action_Example

Repository files navigation

PIC32MZW1_WFI32_IFTTT_Action_Example

Devices: | PIC32 WFI32E | WFI32 | Trust&Go (ECC608) |
Features: | IFTTT | Secure Cloud Connectivity | Voice Control |

Introduction

IFTTT is short for "If This Then That", which is a way to integrate different apps, devices, and services to work togehter. This project is the extend of the WFI32-IOT OOB project and PIC32W1 Curisoity OOB project to make the board can be controlled through IFTTT platform.
This repository contains the guide and materials to set up an IFTTT action service to control WFI32-Iot Board or PIC32MZW1 Curiosity board. To do this, the WFI32-Iot Board or PIC32MZW1 Curiosity board need to connect to AWS Cloud. IFTTT Service send the action event to the endpoint device (WFI32-Iot Board or PIC32MZW1 Curiosity board) through the AWS Cloud. This guide show you how to create the IFTTT Service and IFTTT Applet, and how to configure the AWS Cloud to let IFTTT Service work with the cloud and control the WFI32-Iot Board or PIC32MZW1 Curiosity board.

Below video show a simply demo that using Google Assistance as the trigger, and the action is controlling WFI32 demo board's LED on/off. User can speak to Google Assistance to control the LED on/ off on the board. The trigger acutally can be a lot of differnet available service on the IFTTT platform like Alexa, Siri, Date and Time Service, IoT devices like Wemo light switch etc.

Below are other some examples of using IFTTT trigger to control the board:

  1. Use "Date and Time" Service to set the date and time to turn on/off the LED on the WFI32 demo board
  2. Use "Location" Service, turn on/off the board's LED on the demo board when you arrive home
  3. Use "Honeywell Home" Service, turn on/off the board's LED when the Honeywell camera detect motion
  4. Use "Siri" Serivce, User can speak to Siri to control the on/off of the board's LED
  5. Use "WeMo Humidifier" Serivce, Turn on/off of the board's LED when the humidifier detect the humidity level rises above threshold

Note: There is another IFTTT Demo in the Microchip Harmony framework. This project show about using WFI32-Iot Board or PIC32MZW1 Curiosity board to act as IFTTT trigger. User press a button on the board can trigger to send a message to the email through IFTTT service. You can visit this link if you have interest.

Resources

Table of Contents

  1. Overview
    1. Overview Of The Solution
      1. IFTTT Service Workflow
      2. Device Registration System
  2. Connect WFI32-IoT / PIC32MZW1 Curiosity Board to AWS Cloud
    1. Connecting the Board to the Host PC
    2. Connecting the Board to Wi-Fi Networks
  3. Device Registration System Setup
    1. Create Cognito User Pool And Identity Pool
    2. Create RDS For Storing Registration Data
    3. Create Lambda Function for Device Registration
      1. Create policy for lambda to access VPC
      2. Lambda Function for registering devices
      3. Lambda Function for getting user devices
      4. Lambda Function for deleting user devices
    4. Create API Gateway
    5. Create Registration website
  4. IFTTT Service Related Setup
    1. Create Cognito User Pool Client
    2. Create Lambda Function for IFTTT Service
      1. Lambda Function to provide user info for the IFTTT Service
      2. Lambda Function to provide service status for the IFTTT Service
      3. Lambda Function for action (switch on)
      4. Lambda Function for action (switch off)
      5. Lambda Function for action device option
    3. Create API Gateway
    4. IFTTT Service Configuration
  5. Run Demo
    1. Register devices
    2. Create IFTTT Applet
    3. Perform Tests

About

"IoT Made Easy!" - IFTTT action demo collateral for WFI32-IoT board or PIC32MZW1 Curiosty board

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published