Syllabus - Open Source Programming for IoT (IO 604 (C))


CSE-IOT/IOT

Open Source Programming for IoT (IO 604 (C))

VI-Semester

UNIT - I

Getting Started with Raspberry Pi

Basic functionality of Raspberry Pi B+ board, setting up the board, configuration and use, booting Raspberry Pi 3, Downloading an Operating System, format an SD card and booting the OS, Interfacing Hardware with the Raspberry Pi, Raspberry Pi Remote Access, operates the Raspberry Pi in “headless mode”, Bash Command line, operating Raspberry Pi without needing a GUI interface. Basics of Python programming language: Programming on the Raspberry Pi. Python on Raspberry Pi, Python Programming Environment, Python Expressions, Strings, Functions and Function arguments, Lists, List Methods, Control Flow.

UNIT - II

Introducing Micro Python

MicroPython Features, MicroPython Limitations, Experimenting with Python on PC, Installing Python 3 on Windows 10, Running the Python Console, Running Python Programs with the Interpreter, The Run, Evaluate, Print Loop (REPL Console), Off and Running with MicroPython, Additional Hardware, Basic Electronics Kit, Breadboard and Jumper Wires and 3 Examples.

UNIT - III

IoT Physical Servers and Cloud Offerings

Introduction to Cloud Storage models and communication APIs. Web Server – Web server for IoT, Cloud for IoT, Python web application framework. Designing a RESTful web API. Connecting to APIs.

UNIT - IV

Baking Pi

Powering Raspberry Pi, Formatting SD cards, Installing and connecting Raspberry pi, How to tell Raspberry pi is working, Installing Raspbian with NOOBS, Networking Raspberry Pi, Connecting with Ethernet, Connecting Via Local Computer Network, Connecting Via Wireless Network, Updating and Upgrading, Setting up a Host Name, Connecting Raspberry pi with SSH, Creating Simple Rasspberry pi application.

UNIT - V

FIRST Project on Java

Bill of Materials, Getting Started with NetBeans, Downloading and Configuring NetBeans, Revisiting HelloRaspberryPi, Brewing Java, Communicating with a USB Scale, Coffee Calculator, Asynchronous Communication, Coffee Brewing Recipe, Commercial Licensing.

Course Objective

This program aims to train students to be equipped with a solid theoretical foundation, systematic professional knowledge and strong practical skills in the Raspberry Pi.

Course Outcome

["Appreciate the development technology for IoT.", "Familiar with Basic Concepts of Linux.", "Design real time IoT Devices and Familiar with basic foundations of Python Programming and libraries.", "Comprehend the basic concepts of Mobile Cloud Computing."]

Practicals

Reference Books

  • Simon Monk, “Programming the Raspberry Pi: Getting Started with Python”, January 2012, McGraw Hill Professional.

  • MicroPython for the Internet of Things, A Beginner’s Guide to Programming with Python on Microcontrollers, Charles Bell, Apress.

  • Raspberry Pi with Java: Programming the Internet of Things (IoT) (Oracle Press) 1st Edition.

  • Eben Upton and Gareth Halfacree, “Raspberry Pi User Guide”, August 2016, 4th edition, John Wiley & Sons

  • Alex Bradbury and Ben Everard, “Learning Python with Raspberry Pi”, Feb 2014, JohnWiley & Sons

  • Michael Margolis, “Arduino Cookbook”, First Edition, March 2011, O'Reilly Media, Inc

  • The official raspberry Pi Projects Book, https://www.raspberrypi.org/magpiissues/Projects_Book_v1.pdf