Information Technology

Undergraduate (BSc) course, Utrecht University, School of Information and Computer Science, 2021

One of the basic components of computer systems is the interaction between human users and the systems. Good interaction does not only provide enjoyable experiences but also increase productivity and efficiency. A field that focuses on developing computer interactions is called Human-Computer Interaction (HCI). This course is part of HCI, yet emphasizing on the technological aspects rather than the human aspects. The course focuses on different types of interaction technology such as embedded technology, Internet of Things (IoT) and gesture based interaction. The practical assignments involve programming in the Arduino C/C++ language.

===

Course Goals

  1. To acquire basic and advanced soldering skills.
  2. To learn the basic properties of the most common electronic components, sensors and actuators and to be able to build basic electronic circuits with these.
  3. To learn to program a microcontroller and learn about its possibilities (I/O pins, communication protocols, memory types, interrupts, WiFi stack) and limitations (memory size, single threadedness), as well as to gain knowledge of a number of microcontroller specific topics (delays, timers, scheduling, interrupts, debouncing, timer roll-over).
  4. To learn to build an embedded system that interfaces with an existing device, as well as to learn to make choices in light of a limited supply of hardware resources and stringent functional requirements.
  5. To learn the workings, possibilities and limitations of one of the main protocols of the Internet of Things (MQTT) and how to use this protocol in an embedded system.
  6. To learn to build an IoT platform based on a diverse set of MQTT clients
  7. To learn to research and understand user needs for a specific interactive device.
  8. To learn to conduct successful gesture elicitation.
  9. To learn to evaluate the final prototype.
  10. To have fun exploring the world of physical computing and Internet of Things.