This shows you the differences between two versions of the page.
|
si:teme2025:tema2 [2025/12/14 17:16] florin.stancu |
si:teme2025:tema2 [2025/12/21 11:19] (current) florin.stancu |
||
|---|---|---|---|
| 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! | ||