Login Form


Spring 2017, CSIE Room 65104, 09:10~12:00 Tuesday

Instructor: Kun-chan Lan
(this course is offered in English)

an introductory course to teach you how to become a “maker” of Internet of Things (IoT) technology using publicly-available open-sourced tools
- a brief walk-through of the open-source tools (both hardware and software) you can use to create an IoT application.
- Create your own IoT product at the end of the course.


  • We start an introduction of various open-sourced tools such as Arduino, Android, and Hadoop
  • Followed by with describing the theoretical part of IoT technology
  • Guide you through the cycle from having an idea to finally creating a real product 
  • A strong hands-on focus 


  • Arduino
  • Android programming
  • Hadoop
  • Sensor Network
  • Localization
  • Introduction to machine learning 


  • Programming knowledge in Java/C++ (should have been covered in Program Design I/II)

Lecture Slides


Date Content  
03/14 Please bring your laptop to class   
03/21 Bring-home exercise: Topic presentation (group)  
03/28 Take-home exercise#2 presentation  
04/11 Take-home exercise#3 presentation  
04/18 Take-home exercise#4 presentation  
04/25 Homework 1 demo , Take-home exercise#5 presentation  
05/02 Project proposal report due , Take-home exercise#6 presentation  
05/16 No class  
  • Do a report on
  • a. system flowchart (with details of the implemented algorithms)
  • b. hardware connection diagram
  • Submit HW#2 via email
06/06 Demo the function you’ve completed (50% progress)
•Demo the completed hardware (casing etc)
•Detailed algorithm for step calculation and IBI/step calculation
•Battery setup
•System flow chart (considering multiple sensors/tasks)
06/13  For project demo, you need to prepare:
1. A 5-min demo uploaded to YouTube in advance
2. On-site demo (projecting it to the screen)
3. Job description (Who does what? / How you did it?)
Current grade  "Click"  


Prof. Kun-chan Lan
Office: new CSIE building 12F 65C05
Office hours: 3-4 pm on Wednesday and Friday, or by appointment via e-mail
Email: This email address is being protected from spambots. You need JavaScript enabled to view it.
TEL: +886 6 2757575 ext 62550


Paweeya Raknim 
Office: new CSIE building 5F
Office hours: 2-4 pm on Monday and Tuesday
Email: This email address is being protected from spambots. You need JavaScript enabled to view it.
TEL: 06-2757575 ext.62520 (and then another extension 35)

Grading Policy   

Project (35%)
     - Report (10%)
     - Codes and documentation (10%)
     - Demo (15%)
Homework Exercise (30%)
Exam (35%)
     - Final (15%)
     - Quiz (20%)
Extra credits
     - Class participation
     - Up to 10% 


week 1 (2/21) Administration issue
week 2 (2/28) school holiday
week 3 (3/7) introduction to Sleep & Pressure (by Dr. Shaw from Psychology Department) 
week 4 (3/14) tutorial for homework
week 5 (3/21) Introduction to Arduino and Rasberry Pi, Take-home-exercise #1 presentation
week 6 (3/28) Android Programming (I), 
Take-home-exercise #2 presentation
week 7 (4/4) school holiday
week 8 (4/11) Android Programming (II)
week 9 (4/18 ) Introduction to Hadoop
week 10 (4/25) A network of Sensors (I), Homework I due
week 11 (5/2) A network of Sensors (II), project report due
week 12 (5/9) Localization (I)
Week 13 (5/16) conference travel
week 14 (5/23) Localization (II), Homework II due
week 15 (5/30) school holiday
week 16 (6/6) introduction to machine learning
week 17 (6/13) in-class project demo
week 18 (6/20) final exam


Download Take-home exercise Here

Term Project

Make a $1000 smart watch
Basic requirement: A watch can
**  Display time (LCD) – on board
**  Counting your step (accelerometer) – on phone
**  Estimate your pressure (HRV + LF/HF) (heart rate sensor) – on phone or on cloud
**  Bonus credits (up to 10% of the total credits) will be given if you can do more function (e.g. estimate sleep cycle)
What you need to do:
**  Decide the functions you want to implement
**  Find the algorithms on the internet
**  Buy the needed sensors/equipment ($1000 will be given to each team)
**  Implement the algorithms and assemble the parts into a watch
**  Demo your product 

What should be in the project report?
- What functions you plan to implement in your smart watch
- The algorithms you’re going to use to implement your functions
- How your watch is supposed to look like (e.g. a 3D model of your watch)
Project report
You will need to submit a 2 pages project report that explains what you plan to do for your project and how exactly you are going to do it
Due: 05/02/2017 

Demo your project
In the end of semester, you will demo your project in-class
Each team has to make 5-min video to demo your project
The video should be uploaded to youtube
The project demo will be scored by me and also peer students
What the demo should look like?
Project evaluation
2 page, 11-pt-font, double-spaced report that describes/explain your project (10%)
Project implementation and demo (25%)