Embedded Projects 2Laajuus (5 cr)
Code: 5G00DM70
Credits
5 op
Objectives
After completing the course student is able to implement microcontroller systems that are connected to real-life IO interfaces. This part concentrates on high level IOT- protocols such as MQTT and rest-API.
Content
Connecting to real life IO (LCD, keyboard, sensors, actuators). IoT protocol programming C++/Python, MQTT, rest-API.
Assessment criteria, satisfactory (1-2)
Student
-is able to create programs that control car movements with C/C++ and Arduino IDE.
-is able to control the car with lidar feedback and other sensors with the help of the teacher and fellow students.
-is able to get VM traffic light code working with MQTT protocol, with the help of the teacher and fellow students
Assessment criteria, good (3-4)
Student is able to get system working by adding some small own functionality for reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Assessment criteria, excellent (5)
Student is able to get end to end system working by adding several new own functionality to reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Enrolment period
23.11.2023 - 07.01.2024
Timing
01.01.2024 - 30.04.2024
Credits
5 op
Mode of delivery
Contact teaching
Unit
Software Engineering
Campus
TAMK Main Campus
Teaching languages
- English
Degree programmes
- Bachelor's Degree Programme in Software Engineering
Teachers
- Vihtori Virta
- Sonja Viinikainen
Person in charge
Vihtori Virta
Groups
-
22I260EA
-
22I260EBDegree Programme in Software Engineering
Objectives (course unit)
After completing the course student is able to implement microcontroller systems that are connected to real-life IO interfaces. This part concentrates on high level IOT- protocols such as MQTT and rest-API.
Content (course unit)
Connecting to real life IO (LCD, keyboard, sensors, actuators). IoT protocol programming C++/Python, MQTT, rest-API.
Assessment criteria, satisfactory (1-2) (course unit)
Student
-is able to create programs that control car movements with C/C++ and Arduino IDE.
-is able to control the car with lidar feedback and other sensors with the help of the teacher and fellow students.
-is able to get VM traffic light code working with MQTT protocol, with the help of the teacher and fellow students
Assessment criteria, good (3-4) (course unit)
Student is able to get system working by adding some small own functionality for reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Assessment criteria, excellent (5) (course unit)
Student is able to get end to end system working by adding several new own functionality to reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Location and time
According to schedule, more info during 1st lesson and in Moodle.
Exam schedules
Course will be evaluated by base of weekly exercises and final presentation.
Assessment methods and criteria
Course will be evaluated by base of weekly exercises and final presentation.
Students will get points by doing weekly exercises, which are defined in course's Moodle page.
Assessment scale
0-5
Teaching methods
briefing lectures
exercies
programming exercies by teams
Learning materials
Links to different e-materials in Moodle.
Books to read:
https://www.newbiehack.com/MicrocontrollerTutorial.aspx
https://www.renesas.com/en-us/support/technical-resources/engineer-school/mcu-01-basic-structure-operation.html
Student workload
Clasroom, lab, teamwork, individual work
Total work amount abt. 135h
Contact/remote teaching abt. 50h
Content scheduling
Advanced C and C++ microcontroller programming.
CPU peripherals (timers, int serivice, etc,)
IO-interfaces (I2C, Spi, Uart).
Connecting to real life IO (LCD, keyboard, joystic, sensors, motors).
1. Arduino exercises (Mega + IO)
2. WLAN/WEB server (ESP8266)
External (Possible topics)
3. MQTT broker Embedded linux env. (Raspberry or VM)
4. MQTT control messages
Completion alternatives
No
Practical training and working life cooperation
N/A
International connections
N/A
Assessment criteria - fail (0) (Not in use, Look at the Assessment criteria above)
Weekly exercises does not fulfill minimum requirements (more details in Moodle).
Student has not shown his/her capability for the subject.
Assessment criteria - satisfactory (1-2) (Not in use, Look at the Assessment criteria above)
Student can use SDK and other design environments.
Weekly exercies does't contain major failings and are demonsrated on agreed time.
Student is capable of teamworking.
Assessment criteria - good (3-4) (Not in use, Look at the Assessment criteria above)
Student can apply the contest of course and usage of SDK systems. Exercies are done according the given instructions and demonstrated according course time schedule.
Student is capable to use SDK systems and other development systems.
Student is good teaworker.
Assessment criteria - excellent (5) (Not in use, Look at the Assessment criteria above)
Student is self-governing and can apply wide area of course content.
Student has shown deep understanding managing of course content.
Reports are according intsructions and returned at agreed time.
Student can utilize SDK and other design tools with efficient way.
Student can debug and fix HW/SW errors. Student is proactive teamworker.
Enrolment period
15.12.2022 - 08.01.2023
Timing
01.01.2023 - 07.05.2023
Credits
5 op
Mode of delivery
Contact teaching
Unit
ICT Engineering
Campus
TAMK Main Campus
Teaching languages
- English
Degree programmes
- Bachelor's Degree Programme in Software Engineering
Teachers
- Vihtori Virta
- Kari Naakka
Person in charge
Kari Naakka
Groups
-
21I260EA
Objectives (course unit)
After completing the course student is able to implement microcontroller systems that are connected to real-life IO interfaces. This part concentrates on high level IOT- protocols such as MQTT and rest-API.
Content (course unit)
Connecting to real life IO (LCD, keyboard, sensors, actuators). IoT protocol programming C++/Python, MQTT, rest-API.
Assessment criteria, satisfactory (1-2) (course unit)
Student
-is able to create programs that control car movements with C/C++ and Arduino IDE.
-is able to control the car with lidar feedback and other sensors with the help of the teacher and fellow students.
-is able to get VM traffic light code working with MQTT protocol, with the help of the teacher and fellow students
Assessment criteria, good (3-4) (course unit)
Student is able to get system working by adding some small own functionality for reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Assessment criteria, excellent (5) (course unit)
Student is able to get end to end system working by adding several new own functionality to reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Location and time
Remote teaching and lab exercises, informed during 1st remote lesson.
Exam schedules
Course will be evaluated by base of weekly exercises.
Assessment methods and criteria
Course will be evaluated by base of weekly exercises.
Students will get points by doing weekly exercises.
Weekly exercise points are defined in course's Moodle page.
Table below shows how exercise points affect the course grade.
Points = grade
0-35 = 0
36-48 = 1
49-61 = 2
62-74 = 3
75-87 = 4
88-100 = 5
Assessment scale
0-5
Teaching methods
briefing lectures
exercies
programming exercies by teams
Learning materials
Links to different e-amaterial in Moodle.
Google search for daily topics
Books to read:
https://www.newbiehack.com/MicrocontrollerTutorial.aspx
https://www.renesas.com/en-us/support/technical-resources/engineer-school/mcu-01-basic-structure-operation.html
Student workload
Clasroom, lab, teamwork, individual work
Total work amount abt. 135h
Contact/remote teaching abt. 50h
Content scheduling
Advanced C and C++ microcontroller programming.
CPU peripherals (timers, int serivice, etc,)
IO-interfaces (I2C, Spi, Uart).
Connecting to real life IO (LCD, keyboard, joystic, sensors, motors).
1. Arduino exercises (Mega + IO)
2. WLAN/WEB server (ESP8266)
3. MQTT broker Embedded linux env. (Raspberry or VM)
4. MQTT control messages
Completion alternatives
No
Practical training and working life cooperation
N/A
International connections
N/A
Assessment criteria - fail (0) (Not in use, Look at the Assessment criteria above)
Weekly exercises does not fulfill minimum requirements (more details in Moodle).
Student has not shown his/her capability for weekly subject.
Assessment criteria - satisfactory (1-2) (Not in use, Look at the Assessment criteria above)
Student can use SDK and other design environments.
Weekly exercies does't contain major failings and are demonsrated on agreed time.
Student is capable to teamworking.
Assessment criteria - good (3-4) (Not in use, Look at the Assessment criteria above)
Student can apply the contest of course and usage of SDK systems. Exercies are done according the given instructions and demonstrated according course time schedule.
Student is capable to use SDK systems and other development systems.
Student is good teaworker.
Assessment criteria - excellent (5) (Not in use, Look at the Assessment criteria above)
Student is self-governing and can apply wide area of course content.
Student has shown deep understanding managing of course content.
Reports are according intsructions and returned at agreed time.
Student can utilize SDK and other design tools with efficient way.
Student can debug and fix HW/SW errors. Student is proactive teamworker.
Enrolment period
15.12.2022 - 08.01.2023
Timing
01.01.2023 - 07.05.2023
Credits
5 op
Mode of delivery
Contact teaching
Unit
ICT Engineering
Campus
TAMK Main Campus
Teaching languages
- English
Degree programmes
- Bachelor's Degree Programme in Software Engineering
Teachers
- Vihtori Virta
- Kari Naakka
Person in charge
Kari Naakka
Groups
-
21I260EB
Objectives (course unit)
After completing the course student is able to implement microcontroller systems that are connected to real-life IO interfaces. This part concentrates on high level IOT- protocols such as MQTT and rest-API.
Content (course unit)
Connecting to real life IO (LCD, keyboard, sensors, actuators). IoT protocol programming C++/Python, MQTT, rest-API.
Assessment criteria, satisfactory (1-2) (course unit)
Student
-is able to create programs that control car movements with C/C++ and Arduino IDE.
-is able to control the car with lidar feedback and other sensors with the help of the teacher and fellow students.
-is able to get VM traffic light code working with MQTT protocol, with the help of the teacher and fellow students
Assessment criteria, good (3-4) (course unit)
Student is able to get system working by adding some small own functionality for reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Assessment criteria, excellent (5) (course unit)
Student is able to get end to end system working by adding several new own functionality to reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Location and time
Remote teaching and lab exercises, informed during 1st remote lesson.
Exam schedules
Course will be evaluated by base of weekly exercises.
Assessment methods and criteria
Course will be evaluated by base of weekly exercises.
Students will get points by doing weekly exercises.
Weekly exercise points are defined in course's Moodle page.
Table below shows how exercise points affect the course grade.
Points = grade
0-35 = 0
36-48 = 1
49-61 = 2
62-74 = 3
75-87 = 4
88-100 = 5
Assessment scale
0-5
Teaching methods
briefing lectures
exercies
programming exercies by teams
Learning materials
Links to different e-amaterial in Moodle.
Google search for daily topics
Books to read:
https://www.newbiehack.com/MicrocontrollerTutorial.aspx
https://www.renesas.com/en-us/support/technical-resources/engineer-school/mcu-01-basic-structure-operation.html
Student workload
Clasroom, lab, teamwork, individual work
Total work amount abt. 135h
Contact/remote teaching abt. 50h
Content scheduling
Advanced C and C++ microcontroller programming.
CPU peripherals (timers, int serivice, etc,)
IO-interfaces (I2C, Spi, Uart).
Connecting to real life IO (LCD, keyboard, joystic, sensors, motors).
1. Arduino exercises (Mega + IO)
2. WLAN/WEB server (ESP8266)
3. MQTT broker Embedded linux env. (Raspberry or VM)
4. MQTT control messages
Completion alternatives
No
Practical training and working life cooperation
N/A
International connections
N/A
Assessment criteria - fail (0) (Not in use, Look at the Assessment criteria above)
Weekly exercises does not fulfill minimum requirements (more details in Moodle).
Student has not shown his/her capability for weekly subject.
Assessment criteria - satisfactory (1-2) (Not in use, Look at the Assessment criteria above)
Student can use SDK and other design environments.
Weekly exercies does't contain major failings and are demonsrated on agreed time.
Student is capable to teamworking.
Assessment criteria - good (3-4) (Not in use, Look at the Assessment criteria above)
Student can apply the contest of course and usage of SDK systems. Exercies are done according the given instructions and demonstrated according course time schedule.
Student is capable to use SDK systems and other development systems.
Student is good teaworker.
Assessment criteria - excellent (5) (Not in use, Look at the Assessment criteria above)
Student is self-governing and can apply wide area of course content.
Student has shown deep understanding managing of course content.
Reports are according intsructions and returned at agreed time.
Student can utilize SDK and other design tools with efficient way.
Student can debug and fix HW/SW errors. Student is proactive teamworker.
Enrolment period
15.11.2021 - 09.01.2022
Timing
03.01.2022 - 01.05.2022
Credits
5 op
Mode of delivery
Contact teaching
Unit
ICT Engineering
Campus
TAMK Main Campus
Teaching languages
- English
Degree programmes
- Bachelor's Degree Programme in Software Engineering
Teachers
- Kari Naakka
Person in charge
Kari Naakka
Groups
-
20I260E
Objectives (course unit)
After completing the course student is able to implement microcontroller systems that are connected to real-life IO interfaces. This part concentrates on high level IOT- protocols such as MQTT and rest-API.
Content (course unit)
Connecting to real life IO (LCD, keyboard, sensors, actuators). IoT protocol programming C++/Python, MQTT, rest-API.
Assessment criteria, satisfactory (1-2) (course unit)
Student
-is able to create programs that control car movements with C/C++ and Arduino IDE.
-is able to control the car with lidar feedback and other sensors with the help of the teacher and fellow students.
-is able to get VM traffic light code working with MQTT protocol, with the help of the teacher and fellow students
Assessment criteria, good (3-4) (course unit)
Student is able to get system working by adding some small own functionality for reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Assessment criteria, excellent (5) (course unit)
Student is able to get end to end system working by adding several new own functionality to reference code C/C++(MEGA, ESP, VM) , HTML/web page, MQTT.
Location and time
Remote teaching and lab exercises, informed during 1st remote lesson.
Exam schedules
Course will be evaluated by base of weekly exercises.
Assessment methods and criteria
Course will be evaluated by base of weekly exercises.
Students will get points by doing weekly exercises.
Weekly exercise points are defined in course's Moodle page.
Table below shows how exercise points affect the course grade.
Points = grade
0-35 = 0
36-48 = 1
49-61 = 2
62-74 = 3
75-87 = 4
88-100 = 5
Assessment scale
0-5
Teaching methods
briefing lectures
exercies
programming exercies by teams
Learning materials
Links to different e-amaterial in Moodle.
Google search for daily topics
Books to read:
https://www.newbiehack.com/MicrocontrollerTutorial.aspx
https://www.renesas.com/en-us/support/technical-resources/engineer-school/mcu-01-basic-structure-operation.html
Student workload
Clasroom, lab, teamwork, individual work
Total work amount abt. 135h
Contact/remote teaching abt. 50h
Content scheduling
Advanced C and C++ microcontroller programming.
CPU peripherals (timers, int serivice, etc,)
IO-interfaces (I2C, Spi, Uart).
Connecting to real life IO (LCD, keyboard, joystic, sensors, motors).
1. Arduino exercises (Mega + IO)
2. WLAN/WEB server (ESP8266)
3. MQTT broker Embedded linux env. (Raspberry or VM)
4. MQTT control messages
Completion alternatives
No
Practical training and working life cooperation
N/A
International connections
N/A
Assessment criteria - fail (0) (Not in use, Look at the Assessment criteria above)
Weekly exercises does not fulfill minimum requirements (more details in Moodle).
Student has not shown his/her capability for weekly subject.
Assessment criteria - satisfactory (1-2) (Not in use, Look at the Assessment criteria above)
Student can use SDK and other design environments.
Weekly exercies does't contain major failings and are demonsrated on agreed time.
Student is capable to teamworking.
Assessment criteria - good (3-4) (Not in use, Look at the Assessment criteria above)
Student can apply the contest of course and usage of SDK systems. Exercies are done according the given instructions and demonstrated according course time schedule.
Student is capable to use SDK systems and other development systems.
Student is good teaworker.
Assessment criteria - excellent (5) (Not in use, Look at the Assessment criteria above)
Student is self-governing and can apply wide area of course content.
Student has shown deep understanding managing of course content.
Reports are according intsructions and returned at agreed time.
Student can utilize SDK and other design tools with efficient way.
Student can debug and fix HW/SW errors. Student is proactive teamworker.