Course Home Syllabus Weekly Schedule Tech Documentations Course Projects Entrepreneurship CET4925 Internet of THINGS Instructor: Dr. LiEmail: xhli@citytech.cuny.eduCourse URL: http://citytechrobotics.org/teaching/cet4925/ Weekly Schedule Topics Notes on Course Project Week 1: Intro to the course, course project, project videos, and project ideas.Ch 1: Intro and Architecture of IoT: history, applications, examples Team-up; Research/brainstorm project ideas; Order Photon Week 2: Ch 1: Intro and Architecture of IoT (Contd): Architecture and layered models, ecosystems Team-up finishes; Research/ brainstorm project ideas. Start to order parts/components Week 3: Ch 2: Physical computing platforms for IoT: MCU, MPU/SBC, PLC and FPGA; and comparison of all platformsLab 1: Get started with Particle Get project approved by instructor; Search & order parts & supplies Week 4: Ch 3: Review/Primer of C++ OOP ProgrammingCh 4: I/O for IoTLab 2: Input with Photon (digital/analog): temperature or IR sensorLab 3: Output with Photon (digital/analog), Dimmer light, DC brushed motor, DC servo motor or text LCD display Discuss project design; Divide the jobs; Continue ordering parts Week 5: Ch 5: Connectivity Technologies: From FieldBus and WSN, to WiFi/Celluar/ZigBee/BLE/Z-Wave/RuBee, and the latest Thread, LoRa, Sigfox and NB-IoT Continue with project design; Continue ordering parts Week 6: Ch 6 ReST and Webhook Lab 4: IoTing via IFTTT or alternativesMidterm project proposal due in two weeks Continue with project design; Continue ordering parts; Start to develop project proposal Note: Due to the discontinuation of IBM Cloud IoT services in 2023, the following Lab5~8 are retired. They are listed here only for archive purpose. Lab 5: Intro to IBM Watson IoT Platform (Quickstart) Handout: Get Started with IBM Watson IoT Platform Handout: Dr. Li’s example code of sending data to IBM Watson IoT Platform Quickstart Lab 6: Using MQTT to send data to IBM Watson IoT Platform & Data visualizationHandout: Visualize real-time data by IBM Watson IoT PlatformHandout: Dr. Li’s example code of sending data for visualization on IBM Watson IoT PlatformLink: MQTT library for Photon: https://github.com/hirotakaster/MQTT Lab 7: Node-RED app to tweet an alert message according to remote sensor readingsHandout: Dr. Li’s Example Node-RED flow for generating Twitter alert messages Lab 8: Control remote devices via Node-RED and IBM CloudHandout: Dr. Li’s example code on Photon subscribing & responding to string commands from IBM CloudHandout: Example Node-RED flow for sending commands to remote devicesHandout: Another Example Code: Photon subscribes and responds to JSON-formatted commands from IBM Cloud Week 7: Ch 7: IoT Cloud — MQTT and Intro to AWS IoTLab 5A: IoTing via AWS — Set up AWS IoT Core & MQTT client softwareHandout: Dr. Li’s example code — Photon sends sensor data to and receives commands from AWS IoT Core over MQTT TLSHandout: A Brief instruction on using Particle CLI to create a project, compile and flash the code to PhotonMQTT.fx: a MQTT client software (very handy! Highly recommended for testing MQTT connection!)How to use MQTT.fx: an example connection profile (screenshot); and an simple guide (link here) Continue with project design; Finish ordering parts; Start to build the project — the physical platform.Midterm project proposal due next week Week 8: Ch 7: IoT Cloud (contd) — AWS IoTLab 5B: IoTing via AWS — Integrate AWS SES (or SNS) with IoT Core Continue building the hardware components/subsystems of the project;Project proposal Due! See Blackboard for the exact due date. Week 9: Lab 5C: IoTing via AWS — Send Senor Data from Particle to AWS IoT Core Continue building the project: system physical platform is in shape; program and test sensors Week 10: Ch 7: IoT Cloud (contd) — Data Analytics and Cloud Computing for IoTLab 5D: IoTing via AWS — AWS Lambda Functions for IoTing Continue building the project: program and test actuators Week 11: Lab 5E: IoTing via AWS — Developing IoT Applications on Raspberry Pi by using AWS IoT Device SDK Python v2Lab 5F: IoTing via AWS — AWS Greengrass (optional)Lab 5G: IoTing via AWS — Develop Node-RED IoT Application with AWS EC2 (Optional) Finish setting up IoT Cloud, and start the programming with the Cloud Week 12: Ch 7: IoT Cloud (contd) — Microsoft Azure IoTLab 6A: Connect IoT Device with Microsoft Azure IoT Hub Final each component (both hardware and programming), and start to integrate the system Week 13: Ch 7 IoT Cloud — Microsoft Azure IoT (contd)Lab 6B: Intro to Microsoft Azure IoT Central Integrate everything, preliminary system testing.Bring in everything and work on the project next class. Week 14: Project hours Test and refine the entire system Week 15: Final project demonstration Final project report due next week. Last update in Spring 2023.