Courses
Smart home (Autumn 2024)
This is an advanced course for those with some background in robotics and programming. The goal of the course is getting to know the basics of embedded development for Arudino using the C programming language. The main application area is smart home.
Same as the basic course, this one is split into two parts: preparatory and creative. In the preparatory part the students learn how to use Arduino with basic sensors/actuators, and how to control those using C. In the creative parts the students conceptualize and develop custom smart home appliances in small groups.
This course focuses much heavier on programming. We are going to discuss some fundamentals in more detail than in the basic course. There is also an intention to make the students more independent, i.e., teach them how to work with custom Arduino libraries or how to look for information about Arduino hardware on the internet. This (and the price, of course) also justifies using Arudino as the main hardware platform in the first place - as opposed to many available alternatives. During the course we will also work with our custom shield locoboard
. It is, however, not intended to be a blackbox that they blindly use. Rather, we want to bring across the understanding that anything (well, almost) can be used without locoboard
, but having it around simplifies the assembly (and coding if one uses the API) in many situations.
Sessions
- Session 1: Introduction
- Session 2: Loops & conditionals
- Session 3: Practical session
- Session 4: Variables
- Session 5: Variables (recap)
- Session 6: LOCO Board
- Session 7: LOCO Board Continued
Topics
Not necessarily in this order
- Algorithms (recap)
- Basic syntax of C/Python (function names, parameters)
- Compilation & flashing
- Board hardware overview
- Board API
- Variables & data types
- Conditions (if/else)
- Loops (for/while)
- Functions
- Debugging (serial print)
- Using external libraries
- 3D design & printing?