Differences

This shows you the differences between two versions of the page.

Link to this comparison view

si:teme2025:tema2 [2025/12/14 16:49]
florin.stancu
si:teme2025:tema2 [2025/12/21 11:19] (current)
florin.stancu
Line 2: Line 2:
  
   * **Publicare**:​   * **Publicare**:​
-    * **15 Decembrie 2025**+    * **15 Decembrie 2025 18:00**
  
   * **Termen de predare**:   * **Termen de predare**:
Line 34: Line 34:
 Dorim să realizăm un firmware minimalist pentru un dispozitiv IoT ce va controla niște LED-uri ("​ipotetice"​) prin GPIO + aplicație web folosind un Raspberry PI (emulate folosind [[https://​www.qemu.org/​|qemu]]). Dorim să realizăm un firmware minimalist pentru un dispozitiv IoT ce va controla niște LED-uri ("​ipotetice"​) prin GPIO + aplicație web folosind un Raspberry PI (emulate folosind [[https://​www.qemu.org/​|qemu]]).
  
-Pe scurt, va trebui să realizați o imagine incorporabilă cu Linux ce va implementa o aplicație ce va controla o presupusă instalație de lumini a bradului de Crăciun prin GPIO (folosind [[https://​blog.lxsang.me/​post/​id/​33|Linux GPIO API]]) și expune pe rețea un server HTTP cu o pagină web de vizualizare și control a luminilor (aici aveți libertate deplină asupra desenului / animațiilor / controalelor oferite).+Pe scurt, va trebui să realizați o imagine incorporabilă cu Linux ce va implementa o aplicație ce va controla o presupusă instalație de lumini a bradului de Crăciun prin GPIO (folosind [[https://​web.archive.org/​web/​20250715003035/​https://​blog.lxsang.me/​post/​id/​33|Linux GPIO API]]) și expune pe rețea un server HTTP cu o pagină web de vizualizare și control a luminilor (aici aveți libertate deplină asupra desenului / animațiilor / controalelor oferite).
  
 Exemplu de frontend web (aspectul nu contează, dar puteți să faceți ceva mai drăguț dacă aveți timp/chef pentru bonus): Exemplu de frontend web (aspectul nu contează, dar puteți să faceți ceva mai drăguț dacă aveți timp/chef pentru bonus):
Line 169: Line 169:
  
   * Recomandarea ar fi să faceți un serviciu daemon care va primi comenzi de la serverul web și va rula o buclă internă de bit toggling pe interfața GPIO a Linux-ului.   * Recomandarea ar fi să faceți un serviciu daemon care va primi comenzi de la serverul web și va rula o buclă internă de bit toggling pe interfața GPIO a Linux-ului.
-  * Mai întâi, citiți aici documentație despre [[https://​blog.lxsang.me/​post/​id/​33|Linux GPIO API]].+  * Mai întâi, citiți aici documentație despre [[https://​web.archive.org/​web/​20250715003035/​https://​blog.lxsang.me/​post/​id/​33|Linux GPIO API]].
   * Va fi necesar să controlați doar primii 20 de GPIOs (pinii indexați 0-19 ai ''/​dev/​gpiochip0''​)   * Va fi necesar să controlați doar primii 20 de GPIOs (pinii indexați 0-19 ai ''/​dev/​gpiochip0''​)
   * Atenție: [[https://​pinout.xyz/​|numerotarea pinilor pe Raspberry PI]] NU corespunde cu organizarea logică a acestora! ​   * Atenție: [[https://​pinout.xyz/​|numerotarea pinilor pe Raspberry PI]] NU corespunde cu organizarea logică a acestora! ​
Line 220: Line 220:
  
 Deoarece Moodle nu acceptă dimensiuni foarte mari, soluția temei va fi împărțită și trimisă în două moduri (vă rugăm să respectați convențiile de denumire cu exactitate!):​ Deoarece Moodle nu acceptă dimensiuni foarte mari, soluția temei va fi împărțită și trimisă în două moduri (vă rugăm să respectați convențiile de denumire cu exactitate!):​
-  * **arhivă cu codul sursă** + Readme + hash și alte metainformații (vedeți mai jos) -> [[TODO_MOODLE|pe Moodle]]+  * **arhivă cu codul sursă** + Readme + hash și alte metainformații (vedeți mai jos) -> [[https://​curs.upb.ro/​2025/​mod/​assign/​view.php?​id=86207|pe Moodle]]
   * **arhivă cu binarele / imaginea rulabilă** -> le urcați pe [[https://​ctipub-my.sharepoint.com|Sharepoint-ul contului Microsoft de student]] și dați share prin Link accesibil tuturor conturilor (sau, cel puțin cu permisiuni la ''​florin.stancu@upb.ro''​),​ însă nepublicat (pe care ni-l trimiteți doar nouă în fișierul ''​url.txt''​);​   * **arhivă cu binarele / imaginea rulabilă** -> le urcați pe [[https://​ctipub-my.sharepoint.com|Sharepoint-ul contului Microsoft de student]] și dați share prin Link accesibil tuturor conturilor (sau, cel puțin cu permisiuni la ''​florin.stancu@upb.ro''​),​ însă nepublicat (pe care ni-l trimiteți doar nouă în fișierul ''​url.txt''​);​
  
Line 280: Line 280:
   * Tema are deadline **HARD** (nu mai sunt admise soluții după expirare), așadar se recomandă să vă apucați din timp de rezolvarea acesteia!   * Tema are deadline **HARD** (nu mai sunt admise soluții după expirare), așadar se recomandă să vă apucați din timp de rezolvarea acesteia!
   * :!: **ATENȚIE**:​ orice formă de plagiat nu va fi permisă și va duce la depunctare totală / restanță!   * :!: **ATENȚIE**:​ orice formă de plagiat nu va fi permisă și va duce la depunctare totală / restanță!
-  * Pe Moodle găsiți și [[TODO_forum|un forum]] ;) +  * Pe Moodle găsiți și [[https://​curs.upb.ro/​2025/​mod/​forum/​view.php?​id=86208|un forum]] ;) 
  
 ===== Resurse ===== ===== Resurse =====
si/teme2025/tema2.1765723772.txt.gz · Last modified: 2025/12/14 16:49 by florin.stancu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0