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 Notice 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, 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 Photon 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 & Lab 4: IoTing via IFTTTMidterm project proposal due in two weeks Continue with project design; Continue ordering parts; Start to develop project proposal Week 7: Ch 7: IoT Cloud — Introduction and ReSTLab 5: Intro to IBM Watson IoT Platform (Quickstart)Handout: Get Started with IBM Watson IoT PlatformHandout: Dr. Li’s example code of sending data to IBM Watson IoT Platform Quickstart 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.) — MQTTLab 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 Continue building the project;Project proposal Due! See Blackboard for the exact due date. Week 9: Ch 7: IoT Cloud (contd) — Node-REDLab 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 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 IoT 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 Continue building the project: program and test actuators Week 11: Ch 7: IoT Cloud (contd) — AWS IoTLab 9A: IoTing via AWS — AWS IoT CoreHandout: 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)Lab 9B: IoTing via AWS — Node-RED with AWS EC2 Finish setting up IoT Cloud and coding on the Cloud Week 12: Ch 7: IoT Cloud (contd) — AWS IoTLab 10: IoTing via AWS — Lambda Functions for IoTingLab 11: IoTing via AWS — AWS Greengrass, and Mesh Network (optional) Final testing of each component, and integrate everything together Week 13: Ch 8 & Lab 12: Android Things Integrate everything, preliminary system testing. Bring in everything and work on the project next week Week 14: Project hours Test and refine the entire system Week 15: Final project demonstration