Přístupnostní navigace
E-application
Search Search Close
Bachelor's Thesis
Author of thesis: Bc. Jakub Polák
Acad. year: 2025/2026
Supervisor: Ing. Marcela Zachariášová, Ph.D.
Reviewer: doc. Ing. Michal Bidlo, Ph.D.
This thesis deals with the design and implementation of a tool for working with Human Interface Device (HID) communication in an educational environment. The thesis addresses the problem that HID reports and report descriptors are difficult to observe during tea- ching, while developing a kernel driver would introduce unnecessarily high implementation complexity for students. The aim of the thesis is to enable practical work with HID com- munication in laboratory exercises without requiring modifications to the operating system kernel. The solution also includes a reference HID device used as a controlled source of input data. Based on the implemented tool, laboratory exercises were prepared in which students work with HID reports, modify a report descriptor, and observe the effect of these changes on input processing.
Human Interface Device, HID, report descriptor, HID report, Linux, hidraw, uinput, evdev, Raspberry Pi Pico, educational tool
Date of defence
19.06.2026
Result of the defence
Defended (thesis was successfully defended)
Grading
B
Process of defence
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky přítomných, např. ohledně detailů k použitému operačnímu systému či způsobu přístupu k HID zprávám. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm B - velmi dobře.
Language of thesis
Slovak
Faculty
Fakulta informačních technologií
Department
Department of Computer Systems
Study programme
Information Technology (BIT)
Composition of Committee
doc. Dr. Ing. Otto Fučík (předseda) doc. Mgr. Kamil Malinka, Ph.D. (místopředseda) Ing. Marta Jaroš, Ph.D. (člen) Ing. Vladimír Veselý, Ph.D. (člen) Ing. David Bařina, Ph.D. (člen)
Supervisor’s reportIng. Marcela Zachariášová, Ph.D.
Výstupom práce sú 2 laboratórne cvičenia do predmetu IPZ: zadanie laboratórnych úloh, príslušiaci HW (vybrané súčiastky pre prácu s USB HID), SW (HID ovládač, testy, analyzátor HID komunikácie). Výstupy sú veľmi kvalitné a študent ich zvládol začleniť do aktívnej výuky a spracovať dotazník od študentov. Študenti hodnotili cvičenia ako veľmi prínosné.
Prácu hodnotím ako stredne náročnú, zahŕňa v sebe programovanie HW, prípravu SW HID ovládača a zároveň adaptáciu pre výuku. S výsledkom som spokojná, študent splnil všetky body zadania a implementoval niekoľko rozšírení. Za najprínosnejšie rozšírenie považujem sadu testov, pomocou ktorých si mohli študenti overovať výstupy laboratórnej úlohy.
Študent vyhľadával zdroje sám, jednalo sa HID špecifikácie, datasheety a návody k súčiastkam.
Študent bol vždy pripravený, aktívne prácu konzultoval.
Práca bola dokončená včas, finálny obsah bol konzultovaný.
Bez publikačnej činnosti, ale zaradenie do aktívnej výuky IPZ na FIT VUT.
Grade proposed by supervisor: A
Reviewer’s reportdoc. Ing. Michal Bidlo, Ph.D.
Celkově se jedná a zdařilou práci vyšší náročnosti, s dobrým zpracováním, ovšem postrádající některé výše zmíněné důležité prvky. S ohledem na tyto skutečnosti navrhuji výslednou známku B.
Evaluation level: more difficult assignment
Zadání považuji za náročné, po studentovi vyžadovalo detailní seznámení se s principy USB, způsoby komunikace s periferními zařízeními a prostředky obsluhy USB periferií na straně operačního systému.
Práce sice popisuje potřebné základy fungování navrženého ovladače a pomocného vybavení, ovšem pouze spíš v obecnější rovině. Chybí celkové schéma aplikace s ilustrací provázání periferie a hostitele, chybí též sdělení o návaznosti na konkrétní zdrojové soubory a vzhledem k výukovému zaměření práce bych také očekával úryvky kódu s klíčovými funkcemi popisovanými v textu. Bez toho čtenář těžko porozumí potřebným principům USB komunikace. Jediný obrázek snažící se o ilustraci celku je obr. 3.1 v sekci 3.1, chybí v něm však návaznost na jednotlivé prvky implementace a bez předchozích znalostí USB není jasné, co je součástí hostitelského OS a co je na straně periferie.
Přestože laboratorní cvičení byla na základě připravených úloh dobře zvládnuta, nebyl tam čas na vysvětlování podrobností a tyto tedy přirozeně měly být objasněny v textu BP (včetně podstatných souvislostí a ilustrací).
Práce je psaná slovensky, takže jazykovou úroveň nedokážu posoudit v celém rozsahu, nicméně subjektivně je text na vysoké úrovni a svědčí o poctivém přístupu studenta ke zpracování textové části práce. Zjevně na škodu je pouze menší množství drobných překlepů a opomíjení názvů objektů při odkazování na ně v první části práce (např. ...v 2.5 namísto v sekci 2.5, ...v 2.1 namísto na obr. 2.1). Jinak ale k formální stránce práce nemám vážnějších výhrad.
Implementovaný systém je plně funkční v podmínkách, pro které byl navržen. Největší slabinu implementace však představuje skutečnost, že většina zdrojových souborů téměř nebo zcela postrádá komentáře, které považuji u díla pro výuku za velmi podstatné.
Výsledky práce jsou v plném rozsahu využitelné pro výukové účely, student toto již dokonce prokázal před finálním odevzdáním práce - za jeho účasti úspěšně proběhla dvě laboratorní cvičení na FIT v předmětu IPZ. K plnému využití pro pochopení principů USB na bakalářském stupni studia však brání nedostatky zmíněné v prezentační části hodnocení.
Evaluation level: assignment fulfilled
Evaluation level: is within the usual extent
Literatura čítá 14 čistě online zdrojů, jejich volba je adekvátní řešenému tématu. Postrádám však zařazení jakýchkoli zdrojů týkajících se platformy Raspberry Pi Pico, která byla použita pro realizaci výukového zařízení a provázání textu BP s odpovídajícími detaily fungování této platformy ve vztahu k USB by čtenáři usnadnilo orientaci v problematice.
Grade proposed by reviewer: B
Responsibility: Mgr. et Mgr. Hana Odstrčilová