Course detail

Practical Training in Embedded Systems Design

FSI-0ESAcad. year: 2026/2027

The course guides students from designing the schematic and printed circuit board in KiCAD to a finished microcontroller-based product. In the lab, they learn soldering and assembly, prepare an enclosure using 3D printing and laser cutting, and perform device bring-up. They then develop firmware in the Arduino IDE and a simple desktop application in Python for control and visualization of measurements. The course includes work with a multimeter, oscilloscope, and signal generator; the outcome is a functional prototype accompanied by basic documentation

Language of instruction

Czech

Number of ECTS credits

3

Mode of study

Not applicable.

Entry knowledge

- Ability to read technical documentation in English.

- Basic programming knowledge (conditions, loops, functions).

- Basic electrical engineering knowledge (Ohm’s law, simple schematics).

- Optional but helpful: basic familiarity with the Arduino IDE / Python.

Rules for evaluation and completion of the course

Credit (Pass) Requirements

- Attendance at laboratory sessions is mandatory (two absences permitted).

- To pass, you must submit a functional prototype with documentation and a short demo (2–3 minutes).

Aims

The course provides a comprehensive path from embedded design to a functional prototype.

Upon completion:

- The student designs a basic schematic and PCB in KiCAD and prepares manufacturing files,

- The student assembles and solders their own board and performs a safe hardware bring-up.

- The student programs the MCU in the Arduino IDE and uses I/O, ADC, and UART.

- The student designs a simple Python GUI for board communication and data visualization.

- The student measures and evaluates basic device parameters using a multimeter and an oscilloscope.

Study aids

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Not applicable.

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme N-MET-P Master's 2 year of study, winter semester, elective
  • Programme B-MET-P Bachelor's 2 year of study, winter semester, elective
    3 year of study, winter semester, elective

Type of course unit

 

Laboratory exercise

26 hod., compulsory

Teacher / Lecturer

Syllabus

  • Introduction: MCU selection (Arduino), device functions, project brief.

  • KiCAD I: libraries, schematic — power, MCU, programming header, I/O, ADC input.

  • KiCAD II: layout — placement, routing, DRC; manufacturing files (Gerber/Drill/BOM/PNP) ready for ordering.

  • Mechanics – enclosure: box design (FreeCAD/Fusion), dimensions, panels/openings; quick prototype (3D print/laser).

  • Soldering I: THT/SMD techniques, ESD, inspection; partial assembly (power section).

  • Soldering II: full assembly, visual inspection; preparation for bring-up.

  • Hardware bring-up: power measurements, quiescent currents; first “blinky” (Arduino IDE).

  • Firmware peripherals: GPIO, timer, ADC measurement (1 channel), simple UART protocol.

  • Measurements in practice: multimeter, oscilloscope, generator; ADC validation (level, noise, aliasing).

  • Python GUI I: serial communication, basic window, reading states, writing to I/O.

  • Python GUI II: analog measurement plot (stream/acquisition), data saving, building the .exe.

  • Enclosure integration: final workshop adjustments, assembly, cabling.

  • Finalization: testing, demo, photo documentation, submission (FW + GUI + submission files).