From e58cabf95e7a64421d157698009f0d1fb46a215b Mon Sep 17 00:00:00 2001 From: Denisa Filip Date: Fri, 24 Apr 2026 17:05:10 +0300 Subject: [PATCH 1/7] Add project documentation and images for denisa.filip --- .../project/2026/denisa.filip/arch.webp | Bin 0 -> 8680 bytes .../project/2026/denisa.filip/h1.webp | Bin 0 -> 28668 bytes .../project/2026/denisa.filip/h2.webp | Bin 0 -> 23574 bytes .../project/2026/denisa.filip/h3.webp | Bin 0 -> 30410 bytes .../project/2026/denisa.filip/h4.webp | Bin 0 -> 98792 bytes .../project/2026/denisa.filip/index.md | 135 ++++++++++++++++++ .../project/2026/denisa.filip/sch.svg | 1 + 7 files changed, 136 insertions(+) create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/arch.webp create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/h1.webp create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/h2.webp create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/h3.webp create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/h4.webp create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/sch.svg diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/arch.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/arch.webp new file mode 100644 index 0000000000000000000000000000000000000000..1bca8f8db2ab9120e9b1251eb5fc3891e1112a3b GIT binary patch literal 8680 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 G*Z=^uz|oHY literal 0 HcmV?d00001 diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h1.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h1.webp new file mode 100644 index 0000000000000000000000000000000000000000..c373925f4a8fab11c2f22e81ee69cfe9defe02c6 GIT binary patch literal 28668 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 literal 0 HcmV?d00001 diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h2.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h2.webp new file mode 100644 index 0000000000000000000000000000000000000000..bb340d2783dc7edb7c7a0317289c12d9b18719eb GIT binary patch literal 23574 zcmV(zK<2+vNk&EvTmS%9MM6+kP&gn0TmS%&qXC@(DoFvm0X}&)l}IF_q9dp??KqGR z31Szi0xr{&tv)~bxAc7Uc;~v`a{b5FBm5o%`_KIEGQN`iC+$!EFRXv-pXmLBKV1J| zeRe%|e)9UG{lWdT_h0|X`>pTC`%l`h$j9`r`9J^rB7GFRyT5q8BLAxY&HcIdnE(IT z|IJSkUo-xT{x63o`1XkPt;%8|1ti9f5YlQ`M>pF_}||+ z%WiL>Pr@IJ@Q2tbZ;B0hI{(q<4^eW_^QjXCnl+2PPWZ8@4-Tp=S9sCQNYhQb9D8#@ zz5oP%I`N2}?w)If>Vtl;4(K7az{Tgw{}nM2JGy=);i=18COqh_k-b{u8%bug`Nbg- zFN%kgaz`qUq~8-71od`jqfr)mIjDiEvSKiLwdw^{iz?gln02$}CLS}`U@Xi?r#{11L$aIzjB(K>?bx3g$(t3Qlsr@ z3K242FyoOo=IHz@TNwLY#LH#Hn6yRUPyE+;KQ$&_6?311!9GYNw^-CLY{cuMoAY+X z7$%V`BoJq2Lx5en`a$CQlSK6K$}vWXCN3_4VfaMp<#D! znX#7vkN^1onYNK~$K%gHytn51<%>A{pIye9?cK)UOW*ggPgz`cDqL)7fR)PPRgFon zb!V0be|&O}v!o7orABWp+z-n7a##&QX_ne=*zS=8XJ_i4|MPNLYxVynVB7As5Q^_K z&~efn;QO(%cpzk!$IW)?swRkt9pT~UzVBo#zu5w<*64dw$Q(|W!+NXL9wN|p(yH6M zG^lLLDROQU)Wl*OTZ*HofE7L$1)B<(b;K#N7 z=8+*nIYcb-F(wPU=u{Ak0gjg*Og|HJ`CRq*Kvh`mQp*IrbtqOguIgqN`fexo$ZWmoYxKbwoN9$pui4X zY0hC9!a!Q(@qnO8Xqf-}8|BINvFl6ELokXVmdwySD9(8;hji*p=xQW?u)L$MS@H`t ze9XtTO}x+ZG;b8-5YMNGjD#3{vkGczZjDE`Gj55oIUDye?Wg$<7X72Le(vmF&MG69 zjtbO%lc_+btd)1uCCR$i(XzRsyNwo`;4hI^(jNnNA$*z#u}M-D;_XT@L~Gt>Hv?TY zbJ8<u(uol=#^MB(<*IC54?vf zJ%7|YduerJap$4qGYK`YQ|97po_Ha8_oFEBZ7;MA;JJWPkQFv9@Arp*<(EVdDRW7G zA!h=e)N$~CByR~{cC5+D$0mags$j;Fb-|4Z5p=9EnE!l?zyWDFx-s<^*8ZP|z$tJN z4QvEz2%gFt^uxEZ%^RH|B?3aNDULtdc!be^MjRA2$DsCTIHVG1@c?SY-Nsk<`RzbS zN>rH%1hlP*W@4gG-hz`eK~NJ1(d?*+KY~t`RBMSK6rv@3k`mbF*;JSoVH6N@%=YKx z)SjVsDNQmu_k1LUR%1Qmi@`0r6$`h~&zgtw?&4?%c$K?vk^DtBJtANPbZ87)eC2b9O*%#Sw= zFSsCg0wZ(pSgC@x(<;_DHjU|IERTo4ySgPqrCTwqXTzt|k>QQ+R`_VRm9vb#i?_hK zIMB8i*~sKQv_D`7iEYs1rgE`dj&#(&!LeR>6*=iaJ_?-qnFgV2Sk+NvhwDs@*pji% zIOOGR$s8~H|B(h=zr#EaQ&#v}_VMpXe0>~66TYr(6fO?N@qZQxWJ1ULV*3jJ)v9`~ z)7<@sxi0213%$91bjc#q!#mTl3_<)N9!^~ zPV~cDE(B=K?_^l2shP6uz=;*+Ii5P+K@^?hG)Rv*3Y#$Mha?0z$evUV1GjPV;ZEtp zABjQ2thjij4`tQlJN+i}bnYTz6)LG+rLdsiB7y z!7`JPwTUrU@=Ls&PSM&p6ahEDvP5O=_E2{4m4P?jH8Ez&o*qix8pJmg-#`r4uA}>g| ziXXh|2%>aI*S~6qnd_LHxk>*7FiUpFfG-me8z5Y!&U#X?$6k^-e@}d&wJ?9P_3?&) z8oHu&_0TW*N0lG#KfB!-h7(fAs#(VlwTpTN|JDdnN6ZGhp>)G~j0E_R*(^JTJg^i} z07v&cRTXm*=by~^f_57&!#=SE-u1(EkYsX67to7^w^2NdRL*>W^vDk;$HQ;81WuBv z*;%LmL{peSN5C#7e;ynO*_0an(tL`TN2A!0ia}h@LU*ux^>yvao*KRo!8ZN>snLem zyu|Vr1c~%c31mb8z#=+WfxZ@<^~YcAdpB;d^PZfe(s|1h)P+sK*TK%F!;k<;-r!Ix z!EFqfJ-)}9Np!cy$(~Q}x6JKw`z_thc+yx2vj^zq&5o1|+p@6@X5h`~*6vF1lmI_J zt7{hHtHcws2_mC%aUeaRdJ=8;X`!Ut#K+CspyQ;&w-&R6~g@Tu_p#V}I`Wz}ri3v8f4< z#Pm&uZDlXb=lz0Q?K%_<&djbR1!Hrs*@xywwaugy@Cs~?EgNzr2T2=O*U02;n)@!H zz(T^HDEO1JTyL2EbZuPQ_Qj^uP*^nDzJX~$R{Cmf<1LzVVS0J+v$%%}EwTvZPeI8$ zHyOS)Y}uDw(R-XZoaM?QKYHP1)#R0N$hNxvs1Cb_kE-NB z!KTY@5YIDvk-3PUtBzhMwePjS<--J}fF_AjHs%MoVD?;)q#^`2qZ`W;#{Wsr1&fmN zWDNNk_|Kp1qdT|6Y*{9QpKlh0l>5p%_-h7urPW0O9K{nRms6Yllq?Ue5gI7NqD6FC zH0jFl@%A;aYskI9uq+Uv4TV9lt-7)#qN_3&TlToQ7Ce`-+ABYag3J+CeE(5WVgA?o zfKM%P8ZY6c9B|O~xnJ1%F-UhKe-%#(sCMAd+`&G9wz+OFC~&0$)BDiiZmLbwU1z@U zKV6ei*CFAjoSK`f^ZX=XayD!e^!Hl!-PNFqzLBl3Mvh~LI;Z22@NNGDykE969k{aD z|5!srPDVt&R{Yc13Yb2r_dL{+?Yj*h1vKKNGRAX{EN@twms~**JW*QCkt{l{x|nl` z)oL#v1+Zs1uh#YtLaRUfKU{&CSv#zS^{st)l5^lbIoh@jNgvzu`N%X90W-0sH)@!h z+4a|>66OS?NIGJLL2ZU8#FZh{s^~Xo(aPAYrN@a@Y))veG#Fs?RabV}I8zDok=>CLfT?Yu3s*V$JPAB1*d(B{WY$Tb!^omkkYmp)Q zR>Z0A%IM(it-*s_IUQTYogNyua8pJ-l4Qc2dgbFV9WkWl63ORfeE38tb3=ix@Xlp! zc1`jMlZ~zihlrW;0 zg|17}FxJKj! z+uNLm5o@!ah-Rn&0RHx?E^vE243cWut`we@ow>%23zgfm7^DBx(Vw5V*dO|uPs2d} zx4xR&^iRS!$qSkmz5*_-!YJ|U*J+D!2}E6`<-GxtnN64)244{rgUh$f8Wrp5O^s^B zuF>i&DFTEAU9>I8*YtQeK<&^{@;dX^&=oc&Bp?QH(rEa>{bJ#jZ;h)MU2`G?_Q^g@ zQlZ{oH+Lv{{F%KRMcDk;vk>8{Hng%0GG=&$J0B{sd1)_ty0RvVQB()z;h`6r9eC zv?wQQ>Kp}%_syz@gXI`BmuNHpuz;w@Vq@jaNM;oVIDt^=ts~>cu$>} zsvShbUa6MG-yGKtGZFRtRH;R1dyfN?8ap^WN~=;v*-Tt?QG~z11lhnC#}j>>GqHC- z>j#v!@QTCREptG$;1$OVkbk~KkoPh*w8~Ys5T?iSpp8^4-V)Q$q_`r?0{pEac7sE0 z-)jd`FmL*xzxCC)fF#es7GW}tk_TI9>fQ#nB zfsF<@KLnl&7pfvwF2oh7#LOpA#+7Hak~23`DrX%5u~d^6DWgmCS65aau)3W3FUV-+ z!9|YYGiPT8H;En}5pYTIEc66}@FxIjz*4SZ78ElGoE69G81TBVSL= zG||WzUJ`oMafPwX4qHjeckrEuZHM7!$EFB^ALKf^{oY$?7aQEkTmu^@N>Z)c-X{V) zHI#rFpxhGrZ{zXeaLe|l@Qp=c7vZSxE7R^Gbp|9?&u{((=B8(?l{NH4{$CqPMF@60 zu^{rpPe-vGjuPZrlx=pd!!*EyMkUz3v~BuqVWS&Ew8l@Xt8sxebi>!*ZRlVk)kSm!1+1r z{fABnw^+4%*xn--@Yo@(#i}quSN{Aah&MIx4fpBnsu!#5#NtJ|_mMStPXe5QW4&e) zF^_D7kC~a`TrkegdZz8d#2N*1Wz&KMQBHU3V~iYE#4(|i1;Pq&fM{ha3#6rMY;hD< z(vD_Dkde=dQoN)8FthGgy!2}iBBoN>KPI`pzr#&!tSBAh8nFVWK>L9BL>BV^k*ikTVQ z#$40jl+-J7;tP?fcgQT{aBG8y>za2qR`y4DL3rlq@5G*OqktoNVXv~T6Le}>0Qzd9)xVG_6x2!H7)|QVm@x+hKzC2!ag`h{sjaSZD+b|9mgN?9YBEfO-r>(521~i7~R&t7D4L^mE zy#|(PhQNV~1kf7uI`DnrrmFG9*_nn4WdDv#ubyDec9%WRkaBj_^-@`5L&ehDmu-_K zQKPWn{lWk(+C6w|HEHVkykW(tlUMAViwU!F^a0qypdGSKaP`vC`{%BxL<3dkcOs$R z;!4y)Ne7?dW%}<+Db~d1K<~B%tEb*yi})k3)K~6NWjR3o$&$OH46H8$^=Li%W>K~w zq*}1@*y9>zEq}vl$0=j*V_Q9eAV>*AC9UkLQ2)HYJBpg4yj~J;h;EZ&`*899%N%#J zSt}o}A9xVvEjQ1f$z03t-`~BVDoEOM#EL!qT&e2N3dOzx{O6SmCfL(e<<8pCkJ=S{T<2TyKN@jW zlKl@)tzmJFm7%1nHX>y2#=Wit?{qtFu<^(w^WyNmgiJ2l9U<~V0G6K^(EA_Fk|#lf z^K93vNfD=xu^1{=PTpQ3fg`sLMJ?Y}BM9faM0;^t`sQja=~a)|YC1p}`g>FH_w}{B zVbq!-GfPwrfvOGdlw-S~F3xInDVoBiu8q1KUYYC{gEQE@q)-ysN(Z^{`m7A& z)o27w2b1pP>yPHIMS?#S3Pj?U416I-Lo0Uf9S%efcfUTkF#cXvpF?omGqLGhA9`Fq zokMa$trkwBBrohgbBnTgsdD#iA>s04K}3+u8+1HJ#|8N4&{|q$bJ`fix+~MwdfbRf zwp~ntZ^0O6f}~41!O4?#>bK)>pGa+Ay1Jw0GbJj|*rC4lMj;$vpYO~k9R$_-9-2bBxQ$Ka4=aniDWa6%JnOzGyBKzhK)o9#~2`iW+g`$Msi##$nAcVHd}{-h$0L zlKP^10yf4mJ{jLqZ17zhnJI%K*TcA;qd)AbAf8C+Zw5fmNU2fG_@K^e{5C*biYuTE zWpyj@!-E^jEVq)*58t&o<+F&c`JRfTBQjXwEKR-Y8> zBjYbyJ@o?3xBv)tJ$$N@J76oG&r0^F8xEl6tp(~)VNEl;7|L>0u+ZT=&*C3gQ21nc z5h30h$d-s%vj@6x@#f_r)F&J{byY$TVi1gLSwb45p{@R%UcC@{ZQdqR1yCJ=XcT(F zmBQKHF0m*{$0dntWI_w1a;ki<2_k%$y6iX!U^x7S$#RFjp$jgJG~9a{l(;p(J2#rj zHBM&W5?SvSeej(=x$;@`TsMwpC?aE`WRj`onwnfv6+x4}oBhWoNf#c$uA{#Qg3x*z z<3rI0*4Pk}9QR~*4uLw3hF&8XVW=7HU7c$VIc@&><@p{v)6}m_oWdp#E%}kF&@>Bw zv&#Fx#MxpR0xT~KKx!B5|6X6Q>t?F2!cAq_cX!E)vqBJR^5TG*#ETu=p^+1^hDQ9_ zQDjR<>X31b#+78H*w!4SSz|~gCGOgsBPWszO~phqKUxew!lxL-sPo=&R7TNId;Z~C z0NruS+nT$?5`rHwHOxIgCt3SC#F+YBWYVAvxc*(HFqzVPr&@__q4XDeZc*3Iv7mszB=H_-j_3;(R`#PQ!ILjE>AD_1W}qa7dLQ$Y>P+M zZeWD|AA)!XN%l+oE*}EK=xK`~=C_stA$l*q-3a4Qb-G-p;^cvOGRTCU3&%X3vJrbe zwc`OssFhM)?3S&GiYNTeq`lwNWJ;$+Gr08#C7rX^FbMReL$TGOr$1-UA`sCybVxfjCqo7ZX<79r-mUeyG?#0!QK@fb)nlfJf_ zOfCaflJT3y^NR$y#crEI$O+$RNE1HzvD)QjZA6lBc2%rrGe@0uQio7<$@UB4a#ta# zgDj2rIVJ!aip2V8pK1&6eGs*djIy*$*2XHHEE<{OI3tfhP`?yiA|%G?C3tXhr|LD? zx>yBPY{mmrg4ZO^sKcLZUO&+e2aK&3BVe-F&UP)04bU8H1D7x_o(0OaU`MD%iy!^B z1~eVgDmkpCWRP9?q9SR49a(JH&^7iMw@8KZ2i-wm516PvXg+$y3LzI1r;4N^F*#^% z(AVgi>1MKZ68P!N$inML^gA@pXI1cQcC@P1eGhuEsb# zzV#>c9p;$cw!4Z2aAbt_j|P&f8kKK{&JX@KkI^?#4EjSX4%SSrYcB9rdE^`gey2o& z(i1bwbZN;#p3jB6+d=%I7fT(bCN-JS|CJkfZ|wu#&2yVCWq>%}Vt(&YgSS-#gfi*$ zdj)?m-X8%LB=mctx7CR_O$ZNffJXg~R7zc85y_jBV~`VOe=WJba{Km$iHNF}UA+{Uh{ewAw*Y`k1ffY6_j0g@I^z4Y?-ZElrl{ z7qh>YpU9=XyA$BS79gn|E+k(G2YHl+>>iPM#F7qVq@G`2@T9yT46$!xZqlak3`a?c zSaTiD#TEy}PjEAiV%K$LcXZlKF`Gulc^k=sl<{pl`nPToZg*5#p&jE?GpE$5np1v{ z-j{P>NJ{(hW~8^iKsUeZ$BHP2A_j?Z_H&4YB`2z?#mE?ManQ5;%d*`{V{7!|JY_k?S4q^KHZC+gwzd{Mecyn9OnL?T3#FG zOxjGsTaZ^BP~C~Duk#rCyMnphI>}{&QP~4XnI}LFt7M(l38I*a;a2BUDfmVEd%Ve$ zH0@&2a?)z%arfy7YSGuZ|K;X@`2#r7rA>K}#$$d-kAJ;pvm^Pd7>jSU=4x+LGl(=@ z6X=@w${>QbIt=cBax`l=)8vJe*W-5ecepLXt4IVh^+aif-RN9Fh0wLM_6Ig2z`Ddh zge@WcIhN=keUMkiM;+Q+4Wn)jdlJ##+?QKMXpaec;&~k91$UvLR~w2UH%H$KL^Ja+ zFN91CZTH{wq{CZTW1Km$hT}3~3-N|@Io}Q^08-rw6TsbKht-k{RAQ~7Y@!>fPzF?Z zuT6i4yi_hkv7`M_6fo|DTD^aI=En0B#%X3C^@>+xZM#?gG-Mg8Pu{Fl%H>ujK|QZO z6b+ARU;f&~s-5MCGuJ{r3 zqVR$3(zGNK@9W+q`72eejzQ#{^l2(-6I#DSwJlLz;Vz`U96Gv$w!{X1_#(QtGeO9G zf$e0{NvbEdzC+hn2$-&FiSdO>uMV*U2M+#nJ(wzTG7%4RJ58zebu{rZ%LZL)QjExQJj;-+oUFXGCA<#v z7g6chh|Du7Tj)hFpY9z3h4RL{A4w>wGYK15?8przn+)q7Q6&p#dK(m?g`1PR zTA6#2*Y$x>iqz=8%8wNYfmfaEu8f5ume6{@mL)#MAcV&z!ItQABiZZhfAkW%~d)B4SD>2>;ZxA#ta` zr(@0wuNb?E!^`QTu=%vFm8zDlRj}CjL&eT*&2tIokqm39G#}pwn2D7Z3S<^?gB945 zD?2VqsiCvzjy&Xmi10xvlw}aHxel2d=CuIW}qTCOFN#k9`>kkHIfAy^U!JaInPpdxc**0}a21d(za5 z+-%(H4w23z9BRd5dKu3AvI@pczB1uhuC|iq^HKq=9TXL_|1|}Wll6)LS7Ooy{F^uDXRCPk?aT0%s!Z-iH$GW zMlW)~Ow!hX^EmWhd-w~P?Im{@$7PcQcb4I3`Tec@x8Kp-w?9vewdKNDj2AwDFGc#F zA|Hg2&6-+RCYwHIoXfM>-v1$|0J>j*y$qT&f>!ZW3W4L6D*uT=1K2*^;|c4bww6cO z0Gs1>Ly~}q7Xk1yNjn!*W87~7(^AyEyHRvX8SW3A$z-}ds*f=NtAe@-fcZh$+@KJsa3d1N^74f2o>bPLs>V)?HGkN!ZiocCesY%d8KEi<%l@VMBkt zj{&nFx_7vjt6=!d>Wpp32^=NzG!)FPAS`i31d8DA%^Q!+yaV)UHo+Y>FWVl-m;s;F zzoUOaDg$DCS~5z($NmiW=TMEM;H$E-%>A=GsO7ZM9z0fft>C%0LR< zSyaPDwl)rs%7E9JcDxxtmRRo&N_L37JI$%Pe8s(Or5TtUF{?NuW^vw&Yx61O_b3rG z=}DxDES>=B#o!@Pm^+ngckV}L^yQ-bF?A9ZGkkVv?sE&bt0~vImStPrmw~;X^tk&L zif_<&auex3CkP8gEFOtHA&iTcOM`^yg>Q{Y!7BAlHLL#Yu5L^ln zs0ky{iTCALfVqTZ9Xg~l3{_Mq3eYkw{M)Ah?opc?{Xm0rOx9(Uvaa@dSbkPZUeEIaG95l%+0PTk!EX-1@wm#bMa>tM7?qam zB`n4IJO9-A^L>4m@3tfc>x;zAeJ{w7|HCgign_3u#6-(I)ev2)ypD2^ea&zoQjs%+ z!q-c!m9Dx4MD#zw&I#voFffA|JY`Q^HTg{_-rEAmLx~)FRKq_LFHpxg7n+WKR;zf; zen=6#&8V_fMsYbOe9P<9Lk}|_kI@`fpr&|zn75-o(cC}1Ppi&Ct^}a~MS~JwVS<5w zfqjOcJnyCdGmR3N>1!8p=<{-ttjtY3K~5XDSS3d=8=(aOjnO_Vjv|}I2b=4ly2wZs zCf7Fi^sUVOAe3U>_qLT5F&b8hDMsaSc7%KANtK6Lnb~`okxeH9oOEbgT*d~MXZuSVxE3pG6fMs1Z!A+>Bep7kf#jO8Sasf{;zoBjnU-ctpwFpQ0n1x)p$81s zB9*`|Hnyui`NXkz)qL70I&|Jg!2xI~wgw4Di|;EL@z3ek}f zSq^EcM=N~^;cqXeD8;*8S3B$MH;W)z}|G1HO|LifHOs>b?PJfV8EM7jKL4Pf=h;6Uy z-mp)`mC{2#+h4y}E99^Gq*KT;C_)%{DF5ewtR{gW_YqK0=#I6V`{bM{*~{<~^KS`A z97IT2PFo^g+6|p_;_X%IuRR@G&rb|fg?Qh<_BR@VnrG8%ApY&jizj;k+xn%qiKXt5 zqlaBus;#2Y6uN{?2B9S_cz$du^cvmVbuRxFmZvKt>ByW_t8xs0jPwibM2F-*}l7%pniQ0mNC ztGld`Q@TZm)7|%(K=?~t@G`R1v>oP3lP2*|zu7>y@lpR4g#peFB$ohJzo8&1O9Za_ z=eZ|ylwJrFngksyBNaOb)F2r(0+SYf;fipQTDJ3Kvg>~4WXlppra>SStcU*vyckdM`|T8DYU39Q|pbkp4oZQCO)<+rAjP1pMjawZh-C)ZHBKIbMNY0D@c= zC|z(YkgEsAM@0d0_=Km+72KG|#zvQTTZ;%hA!2NJ^5JVM!BoM=nohq#0cyNJso+&g zhDKG!tT+y3msryQGN}~PgIonN?WO_iHSFQjkp?Vr(6c}ygbS*xUT* zXJR12ceZd7?BE&aqNSUve%M&nS~Q_#cQEL_++`-G!3LIqC?rOHV2NtN4fAi|^wH$2 z$Wp%DizucL(FPg3XuRyvUHI?8rS|2u1iq{l5DOtazLNMEWQSqb5BwQ3LtcXj%zbVF zH6*)G8W_62X!NAsP8Zf{^zI^!=y#ad$TNGflZl{2{BP; z^^;q0v>T`Hmmlb6m|FcA4)1xxPEF?kw9tO73@eDoBo^jgst$Xb7TP7+QG0HZTo-EK zTP^{Lxe_uXw%I_ifdLo!8rxC>xcr+rML5-whnzg~kF8`HoFM1GL)Z zI3ssoNtlj>mD>P-vQ}`PWOy%~(;Q^aH&4Uvj)*{iy zrfYKOC79z}Y4Kd-lB?tfLcn?-Wf36;`AZUP(8QV4^jyEqj^J+3a2{{xL^ zU}Gm--_phSie!=Y#@4ngeLgJFstTN5hIIgawY;jSI7i#5s3bi>q&1bx%8yv(Q>{hv z@p(*~9?4(gz}T?d+%V^>~}ZXbNYJ!5i!N|gFs zd79AsJ>rxer4SpZhWMuUFpFXeJi#zZtRVn(9kVg)`9_z(@4Dms%TseHp*NbKhNW5UqS+%s#w3v2WM_~)PEB}LPR zuHiGYpegHsiuugEvSn{e%NOh02Nfe@%Ms|ry<&PYr2=brug!(>NfDOCq=0{@mzVHw z!;pOU=z{8E?SCVW)0>nkqRA&2}+_wAvqd|L>p*(~` zWFY(Ab$83<{(n$f92sBWivag+y1ksq7<$);r`>ztP05mxv9&2(7TK5;yZ5U-Urw23 zx;s(IVs(E8qw2VkxGM!O#AC6b;=tUC6QM+&j^^fV$+0Th?w7#ogLb+pv>asYSXQj9 zmu*({4DFEprZQeoJ5jhW90Hpt`6u0a@KXI*^f@}q9WcA;gC;`(H{ATy!EB)sIGq;r9wZA|(R z+Abr9Jf3rlo=3zvGz3$y`yBNv$;EXc^5E8DX%37|2RXrrd$}X(54Z{S26%3G$3{b( zQtVDdZvXnfW70mMqFayTc#=zjjYhSI5>0KHnaeS?V;)*byeW(M3!`37Na6LxHcOzO zrE+rGT=r|rjNl&}6;7Bg@>>gswwN zdI9bKSHr5V*z`@8vQJ$ILzHSu>gL6wkGcc<{H5r3 zsx+xWvV>m-g65qJQGu5WKYy2}5U)LOvH!TL)BV4TJby*W`}FMCpMeZ%O*quQPsh}X`4>%QiHTwK_o zT=J2h4-mgbc+orKH`4P9CsyNvIHjmU2w5wS2b56Mn5nAeCfFUT|2R!dc`i9wampL` z-^bQmO{ScARmNV{?6HZ*fIudxN-4N92efdyXO*WKHCyDj<~&B;ODT(Alci}rjw!{2 zK{5(#eh_IuK)@zk`Hx-RDrA*zP105ty!p(0sS^+a2b1(19zh?7 zV4v(z{$}d|ic0n+b-sopcZrU?iSAxWLYtzTqe0oaas#N&C=0OyGkBQe(faudZ zyFIkk^cAD+rC?ow9?5~Q{3Mt1c$U-a2EO_f-{)KB+TuV{unaR1+&v`v_LRYK8yeWa zb-!LYX!fP9l$BR^v(j~42k#z3=yRe@$VPTZQL8=L(AsDWWCO`47@26Hj-44*bajGE`o7^3<=#(6soX->7P4s5$ zb-^D2pZQ~@3@N$yTyd%uIc=%u(QjsQBf`>Y=ZBy+d&P}LTd&&HqaO-J;EHEbuT~to zcM`mFq2f)#iSCoWtrKYUx*|ya>;F6T+v+;O%{lQjb?2^y1%#o=27brSrOOhwd$qm# zG4J>Q6K~zVX21+%83?*7d?`_SAAjNimB||op*E+ev@9H-juAIU(}n(>hX*&y(}_6f zt1?>p93PRK`SYRSIM7ih7%@z?)^fY@MXOrcuYM3;A#$`ll!yUFSnb9$;hBhJ(K#%C z-gK!<76EHoCREpcL^{Uh1ZZn3wiA0v9HT`mn5N-{iy%%k2#Q~`H^qL^d8b?Maf#3} z+L`3J9UqDJYVl^tWvD#2r)yE;Mp?2t^Zx-*dFw@}Rts;|oT-n?-ckRRmqe*4>5mOw zpHwE0;0_@&)f?w@kk_wMqAPVeE5!IQVE2Hsk7UFk4WTQ!0tol`H~ClK907Y6FIYL< z$L1r8_MFosrD!W!m0mPXM%R&5Q;*Z{amL4RfWeZ6DFdt6RU@AAgOTv-SH9dHbNb|) ze~JTP+_my46V6psMM5$xq}_ab*(wD_tFm8)gSBLp^@%wx(ZG52S*kQDq`h?=vnMBw+YH;qy6$Lre{*|3Jn1D%@s)W4;U62KzK@~2T47%s zYClD0|0yac3@)j!=!m4;RPS(dxaSeXL{?xENUArOzrie1tthsjs{m#GeGvOV&oG%c zfVUw|bdV3{4fJYIz{)}G#uT_=51iF_LTwt_D?fiW`Z1|ZBL>5azJ9~u&`JX{Y^Ub{ z74Bk@X9vd#=JIrN?Y4%*8!`}?K2{{*i{HAcWjtAJTTruJL~gUf{lAiz|8LuQWMXgL zOm%Na4AJ0Xon;2ke|LzKv9MZMhCufyMz!j4UANgGzo)PW4F zfuiUV-o_HuA#;lnIXhQ1ejObL>mtY6Bxtav;)#CzY{L&d2$A9GT)RM_nc49;AUXI0 zS)9;RY7|yoaUS6R-)1LTk7E?oq0e^qm`9k{jJ$`zJabBA3IC*@9n6<0YdNW9l zep|!83rUqCE=J(B0)qj8K1{ruK_bXF7#ss-*zkp%Kpn?UPM0;Eu6gTfKqoM$(~xK_ zY!o2C)yYd$XUr!}Vc}eiW)e5zQrk>~^C(7}(^s`Gl-q(0gqB&U{u zLjImSl&iS>K;ZrfvuYnZWLhy-%MxOaNl##EXwpHdk2dNHil89HXUA3&sFDDENQ&8O z-wu8W)5X2ggcpYo%4^p>E5kBuGxmQ^9S*d$3v-1>!rAh2cbBYF_5dJv7$~}8raW`r zdW2UO%B*S)jNYS_7^S6Rj!_HFmvB2aFWrmk@%$p&hJ>WTE*4*hc#zMa2!Zf29P;)i zK7oPxz-bh`1Q$Jj)cL9Tr1qu7s}rqU%9r?Vd$PLCrx~~pB8mG74xlkIu2%+}{N;Nq z{P(Gc=V{M;CK|y{#R73!T_=DPPM!qnzK!E23y>T>|0Z%TJ-D+W@c+fZ`|5z*C(i0MXh9C8<966PBa>-DD||*#Q@FmKSeF6ae$IHQnuI zpahUbja{8#GC_Ln2if#D>sJaOsKSZHhK#6$bGud!_X_gODR8OzlA&Hrlo05E9;Yzp z0&V{{R@65V$o^ySuPB;p(`fIzv)@1nb~;X{n~W5JCKe(!8~)WcGVrX$RS{WJnQ7!I zh_`8hTz=U>yjVz?(#x;5C)~~sfv#M(BWKe`(zAeYG`LE-W1?@iS0LnHd?qK zW&(cpk#l9YVJ_duQUKZ?OBR(Mb4u<-FZNA#a8~phF(df^n|#4}KsOk(L<;|&K|hpv zp6cZD=*zaWm&IAa0EANVh>r>FbDq5N`^LI=RV&4xa%t_+_MWez+H(OI1krA;)PCBhmgg%*H>M%l z$~G~Xn*UDeG@B=bSRu<#J0@G}%4+MCMm`u}8lIq86Key> zHBytbf2x9Lf9@J;6wJK8LHbjjJI17Mf&2a$b+h(;lR3)f>(w2CayOnS@t2)tv7QqNBb>?8j;-u#gRO*R(|o4|jY z<2j8ZUrWrZyau90{}0t9PLv-J5E0~eikH^BN?KmoqC&V!!iFtglCA$f)nOm>|G|M< zEaAv?L`M4^y>tnPNK`$Gyv2uGUEGO^SCO(-V;rNDj9qzBl7sfAzqR%Qx`j}Y`9_wx zE%ESig)HF9da933I zP-WHC&p8~Ux!oPwiFYX6AlR`~xTT^XO4)pd4#j^sFVQg|k=7=e;h>J8NQYBw|D$n~ zJ72Zl7Axg9L5leE^SxB`XERth6uB6?jm<;;P+`S$1?&uK=;l?DM;s5o#*j7!XD5uK z<4yH37xkurBUnQaMZFkTTurAV-5CJ6i>Ns4cU4(Bk1Pjn(zw_((pXMTS!=F40Y6$9 z0eTMymT=_zO2{DHD(IZP_a<$&vS8rD13oiDG@6F91a)EL&e->xZ{&D?D|aCz>!!Cb z^T6MrLAGVf1r}%pFLju+@C)=Eb&{mL*AdjitHTa#T^pU{>1FwrJC8HpJkUD ziZgR&2gosTw`_qG}`4*k7D9D@pR{LL#$fV9~j6J!kX?%0mxuY&(< zwTJzdHR`3G5a&J*-y(mZhCd?IG`8bT+mSskJ=n*c&{H3Dh-s0THIB0A3|1wh4NhEY zm>JdWye_*Glv_NdM~qTxv0Huv--n*5acsc(9?khKhZ;_42pJY4N0t%KS&S_hHfM7< z4;}(p>=wJU!0sqyrO5;6aew1tS9P{0E(EJ4=+=tGJ~TmA7KnU_p2PQ_X8|e-xAdkf z7yUf1>|5Mmt4MrH)6Hq=L3vG0z_KB0?hv_Y8l?<}V=#eP#-86l+zWo!IZqmQn)ArpE zpxb@pC+o)LMD9SVryE%t7dIZbHfwVjp2b$Uo$4a(nAu{Vh0DzLG0&xKmpLAXxfI3C z$m`DvF=12N=JaOl*Et3qc&j%fWkrWbMxo1mPvU1qRsb<+f!eI=L+^a^>`pLI;aWwD zy6IlenzTP2*~D;wOO-O)7=GxLDS~pOU_$(dOD0wX;N^m?OgfrPhbByZyRb7glhOPA z6Yux3o9{zFR)@28HD)Z~B((p*D2@i)?Cjam6>0aAL2Ky-d0j9zmoif++U*kzN%GxI z-1}g#Zg!B}1)ptj1FHAJcys2q9d`ALb7uL$dAF?QR?Q)Hf1L+)KwfANh=#G*{ zfoVfA9lzh@7%!K+#dnxCRe?<8%ibTw3zzNaDaj&|;SL(W-Wt+)s@w#K^BkR*3mZLV z{+ws1_0nM40C{c%*X0;fwTv&HxT)w~XIHEV7<{g5wOrc@={+s9A|cOwE)JkFnZo>s z@G!80c3J`s_dlodp+cn0;yG;gx37|?Q<)APM`OkjRqp7Sp-j7xR`_Y;8cY)!mySJ2 zdXx1Lf~`C*sEfT@R2iF6aIn|wK@P6OMEGQDqts2u9qUnAfDtg+Yw?~6In|(0pT$#m zW}g`F(c<%n2=PQkAjPNEZT4t`WTqynhUm6p0-CIaGCX3@4jLs+qSAdaaAgTr=1s%b z6f`r6#WF`Fg}FDYj%fPx<%x7LwOV0@s@MId?FuO&eAUL_IQ&f1$6KB4!G-Idwmyp; zzoF2oRMXZWWjhbyP-KVi+5$q;Cy}HUg*!~YJa-$|*4H9u$nE=Q?<_|lKP3FI6AUCk z$tiH7hLnn_#edmjiH?IPvz3$rx5oKky5v7IWhK-%8A^+}Lv|ws_rV;M*+)n1Ar8Kn~N)19pSwPSH%r`Og5YuueGLno-7um@(m2FSX zmOvf>Ev{3-7H*6?&F7)O!c+9Wg3NXg1b}3LJ~1%kY*1~|;FB{R`5YJYSj06FM+8Tn z$pdq<%zpQZoJ)!vNqX18(fqXoCZ*M7H)9`<2@lWXoHonTuL1V!+!7udekO)kFT2%GNOF<1~<|X(_d$V1fSx&E3fHPQXUK&!9H3YDZed%>>~0DT8@rbhu$cFS->(IS7*Vecg z_b6uDOej?xnva11HOrvv29}N^>QdYNdaF*tIBo0i^|VZy7{NZz<$*t9AaNMsgV%TZ zH?v==fuX;}prmkYL20IHrvMtqLX3IKo!Px2*Agn4uNBayzQYsVPAPe}TytaRDUnRx!{m7a2^4aRaZKzzKt8vZc>==kNAfb#?B{*L^(EO7aqZ1*<({Xh!tXVftp`cTxB+#F)-7*Z~gP`UVbfCkQf(EK|2ho zc&P@mi5<{9aYh=|hSobu~w0uxU6S3vRTHCZuFH{^PEv0qF8CltI7?o z>nqI16>@q?b16d>1?i2Yz5e%@Q4ua*wbM(r+10dfF91$6GAuBDp)hWJkjHsL<&{Y1 zGbu!8j=mzcw^p=Kb$f{-yfi=VCVwAN{n&_TBl<^`+F6)UAJm#T)bi{`dCwn9I*q+? z_W$S|Y~9-wQoA?Ywr9(00RuaxPo@f90F^j1S0qM)S7(;v_G;;wX>p(m7cWT9o}@$q z5=4+MNPyI13C%qtD-&ao_~kAoU}if+S-^OR2)mi+NQib#@)ZgSInc36vpa|S}6Yn)= zxfn-WDXdDes+0`;sbyo)$R9`_XK{gA5r>@Zj4pA84L&I%f4`~g7xTbJTKQ(o&FJQG zEW^RFJJ^9O?6+$e$s}Rh>jc_OFX8r+0M0CURMf(yz-RNR3z`d>C^WQq{rf@Wv(%1f z$M^2qbX744)Rmkq0koSWT2yXSeUgPR8~YcQAB8Ez>%yBszkqY1T;jLIikjxaF5}OA z)W5fB#W((i5?4b`76fM-7-(*iAQi+VDFzN?E(U9*F!W&Hh%1CZFRW6qc!B=CP+U{~ zHB>vokVajzjr_V45~$dFA$W=zO58dVPs=(Lve1sQ@3{9Bh;m5An%4Z%4zv;ggP{vC z5Of`tM1D2rk#XbFpzWa=gxk=7JM>%@nNZP+t8g|s-^*d`87g~OLeklotrSE=CU}%X zJ_H-p!`1~@qLsj4TA>VIn3lu4&wu?mwoIVq%#8g(c8%J83!wRO*qoOJVdI$VYfUn zjO2!nG4vv@E4WZ1=IAkpqYF^mxcO{4%`!@w>GEoH6m#6lW*MicI*Ez2Bu`$P^r0B@<^n;ec-|ImsjfJo#AWg`ud~l z%=h>`kW#=$gqOn}fL$3}?YanO-tBIa7kZCGJFe#k7DB{k!@_DnHnuT&JUXmw5!iV2 zLTl@%8AW0E1i5zmG+sNiL(vP#hP5#0C`f`v{XtMa-D$T$YZI~&!8I|X$vu;1FcJmk zcX-?_MQaPwHS2U9gDf)JRH=EEUZw|nFNO(C!r8SZb^C%XCRZNDdIX7xVB@=#z^9+9X&3vkoiTcIbM7_tR!q|vA#`@3O#NFNBR0_| z*xDL@z5;wPb3X&D!a(+h{>Pe-0dVaY;1I)6EJX^Q{`{kaoSz#K%7Oe2*0N2IM(aVC zvpf91?P2p#DA4}IPZlOKu|Ow#@72ndy^QvUf-#$62vv9*I#_b9hn=qDn0)f?3`Dc) zr3|xZrHWZ2FHxEqbKk6Vq2F6{J30!%I}7(N*uJ6~WO}Gg@@xVLy)2Vx<~=V5(OQ+U zsLhVbRdMDb!Pv%J?M7$s_6qO5!B!?aF>KO*;?(vObA` z!-66zE71QgXS;|U_2H(Q4ha2ymN;WeQVgAvBR83W&+T$3*9A2wCj+negK+@zcvTFi z59fuEm1qU58?KUo3B!0kVyY5d9H*Dbj$!uChw)g|L7S$2+?rx%VgEl{JNEZOcnX zKnc+UI=w@ArnVyNt1?Bg$k0bPh25TGuST~1Ir^zL+Mjx3V@75(ka2ZaZ&`PdP2FWZ z!i7WK`rNho)w{JX0Fx`RjprX>cdxH~)eSkSt#xV$2gjk=Y< zf7o67+7<^!>08y^9|_q@ycjSnmIVhf!YBk8QRskK1+~0n6wOBj8YhUQHH8G{ps$NM znQp{1DD9ek#BFgo=qlLMtIILnRcA7Ro!T;bRMWy4AIlqc$e<8vhugXKjY}Q64tQdB zaoIWF60nf>ZT(@1zypf9AoH|0|5LLz`pT-paI4sCY0cAHcMdY@X<;S7lG=@XSUV)i zr@la`u38OksaK|Ys^s~bYb=#FYS=cOnr^<8lA|8O@mSjur8GgQ+L2pfNq*hDMRax6 z+`B1vuLIb#AAcxd;Q*A5Bg(KRN!L0GqZJ2VX_SXycVB9G#@MbIfNgG>ZyXhWHKm zHl2EQ>Zld^E|{NkKSP?-Oxw8^@8Z)sk_-$YBZIUlm^{uc6MmcS;=Q7{3^wPR5MO4< zd+dvft%GVXgMjN$sKax#Mcl3(S)aUTuBV6Xnk+!snV3u~($DPu^=6%KF-vfLw3wPV z5QV1rwE+`fyp2nIOAo|)l3#{fo#g(2ng81pRhSz~v#oAH8UxbQOB5txQ}<}KT>xo@ zxqnLY5iK^T!{~)9)Ju<-NFbZXTi@h7xO{0LAycpa%Ti#rBEyYQ7~x~N6<|s0Pz!IY zU1xQ6qdrzD`YhiP0h*N{X7bU{{;fA(Nl9oS*kuDN9VgdtFbkx4ib{Qmq>%;16#NYX z38n~s#wJ!hJLutnK@P$MNn`#!IurO62IZ(%g3?9~9#NoWJ2`7DDkF)lDPEImoBs=| zN$!Ek%RO^Q8>JH!eMDL4SPL_d$E_&IWoi5VMWxKvaxZLriD*$K3{4GPZRKk-O{+%> zAduFDmDV5}^UbpislS95&5?8vI@m>i+)s0mZZm(%+}awXUmeVOnam%c5vNU%*9}{n zVr3XN+JJOxo#81YT`F2lgC~!!02rPU*Tl;1tD8JGpBDQk@dOOy{A=f;qgqCKo&%(ppD z`4i#FhWiKq!Hczs+P~Zq4oo!)SQ>`ToIkyWGu39^T9%R@9lc?!;n%)}&1P+rkrhV9 zK5w32kdgT({RChvp8ChxV0vuZtoPBSrvikZE+%G+Cu1RnIQvjqlBM3ha! zLL*d{R5nFGAe2J{|6O=E+aqW_k&73V=6f3NU+Kgy1%Vf1dYUj!MG_b9XuV!oIn)kAro$3 z?5zZ>Uy~qq?=$_wsIV8V;8!)XXe%hc%;lbVtU9T=6 zVha}V?0Og;OvxMY)NDZJ4XB@AdtcI3+taQavVUtl+$4NM$ay{lI-mBI`phV(798y( zi;0lRw0ip{qrE!D@@s!bqe+}nE8bF5)|!007-euSI5$98aybJX!?&ELm&fwSgfxlb zD6W7*RS@260R+k9G)CUUG6T`r?QpjU>Ml0fV~jxQZCK}0a$fVHRUo>zgd;``4J9?W zo^J=9&89V@LTnd^Gn$IPVyZ@xsslr;`V8|a8ZYCm%sMVM02(jQ++u(dnsGT0i?I^6 zZyDs&%+Kz2uvEe6C>5VMW!cR3V7Lk4(a+fsl8dtBg9M+m9g=>$5cAc{@Io>S_Fm@F zF4MYx3q4}}yDauzkq6a8eUXF(hJMlF4V@8YalfBiB$&X~222y=>*EK12cn%VnKf$m z)C#|o2`#&e;#sH8hlM!C1I2$5CVxpmIL&alK<+dxUNjjwnbslkN_oO3oIp?j>BjYZ z${&CN9t=3`J$L{D6_M@*b+2O+s_Kdi+Q5wfE1(psLu@QVcPS++X|Z;uz5USVGD>T9 zuzMKN*`cI_R@+k2z3{~o$FYJ>j5isotK;>pVp9W$rF#)Os$ h0!Ldl$3(yznRgP@3_;-x69PdoOZy1@D7f(}0059KK-K^N literal 0 HcmV?d00001 diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h3.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h3.webp new file mode 100644 index 0000000000000000000000000000000000000000..15b3b03810f309bd6b058655a04c94b74b29dadc GIT binary patch literal 30410 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 F000woAD{pL literal 0 HcmV?d00001 diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h4.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h4.webp new file mode 100644 index 0000000000000000000000000000000000000000..63e2676b126ac1fa6a0b5efa37fb7b21307436e2 GIT binary patch literal 98792 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

JdgT?88iLwb^WQ7fT-5 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%0D|T^-4EyEj)RRB_RMA+bw6fj0tJuob3$Xl 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

<^8&*^H%Xb~Feek7>BNj1$eA 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 z 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

Db5vn_<_{}v}=K|wks+8 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 + +### Week 5 - 30 March: decided the project theme and searched for informations. + + + +### Week 6 - 6 April: bought all the components and soldered the raspberry pi and started creating the prototype. + + +### Week 7 - 13 April: started on the documentation. + + +### Week 8 - 20 April: started on the hardware and software milestones of the project. + + +### Week 9 - 27 April: edited the documentation to submit the first milestone. + +### Week 10 - 4 May: I submitted the documentation and made the necessary changes. + +### Week 11 - 11 May: + +### Week 12 - 18 May: + + +## Hardware + +Raspberry Pi Pico: Acts as the main controller, processing input from sensors and triggering outputs (buzzers, LEDs). + +Proximity Sensors (2x): Detect the distance to nearby objects and send that data to the Raspberry Pi. + +RGB LEDs (2x): Provide visual feedback—colors change (e.g., green to red) based on how close an object is. + +Buzzers (2x): Emit sound alerts that increase in frequency as the object gets closer, enhancing the warning system. + +![Hardware](h1.webp) +![Hardware](h2.webp) +![Hardware](h3.webp) +![Hardware](h4.webp) + + + +## Schematics + + +Schematic of the project on KiCad Application. + +![Schematic of the project with using KiCad](sch.svg) + + + + +## Bill of Materials + + + + + +| Device | Usage | Price | +|--------|-------|-------| +| [Raspberry Pi Pico W](https://www.raspberrypi.com/documentation/microcontrollers/raspberry-pi-pico.html) | The microcontroller | [56.23 RON](https://ardushop.ro/en/home/2819-raspberry-pi-pico-wh.html) | +| [LCD 1602](https://www.optimusdigital.ro/ro/optoelectronice-lcd-uri/62-lcd-1602-cu-interfata-i2c-si-backlight-galben-verde.html?search_query=lcd&results=211) | LCD screen to display distance information | 14.99 RON | +| [LED RGB](https://www.optimusdigital.ro/ro/optoelectronice-led-uri/484-led-rgb-anod-comun.html?search_query=drgb&results=126&HTTP_REFERER=https%3A%2F%2Fwww.optimusdigital.ro%2Fro%2Fcarte%3Fcontroller%3Dsearch%26orderby%3Dposition%26orderway%3Ddesc%26search_query%3Drgb%26submit_search%3D) | For visual indication of distance | 0.99 RON | +| [Digital Infrared Obstacle Sensor Module](https://www.optimusdigital.ro/ro/senzori-senzori-optici/4347-modul-senzor-de-obstacole-digital-cu-infrarosu-reglabil-3-100-cm.html?search_query=senzor+infrarosu&results=121&HTTP_REFERER=https%3A%2F%2Fwww.optimusdigital.ro%2Fro%2Fcarte%3Fcontroller%3Dsearch%26orderby%3Dposition%26orderway%3Ddesc%26search_query%3Dsenzor%2Binfrarosu%26submit_search%3D) | Distance measurement | 19.99 RON | +| [Buzzer](https://www.optimusdigital.ro/ro/audio-buzzere/12247-buzzer-pasiv-de-33v-sau-3v.html?search_query=buzzer&results=62) | For auditory alerts | 1.95 RON | +| [Breadboard kit](https://www.optimusdigital.ro/ro/kituri/2222-kit-breadboard-hq-830-p.html?search_query=breadboard&results=145) | To connect the hardware | 22 RON | + + + +## Software + +| Library | Description | Usage | +|---------|-------------|-------| +| [PWM](https://docs.embassy.dev/embassy-nrf/git/nrf52840/pwm/index.html) | Pulse-Width Modulation | Used for Buzzer | +| [GPIO](https://docs.embassy.dev/embassy-stm32/git/stm32c011d6/gpio/index.html) | GPIO | Used for interacting with GPIO Pins | +| [embassy-usb-logger](https://docs.embassy.dev/embassy-usb-logger/git/default/index.html) | USB Logger for embassy | Used for logging messages over USB | + + + +## Links + +1. [Pinouts for RP](https://pinout.xyz/pinout/1_wire) +2. [Rust for Embedded Systems](https://docs.rs) +3. [Embassy Documents](https://embassy.dev/book/dev/index.html) +4. [Rust For Embedded Wyliodrin](https://embedded-rust-101.wyliodrin.com) + +... diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/sch.svg b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/sch.svg new file mode 100644 index 00000000000..9aefd123271 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/sch.svg @@ -0,0 +1 @@ + \ No newline at end of file From 5976290e1f11c5974eb3029671135f77ff5cef14 Mon Sep 17 00:00:00 2001 From: FilipDenisa <163408675+FilipDenisa@users.noreply.github.com> Date: Sun, 26 Apr 2026 13:34:47 +0300 Subject: [PATCH 2/7] Update website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md Co-authored-by: Roy <152509155+frihetselsker@users.noreply.github.com> --- .../project/2026/denisa.filip/index.md | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md index e91eb12df6e..4db40148733 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md @@ -41,26 +41,31 @@ It’s built around the Raspberry Pi Pico and programmed in Rust, which not only -### Week 5 - 30 March: decided the project theme and searched for informations. +### Week 5 - 30 March +Decided the project theme and searched for informations. +### Week 6 - 6 April +Bought all the components and soldered the raspberry pi and started creating the prototype. -### Week 6 - 6 April: bought all the components and soldered the raspberry pi and started creating the prototype. +### Week 7 - 13 April +Started on the documentation. -### Week 7 - 13 April: started on the documentation. +### Week 8 - 20 April +Started on the hardware and software milestones of the project. -### Week 8 - 20 April: started on the hardware and software milestones of the project. +### Week 9 - 27 April +Edited the documentation to submit the first milestone. -### Week 9 - 27 April: edited the documentation to submit the first milestone. +### Week 10 - 4 May +Submitted the documentation and made the necessary changes. -### Week 10 - 4 May: I submitted the documentation and made the necessary changes. +### Week 11 - 11 May -### Week 11 - 11 May: - -### Week 12 - 18 May: +### Week 12 - 18 May ## Hardware From bd1d4972896725f55006b3f97534cf9858a80253 Mon Sep 17 00:00:00 2001 From: Denisa Filip Date: Sat, 23 May 2026 19:48:16 +0300 Subject: [PATCH 3/7] Software Milestone --- .../2026/denisa.filip/.cargo/config.toml | 12 ++ .../project/2026/denisa.filip/Cargo.toml | 54 +++++++ .../project/2026/denisa.filip/README.md | 98 ++++++++++++ .../project/2026/denisa.filip/build.rs | 5 + .../project/2026/denisa.filip/memory.x | 18 +++ .../project/2026/denisa.filip/src/buzzer.rs | 61 ++++++++ .../project/2026/denisa.filip/src/distance.rs | 50 ++++++ .../project/2026/denisa.filip/src/lcd.rs | 108 +++++++++++++ .../project/2026/denisa.filip/src/led.rs | 61 ++++++++ .../project/2026/denisa.filip/src/main.rs | 145 ++++++++++++++++++ .../project/2026/denisa.filip/src/pins.rs | 61 ++++++++ 11 files changed, 673 insertions(+) create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/README.md create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs create mode 100644 website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml new file mode 100644 index 00000000000..dabee5eebca --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml @@ -0,0 +1,12 @@ +[target.thumbv6m-none-eabi] +runner = "probe-rs run --chip RP2040 --protocol swd" +rustflags = [ + "-C", "link-arg=--nmagic", + "-C", "link-arg=-Tlink.x", + "-C", "link-arg=-Tdefmt.x", + "-C", "inline-threshold=5", + "-C", "no-vectorize-loops", +] + +[build] +target = "thumbv6m-none-eabi" diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml new file mode 100644 index 00000000000..7138700148a --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml @@ -0,0 +1,54 @@ +[package] +name = "parking_sensor" +version = "0.1.0" +edition = "2021" +license = "MIT OR Apache-2.0" + +[[bin]] +name = "parking_sensor" +path = "src/main.rs" + +[dependencies] +embassy-executor = { version = "0.7", features = ["task-arena-size-32768", "arch-cortex-m", "executor-thread", "defmt", "integrated-timers"] } +embassy-rp = { version = "0.3", features = ["defmt", "unstable-pac", "time-driver", "critical-section-impl"] } +embassy-time = { version = "0.4", features = ["defmt", "defmt-timestamp-uptime"] } +embassy-sync = { version = "0.6", features = ["defmt"] } +embassy-futures = { version = "0.1" } + +# I2C async +embedded-hal-async = "1" +embedded-hal = "1" + +# LCD 1602 over I2C (PCF8574 backpack) +ag-lcd = { version = "0.2", default-features = false } +port-expander = "0.7" + +defmt = "0.3" +defmt-rtt = "0.4" +panic-probe = { version = "0.3", features = ["print-defmt"] } + +cortex-m = { version = "0.7", features = ["inline-asm"] } +cortex-m-rt = "0.7" +static_cell = "2" +fixed = "1" +fixed-macro = "1" + +[profile.dev] +debug = 2 +debug-assertions = true +opt-level = 1 +overflow-checks = true + +[profile.release] +debug = 2 +debug-assertions = false +opt-level = "s" +overflow-checks = false +lto = "fat" +codegen-units = 1 + +# cargo build/run +[target.'cfg(all(target_arch = "arm", target_os = "none"))'] +runner = "probe-rs run --chip RP2040 --protocol swd" + +[build-dependencies] diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/README.md b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/README.md new file mode 100644 index 00000000000..af43fb81717 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/README.md @@ -0,0 +1,98 @@ +# Parking Sensor – Raspberry Pi Pico W (Rust / Embassy) + +Smart parking sensor system using digital IR obstacle modules, RGB LEDs, passive buzzers and an LCD 1602 display. + +## Wiring (from schematic) + +| Signal | Pico GPIO | Physical Pin | +|---------------|-----------|--------------| +| I²C0 SDA | GPIO 4 | 6 | +| I²C0 SCL | GPIO 5 | 7 | +| I²C1 SDA | GPIO 8 | 11 | +| I²C1 SCL | GPIO 9 | 12 | +| LED1 Red | GPIO 10 | 14 | +| LED1 Green | GPIO 11 | 15 | +| LED1 Blue | GPIO 12 | 16 | +| LED2 Red | GPIO 13 | 17 | +| LED2 Green | GPIO 14 | 19 | +| LED2 Blue | GPIO 15 | 20 | +| Buzzer 1 | GPIO 16 | 21 | +| Buzzer 2 | GPIO 17 | 22 | +| IR Sensor 1 | GPIO 20 | 26 | +| IR Sensor 2 | GPIO 21 | 27 | + +> **RGB LEDs** are common-anode: connect the common pin to 3.3 V and drive each colour channel LOW to light it. +> **IR sensors** output LOW when an obstacle is detected. + +## Prerequisites + +```bash +# Install Rust target for Cortex-M0+ (RP2040) +rustup target add thumbv6m-none-eabi + +# Install the probe-rs flash/debug tool +cargo install probe-rs-tools --locked + +# (Linux) Add yourself to the plugdev group so probe-rs can access the probe +sudo usermod -aG plugdev $USER +``` + +## Build + +```bash +cargo build --release +``` + +## Flash + +Connect a **Raspberry Pi Debug Probe** (or a second Pico flashed as picoprobe) to the SWD pins, then: + +```bash +cargo run --release +``` + +Or flash the UF2 directly: + +```bash +# Convert ELF → UF2 +cargo install elf2uf2-rs --locked +elf2uf2-rs target/thumbv6m-none-eabi/release/parking_sensor parking_sensor.uf2 + +# Hold BOOTSEL while plugging in the Pico, then copy the UF2 +cp parking_sensor.uf2 /media/$USER/RPI-RP2/ +``` + +## Debug output + +Real-time `defmt` logs are streamed over RTT. With probe-rs connected: + +```bash +probe-rs run --chip RP2040 target/thumbv6m-none-eabi/release/parking_sensor +``` + +## Logic overview + +| Sensors triggered | Zone | LEDs | Buzzer | LCD | +|-------------------|---------|--------|--------------|----------------------| +| neither | CLEAR | Green | Silent | `CLEAR >100cm` | +| one | WARNING | Yellow | Slow beep | `WARNING ~50cm` | +| both | DANGER | Red | Rapid beep | `DANGER! <20cm` | + +## Project structure + +``` +parking_sensor/ +├── .cargo/ +│ └── config.toml # build target + linker flags +├── src/ +│ ├── main.rs # Embassy entry point, hardware init, main loop +│ ├── pins.rs # GPIO / I²C address constants +│ ├── distance.rs # Zone enum + sensor logic +│ ├── led.rs # RgbLed helper +│ ├── buzzer.rs # PWM buzzer helpers +│ └── lcd.rs # LCD 1602 I²C driver (4-bit mode via PCF8574) +├── build.rs # Linker script notification +├── memory.x # RP2040 flash / RAM layout +├── Cargo.toml +└── README.md +``` diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs new file mode 100644 index 00000000000..e2d97258e0b --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs @@ -0,0 +1,5 @@ +fn main() { + // Tell Cargo to re-run this build script if the linker script changes. + println!("cargo:rerun-if-changed=memory.x"); + println!("cargo:rerun-if-changed=build.rs"); +} diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x new file mode 100644 index 00000000000..e9346923424 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x @@ -0,0 +1,18 @@ +/* Raspberry Pi Pico / RP2040 memory layout */ +MEMORY { + /* NOTE: RP2040 boots from external QSPI flash. + The first 256 bytes are reserved for the second-stage bootloader. */ + BOOT2 : ORIGIN = 0x10000000, LENGTH = 0x100 + FLASH : ORIGIN = 0x10000100, LENGTH = 2048K - 0x100 + RAM : ORIGIN = 0x20000000, LENGTH = 256K +} + +EXTERN(BOOT2_FIRMWARE) + +SECTIONS { + /* Second-stage bootloader – must be the very first section in flash. */ + .boot2 ORIGIN(BOOT2) : + { + KEEP(*(.boot2)); + } > BOOT2 +} INSERT BEFORE .text; diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs new file mode 100644 index 00000000000..a4f4b3c130a --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs @@ -0,0 +1,61 @@ +use embassy_rp::pwm::{Config as PwmConfig, Pwm}; +use embassy_time::{Duration, Timer}; +use crate::distance::Zone; + +/// Frequency of the tone emitted by the passive buzzer (Hz). +const BEEP_FREQ_HZ: u32 = 2_700; + +/// System clock used for PWM calculations (125 MHz on RP2040). +const SYS_CLK_HZ: u32 = 125_000_000; + +/// Build a PWM config that produces the desired frequency at ~50 % duty cycle. +pub fn make_beep_config() -> PwmConfig { + let wrap = (SYS_CLK_HZ / BEEP_FREQ_HZ).saturating_sub(1) as u16; + let mut cfg = PwmConfig::default(); + cfg.top = wrap; + cfg.compare_a = wrap / 2; // 50 % duty + cfg +} + +/// Build a PWM config with zero duty (silent). +pub fn make_silent_config() -> PwmConfig { + let mut cfg = PwmConfig::default(); + cfg.top = 0xFFFF; + cfg.compare_a = 0; // 0 % duty → no sound + cfg +} + +/// Drive a single buzzer slice according to the given zone. +/// +/// * `Zone::Clear` → completely silent +/// * `Zone::Warning` → slow intermittent beep (handled by the caller loop) +/// * `Zone::Danger` → continuous tone +/// +/// The function returns immediately; timing is handled in the main task loop +/// so that both buzzers stay synchronised. +pub fn set_buzzer_zone(pwm: &mut Pwm<'_>, zone: Zone, beeping_on: bool) { + let cfg = match zone { + Zone::Clear => make_silent_config(), + Zone::Warning => { + if beeping_on { + make_beep_config() + } else { + make_silent_config() + } + } + Zone::Danger => make_beep_config(), + }; + pwm.set_config(&cfg); +} + +/// Await half a beep period; used by the main task to toggle the buzzer. +pub async fn half_period(zone: Zone) { + let period_ms = zone.beep_period_ms(); + if period_ms > 0 { + Timer::after(Duration::from_millis(period_ms / 2)).await; + } else { + // When silent or continuous, still yield briefly to avoid starving + // other tasks. + Timer::after(Duration::from_millis(50)).await; + } +} diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs new file mode 100644 index 00000000000..52291915ad4 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs @@ -0,0 +1,50 @@ +/// Distance zone reported by each infrared obstacle sensor. +/// +/// The digital infrared modules output a LOW signal when an obstacle +/// is detected within the adjustable range (3–100 cm). Because the +/// module only gives a binary "detected / not-detected" signal we map +/// three zones by reading *both* sensors: +/// +/// • CLEAR – neither sensor triggered +/// • WARNING – one sensor triggered (object in peripheral range) +/// • DANGER – both sensors triggered (object directly ahead) +/// +/// A more sophisticated analog-distance approach would require an +/// ultrasonic (HC-SR04) or ToF (TMF8820) sensor with distance output. +/// This design matches the Digital IR Obstacle modules in the BOM. +#[derive(Clone, Copy, PartialEq, Eq, defmt::Format)] +pub enum Zone { + Clear, + Warning, + Danger, +} + +impl Zone { + /// Derive zone from two boolean sensor readings. + /// `triggered` means the digital output pin went LOW (object present). + pub fn from_sensors(s1_triggered: bool, s2_triggered: bool) -> Self { + match (s1_triggered, s2_triggered) { + (false, false) => Zone::Clear, + (true, false) | (false, true) => Zone::Warning, + (true, true) => Zone::Danger, + } + } + + /// Human-readable distance label for the LCD. + pub fn label(self) -> &'static str { + match self { + Zone::Clear => "CLEAR >100cm ", + Zone::Warning => "WARNING ~50cm ", + Zone::Danger => "DANGER! <20cm ", + } + } + + /// Buzzer beep period in milliseconds (0 = continuous tone). + pub fn beep_period_ms(self) -> u64 { + match self { + Zone::Clear => 0, // silent + Zone::Warning => 600, // slow beep + Zone::Danger => 150, // rapid beep + } + } +} diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs new file mode 100644 index 00000000000..e02bc819c25 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs @@ -0,0 +1,108 @@ +/// LCD 1602 display driver (PCF8574 I²C backpack). +/// +/// We drive the display by bit-banging the PCF8574 I/O expander that is +/// soldered onto most 1602 I²C modules. The backpack maps: +/// +/// PCF8574 bit 7 (P7) → D7 +/// PCF8574 bit 6 (P6) → D6 +/// PCF8574 bit 5 (P5) → D5 +/// PCF8574 bit 4 (P4) → D4 +/// PCF8574 bit 3 (P3) → Backlight (active HIGH) +/// PCF8574 bit 2 (P2) → E (enable) +/// PCF8574 bit 1 (P1) → RW (write = 0) +/// PCF8574 bit 0 (P0) → RS (register select: 0 = cmd, 1 = data) +/// +/// We use 4-bit mode (only D4–D7), which means each byte is sent as two +/// nibbles with an enable pulse between them. + +use embassy_rp::i2c::I2c; +use embassy_time::{Duration, Timer}; +use embedded_hal_async::i2c::I2c as AsyncI2c; + +const BACKLIGHT: u8 = 0b0000_1000; +const ENABLE: u8 = 0b0000_0100; +const RS_DATA: u8 = 0b0000_0001; +// RW always 0 (write) + +/// Blocking-style LCD wrapper that hides all the nibble shuffling. +pub struct Lcd1602 { + i2c: I2C, + addr: u8, +} + +impl Lcd1602 +where + I2C: AsyncI2c, + E: core::fmt::Debug, +{ + /// Initialise the LCD in 4-bit mode. + pub async fn new(i2c: I2C, addr: u8) -> Self { + let mut lcd = Self { i2c, addr }; + // Wait for power-on + Timer::after(Duration::from_millis(50)).await; + + // Special init sequence to switch into 4-bit mode + lcd.write_nibble(0x03, false).await; + Timer::after(Duration::from_millis(5)).await; + lcd.write_nibble(0x03, false).await; + Timer::after(Duration::from_millis(1)).await; + lcd.write_nibble(0x03, false).await; + Timer::after(Duration::from_micros(150)).await; + lcd.write_nibble(0x02, false).await; // switch to 4-bit + + // Function set: 4-bit, 2 lines, 5×8 font + lcd.send_cmd(0x28).await; + // Display on, cursor off, blink off + lcd.send_cmd(0x0C).await; + // Entry mode: increment, no shift + lcd.send_cmd(0x06).await; + // Clear display + lcd.clear().await; + lcd + } + + pub async fn clear(&mut self) { + self.send_cmd(0x01).await; + Timer::after(Duration::from_millis(2)).await; + } + + pub async fn set_cursor(&mut self, col: u8, row: u8) { + let row_offset = [0x00u8, 0x40]; + let addr = 0x80 | (col + row_offset[row as usize % 2]); + self.send_cmd(addr).await; + } + + pub async fn print(&mut self, s: &str) { + for byte in s.bytes() { + self.send_data(byte).await; + } + } + + // ── internals ──────────────────────────────────────────────────────────── + + async fn send_cmd(&mut self, cmd: u8) { + self.send_byte(cmd, false).await; + } + + async fn send_data(&mut self, data: u8) { + self.send_byte(data, true).await; + } + + async fn send_byte(&mut self, byte: u8, rs: bool) { + let hi = (byte >> 4) & 0x0F; + let lo = byte & 0x0F; + self.write_nibble(hi, rs).await; + self.write_nibble(lo, rs).await; + } + + async fn write_nibble(&mut self, nibble: u8, rs: bool) { + let rs_bit = if rs { RS_DATA } else { 0 }; + let data = (nibble << 4) | BACKLIGHT | rs_bit; + + // Pulse enable high then low + let _ = self.i2c.write(self.addr, &[data | ENABLE]).await; + Timer::after(Duration::from_micros(1)).await; + let _ = self.i2c.write(self.addr, &[data & !ENABLE]).await; + Timer::after(Duration::from_micros(50)).await; + } +} diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs new file mode 100644 index 00000000000..7f0df42dc13 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs @@ -0,0 +1,61 @@ +use embassy_rp::gpio::{Level, Output}; +use crate::distance::Zone; + +/// A single common-anode RGB LED driven by three GPIO outputs. +/// Common-anode means the LED is ON when the pin is LOW (active-low). +pub struct RgbLed<'d> { + r: Output<'d>, + g: Output<'d>, + b: Output<'d>, +} + +impl<'d> RgbLed<'d> { + pub fn new(r: Output<'d>, g: Output<'d>, b: Output<'d>) -> Self { + let mut led = Self { r, g, b }; + led.off(); + led + } + + /// Turn all channels off (all pins HIGH for common-anode). + pub fn off(&mut self) { + self.r.set_high(); + self.g.set_high(); + self.b.set_high(); + } + + /// Set LED to green (safe distance). + pub fn green(&mut self) { + self.r.set_high(); + self.g.set_low(); + self.b.set_high(); + } + + /// Set LED to yellow (warning – red + green). + pub fn yellow(&mut self) { + self.r.set_low(); + self.g.set_low(); + self.b.set_high(); + } + + /// Set LED to red (danger). + pub fn red(&mut self) { + self.r.set_low(); + self.g.set_high(); + self.b.set_high(); + } + + /// Update LED colour to reflect the current distance zone. + pub fn set_zone(&mut self, zone: Zone) { + match zone { + Zone::Clear => self.green(), + Zone::Warning => self.yellow(), + Zone::Danger => self.red(), + } + } +} + +/// Helper: set both LEDs to the same zone colour. +pub fn set_both_leds(led1: &mut RgbLed<'_>, led2: &mut RgbLed<'_>, zone: Zone) { + led1.set_zone(zone); + led2.set_zone(zone); +} diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs new file mode 100644 index 00000000000..05415078d9e --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs @@ -0,0 +1,145 @@ +//! Parking Sensor – Raspberry Pi Pico W (RP2040) +//! ───────────────────────────────────────────── +//! Two digital infrared obstacle sensors detect objects and trigger: +//! • RGB LEDs (green → yellow → red) via GPIO +//! • Passive buzzers (slow/fast beep) via PWM +//! • LCD 1602 status display over I²C +//! +//! Written with Embassy async runtime and the embassy-rp HAL. + +#![no_std] +#![no_main] + +use defmt::*; +use defmt_rtt as _; +use panic_probe as _; + +use embassy_executor::Spawner; +use embassy_rp::{ + bind_interrupts, + gpio::{Input, Level, Output, Pull}, + i2c::{Config as I2cConfig, I2c, InterruptHandler}, + peripherals::{I2C0, I2C1}, + pwm::{Config as PwmConfig, Pwm}, +}; +use embassy_time::{Duration, Timer}; + +mod buzzer; +mod distance; +mod lcd; +mod led; +mod pins; + +use distance::Zone; +use led::{set_both_leds, RgbLed}; +use lcd::Lcd1602; + +// ── Interrupt bindings ──────────────────────────────────────────────────────── + +bind_interrupts!(struct Irqs { + I2C0_IRQ => InterruptHandler; + I2C1_IRQ => InterruptHandler; +}); + +// ── Entry point ─────────────────────────────────────────────────────────────── + +#[embassy_executor::main] +async fn main(_spawner: Spawner) { + info!("Parking Sensor starting…"); + + let p = embassy_rp::init(Default::default()); + + // ── I²C 0 (Sensor 1 + LCD 1602) ───────────────────────────────────────── + let i2c0 = I2c::new_async( + p.I2C0, + p.PIN_5, // SCL – GPIO 5 + p.PIN_4, // SDA – GPIO 4 + Irqs, + { + let mut cfg = I2cConfig::default(); + cfg.frequency = 100_000; + cfg + }, + ); + + // ── I²C 1 (Sensor 2) ──────────────────────────────────────────────────── + let _i2c1 = I2c::new_async( + p.I2C1, + p.PIN_9, // SCL – GPIO 9 + p.PIN_8, // SDA – GPIO 8 + Irqs, + { + let mut cfg = I2cConfig::default(); + cfg.frequency = 100_000; + cfg + }, + ); + // NOTE: _i2c1 is reserved for a second TMF8820 ToF sensor if fitted. + // For the digital IR modules (BOM) we only need the GPIO outputs. + + // ── LCD 1602 ───────────────────────────────────────────────────────────── + let mut lcd = Lcd1602::new(i2c0, pins::LCD_I2C_ADDR).await; + lcd.set_cursor(0, 0).await; + lcd.print("Parking Sensor ").await; + lcd.set_cursor(0, 1).await; + lcd.print("Initialising... ").await; + Timer::after(Duration::from_millis(1000)).await; + + // ── RGB LED 1 (GPIO 10 / 11 / 12) ─────────────────────────────────────── + let led1_r = Output::new(p.PIN_10, Level::High); // HIGH = off for common-anode + let led1_g = Output::new(p.PIN_11, Level::High); + let led1_b = Output::new(p.PIN_12, Level::High); + let mut led1 = RgbLed::new(led1_r, led1_g, led1_b); + + // ── RGB LED 2 (GPIO 13 / 14 / 15) ─────────────────────────────────────── + let led2_r = Output::new(p.PIN_13, Level::High); + let led2_g = Output::new(p.PIN_14, Level::High); + let led2_b = Output::new(p.PIN_15, Level::High); + let mut led2 = RgbLed::new(led2_r, led2_g, led2_b); + + // ── Buzzers (GPIO 16, 17 – PWM channel A of slices 0 and 1) ───────────── + let mut bz1 = Pwm::new_output_a(p.PWM_SLICE0, p.PIN_16, buzzer::make_silent_config()); + let mut bz2 = Pwm::new_output_a(p.PWM_SLICE1, p.PIN_17, buzzer::make_silent_config()); + + // ── Infrared sensors (digital OUTPUT, active-LOW, GPIO 20 / 21) ────────── + let sensor1 = Input::new(p.PIN_20, Pull::Up); + let sensor2 = Input::new(p.PIN_21, Pull::Up); + + info!("Hardware initialised."); + + // ── Main loop ───────────────────────────────────────────────────────────── + let mut beep_on = false; + let mut prev_zone = Zone::Clear; + + loop { + // Read sensors (LOW = obstacle detected) + let s1 = sensor1.is_low(); + let s2 = sensor2.is_low(); + let zone = Zone::from_sensors(s1, s2); + + if zone != prev_zone { + info!("Zone changed: {}", zone); + + // Update LEDs + set_both_leds(&mut led1, &mut led2, zone); + + // Update LCD + lcd.set_cursor(0, 0).await; + lcd.print("Distance Status ").await; + lcd.set_cursor(0, 1).await; + lcd.print(zone.label()).await; + + prev_zone = zone; + beep_on = false; // restart beep phase on zone change + } + + // Toggle beep state + beep_on = !beep_on; + + buzzer::set_buzzer_zone(&mut bz1, zone, beep_on); + buzzer::set_buzzer_zone(&mut bz2, zone, beep_on); + + // Wait for half a beep period before toggling again + buzzer::half_period(zone).await; + } +} diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs new file mode 100644 index 00000000000..212e62f6650 --- /dev/null +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs @@ -0,0 +1,61 @@ +/// ───────────────────────────────────────────────────────────────────────────── +/// Pin assignments – Raspberry Pi Pico W (RP2040) +/// Read from the KiCad schematic provided in the project. +/// +/// I²C bus 0 (Sensor 1 / LCD 1602) +/// SDA → GPIO 4 (physical pin 6) +/// SCL → GPIO 5 (physical pin 7) +/// +/// I²C bus 1 (Sensor 2) +/// SDA → GPIO 8 (physical pin 11) +/// SCL → GPIO 9 (physical pin 12) +/// +/// RGB LED 1 (common-anode, active-LOW) +/// R → GPIO 10 (physical pin 14) +/// G → GPIO 11 (physical pin 15) +/// B → GPIO 12 (physical pin 16) +/// +/// RGB LED 2 (common-anode, active-LOW) +/// R → GPIO 13 (physical pin 17) +/// G → GPIO 14 (physical pin 19) +/// B → GPIO 15 (physical pin 20) +/// +/// Buzzers (passive, driven via PWM) +/// BZ1 → GPIO 16 (physical pin 21) +/// BZ2 → GPIO 17 (physical pin 22) +/// +/// Digital Infrared obstacle sensors (digital OUT, active-LOW) +/// SENSOR_1_OUT → GPIO 20 (physical pin 26) +/// SENSOR_2_OUT → GPIO 21 (physical pin 27) +/// ───────────────────────────────────────────────────────────────────────────── + +// I²C 0 – sensor 1 + LCD +pub const I2C0_SDA: u8 = 4; +pub const I2C0_SCL: u8 = 5; + +// I²C 1 – sensor 2 +pub const I2C1_SDA: u8 = 8; +pub const I2C1_SCL: u8 = 9; + +// RGB LED 1 +pub const LED1_R: u8 = 10; +pub const LED1_G: u8 = 11; +pub const LED1_B: u8 = 12; + +// RGB LED 2 +pub const LED2_R: u8 = 13; +pub const LED2_G: u8 = 14; +pub const LED2_B: u8 = 15; + +// Buzzers +pub const BUZZER1: u8 = 16; +pub const BUZZER2: u8 = 17; + +// Infrared obstacle sensor digital outputs +pub const SENSOR1_OUT: u8 = 20; +pub const SENSOR2_OUT: u8 = 21; + +// I²C addresses +pub const LCD_I2C_ADDR: u8 = 0x27; // PCF8574-based 1602 backpack (common default) +pub const SENSOR1_I2C_ADDR: u8 = 0x29; // TMF8820 default address +pub const SENSOR2_I2C_ADDR: u8 = 0x29; // same chip, different bus From 46eabad3e37ab2b88d82f6973534a1a6ae4ed611 Mon Sep 17 00:00:00 2001 From: Denisa Filip Date: Sat, 23 May 2026 20:40:22 +0300 Subject: [PATCH 4/7] software milestone --- .../project/2026/denisa.filip/build.rs | 2 +- .../project/2026/denisa.filip/src/buzzer.rs | 21 +++------ .../project/2026/denisa.filip/src/distance.rs | 20 +-------- .../project/2026/denisa.filip/src/lcd.rs | 34 +++------------ .../project/2026/denisa.filip/src/led.rs | 9 ---- .../project/2026/denisa.filip/src/main.rs | 35 +++------------ .../project/2026/denisa.filip/src/pins.rs | 43 ++----------------- 7 files changed, 22 insertions(+), 142 deletions(-) diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs index e2d97258e0b..e9871a81a95 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs @@ -1,5 +1,5 @@ fn main() { - // Tell Cargo to re-run this build script if the linker script changes. + println!("cargo:rerun-if-changed=memory.x"); println!("cargo:rerun-if-changed=build.rs"); } diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs index a4f4b3c130a..cbf67b2537d 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs @@ -2,13 +2,13 @@ use embassy_rp::pwm::{Config as PwmConfig, Pwm}; use embassy_time::{Duration, Timer}; use crate::distance::Zone; -/// Frequency of the tone emitted by the passive buzzer (Hz). + const BEEP_FREQ_HZ: u32 = 2_700; -/// System clock used for PWM calculations (125 MHz on RP2040). + const SYS_CLK_HZ: u32 = 125_000_000; -/// Build a PWM config that produces the desired frequency at ~50 % duty cycle. + pub fn make_beep_config() -> PwmConfig { let wrap = (SYS_CLK_HZ / BEEP_FREQ_HZ).saturating_sub(1) as u16; let mut cfg = PwmConfig::default(); @@ -17,7 +17,7 @@ pub fn make_beep_config() -> PwmConfig { cfg } -/// Build a PWM config with zero duty (silent). + pub fn make_silent_config() -> PwmConfig { let mut cfg = PwmConfig::default(); cfg.top = 0xFFFF; @@ -25,14 +25,7 @@ pub fn make_silent_config() -> PwmConfig { cfg } -/// Drive a single buzzer slice according to the given zone. -/// -/// * `Zone::Clear` → completely silent -/// * `Zone::Warning` → slow intermittent beep (handled by the caller loop) -/// * `Zone::Danger` → continuous tone -/// -/// The function returns immediately; timing is handled in the main task loop -/// so that both buzzers stay synchronised. + pub fn set_buzzer_zone(pwm: &mut Pwm<'_>, zone: Zone, beeping_on: bool) { let cfg = match zone { Zone::Clear => make_silent_config(), @@ -48,14 +41,12 @@ pub fn set_buzzer_zone(pwm: &mut Pwm<'_>, zone: Zone, beeping_on: bool) { pwm.set_config(&cfg); } -/// Await half a beep period; used by the main task to toggle the buzzer. pub async fn half_period(zone: Zone) { let period_ms = zone.beep_period_ms(); if period_ms > 0 { Timer::after(Duration::from_millis(period_ms / 2)).await; } else { - // When silent or continuous, still yield briefly to avoid starving - // other tasks. + Timer::after(Duration::from_millis(50)).await; } } diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs index 52291915ad4..e3e7983c52d 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs @@ -1,17 +1,4 @@ -/// Distance zone reported by each infrared obstacle sensor. -/// -/// The digital infrared modules output a LOW signal when an obstacle -/// is detected within the adjustable range (3–100 cm). Because the -/// module only gives a binary "detected / not-detected" signal we map -/// three zones by reading *both* sensors: -/// -/// • CLEAR – neither sensor triggered -/// • WARNING – one sensor triggered (object in peripheral range) -/// • DANGER – both sensors triggered (object directly ahead) -/// -/// A more sophisticated analog-distance approach would require an -/// ultrasonic (HC-SR04) or ToF (TMF8820) sensor with distance output. -/// This design matches the Digital IR Obstacle modules in the BOM. + #[derive(Clone, Copy, PartialEq, Eq, defmt::Format)] pub enum Zone { Clear, @@ -20,8 +7,7 @@ pub enum Zone { } impl Zone { - /// Derive zone from two boolean sensor readings. - /// `triggered` means the digital output pin went LOW (object present). + pub fn from_sensors(s1_triggered: bool, s2_triggered: bool) -> Self { match (s1_triggered, s2_triggered) { (false, false) => Zone::Clear, @@ -30,7 +16,6 @@ impl Zone { } } - /// Human-readable distance label for the LCD. pub fn label(self) -> &'static str { match self { Zone::Clear => "CLEAR >100cm ", @@ -39,7 +24,6 @@ impl Zone { } } - /// Buzzer beep period in milliseconds (0 = continuous tone). pub fn beep_period_ms(self) -> u64 { match self { Zone::Clear => 0, // silent diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs index e02bc819c25..c035ff08447 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs @@ -1,19 +1,4 @@ -/// LCD 1602 display driver (PCF8574 I²C backpack). -/// -/// We drive the display by bit-banging the PCF8574 I/O expander that is -/// soldered onto most 1602 I²C modules. The backpack maps: -/// -/// PCF8574 bit 7 (P7) → D7 -/// PCF8574 bit 6 (P6) → D6 -/// PCF8574 bit 5 (P5) → D5 -/// PCF8574 bit 4 (P4) → D4 -/// PCF8574 bit 3 (P3) → Backlight (active HIGH) -/// PCF8574 bit 2 (P2) → E (enable) -/// PCF8574 bit 1 (P1) → RW (write = 0) -/// PCF8574 bit 0 (P0) → RS (register select: 0 = cmd, 1 = data) -/// -/// We use 4-bit mode (only D4–D7), which means each byte is sent as two -/// nibbles with an enable pulse between them. + use embassy_rp::i2c::I2c; use embassy_time::{Duration, Timer}; @@ -22,9 +7,7 @@ use embedded_hal_async::i2c::I2c as AsyncI2c; const BACKLIGHT: u8 = 0b0000_1000; const ENABLE: u8 = 0b0000_0100; const RS_DATA: u8 = 0b0000_0001; -// RW always 0 (write) -/// Blocking-style LCD wrapper that hides all the nibble shuffling. pub struct Lcd1602 { i2c: I2C, addr: u8, @@ -35,28 +18,21 @@ where I2C: AsyncI2c, E: core::fmt::Debug, { - /// Initialise the LCD in 4-bit mode. pub async fn new(i2c: I2C, addr: u8) -> Self { let mut lcd = Self { i2c, addr }; - // Wait for power-on + Timer::after(Duration::from_millis(50)).await; - // Special init sequence to switch into 4-bit mode lcd.write_nibble(0x03, false).await; Timer::after(Duration::from_millis(5)).await; lcd.write_nibble(0x03, false).await; Timer::after(Duration::from_millis(1)).await; lcd.write_nibble(0x03, false).await; Timer::after(Duration::from_micros(150)).await; - lcd.write_nibble(0x02, false).await; // switch to 4-bit - - // Function set: 4-bit, 2 lines, 5×8 font + lcd.write_nibble(0x02, false).await; lcd.send_cmd(0x28).await; - // Display on, cursor off, blink off lcd.send_cmd(0x0C).await; - // Entry mode: increment, no shift lcd.send_cmd(0x06).await; - // Clear display lcd.clear().await; lcd } @@ -78,7 +54,7 @@ where } } - // ── internals ──────────────────────────────────────────────────────────── + async fn send_cmd(&mut self, cmd: u8) { self.send_byte(cmd, false).await; @@ -99,7 +75,7 @@ where let rs_bit = if rs { RS_DATA } else { 0 }; let data = (nibble << 4) | BACKLIGHT | rs_bit; - // Pulse enable high then low + let _ = self.i2c.write(self.addr, &[data | ENABLE]).await; Timer::after(Duration::from_micros(1)).await; let _ = self.i2c.write(self.addr, &[data & !ENABLE]).await; diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs index 7f0df42dc13..1d609c5e53d 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs @@ -1,8 +1,6 @@ use embassy_rp::gpio::{Level, Output}; use crate::distance::Zone; -/// A single common-anode RGB LED driven by three GPIO outputs. -/// Common-anode means the LED is ON when the pin is LOW (active-low). pub struct RgbLed<'d> { r: Output<'d>, g: Output<'d>, @@ -15,36 +13,30 @@ impl<'d> RgbLed<'d> { led.off(); led } - - /// Turn all channels off (all pins HIGH for common-anode). pub fn off(&mut self) { self.r.set_high(); self.g.set_high(); self.b.set_high(); } - /// Set LED to green (safe distance). pub fn green(&mut self) { self.r.set_high(); self.g.set_low(); self.b.set_high(); } - /// Set LED to yellow (warning – red + green). pub fn yellow(&mut self) { self.r.set_low(); self.g.set_low(); self.b.set_high(); } - /// Set LED to red (danger). pub fn red(&mut self) { self.r.set_low(); self.g.set_high(); self.b.set_high(); } - /// Update LED colour to reflect the current distance zone. pub fn set_zone(&mut self, zone: Zone) { match zone { Zone::Clear => self.green(), @@ -54,7 +46,6 @@ impl<'d> RgbLed<'d> { } } -/// Helper: set both LEDs to the same zone colour. pub fn set_both_leds(led1: &mut RgbLed<'_>, led2: &mut RgbLed<'_>, zone: Zone) { led1.set_zone(zone); led2.set_zone(zone); diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs index 05415078d9e..3a97c8a3557 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs @@ -1,11 +1,3 @@ -//! Parking Sensor – Raspberry Pi Pico W (RP2040) -//! ───────────────────────────────────────────── -//! Two digital infrared obstacle sensors detect objects and trigger: -//! • RGB LEDs (green → yellow → red) via GPIO -//! • Passive buzzers (slow/fast beep) via PWM -//! • LCD 1602 status display over I²C -//! -//! Written with Embassy async runtime and the embassy-rp HAL. #![no_std] #![no_main] @@ -34,14 +26,13 @@ use distance::Zone; use led::{set_both_leds, RgbLed}; use lcd::Lcd1602; -// ── Interrupt bindings ──────────────────────────────────────────────────────── + bind_interrupts!(struct Irqs { I2C0_IRQ => InterruptHandler; I2C1_IRQ => InterruptHandler; }); -// ── Entry point ─────────────────────────────────────────────────────────────── #[embassy_executor::main] async fn main(_spawner: Spawner) { @@ -49,7 +40,6 @@ async fn main(_spawner: Spawner) { let p = embassy_rp::init(Default::default()); - // ── I²C 0 (Sensor 1 + LCD 1602) ───────────────────────────────────────── let i2c0 = I2c::new_async( p.I2C0, p.PIN_5, // SCL – GPIO 5 @@ -62,11 +52,10 @@ async fn main(_spawner: Spawner) { }, ); - // ── I²C 1 (Sensor 2) ──────────────────────────────────────────────────── let _i2c1 = I2c::new_async( p.I2C1, - p.PIN_9, // SCL – GPIO 9 - p.PIN_8, // SDA – GPIO 8 + p.PIN_9, + p.PIN_8, Irqs, { let mut cfg = I2cConfig::default(); @@ -74,10 +63,6 @@ async fn main(_spawner: Spawner) { cfg }, ); - // NOTE: _i2c1 is reserved for a second TMF8820 ToF sensor if fitted. - // For the digital IR modules (BOM) we only need the GPIO outputs. - - // ── LCD 1602 ───────────────────────────────────────────────────────────── let mut lcd = Lcd1602::new(i2c0, pins::LCD_I2C_ADDR).await; lcd.set_cursor(0, 0).await; lcd.print("Parking Sensor ").await; @@ -85,34 +70,28 @@ async fn main(_spawner: Spawner) { lcd.print("Initialising... ").await; Timer::after(Duration::from_millis(1000)).await; - // ── RGB LED 1 (GPIO 10 / 11 / 12) ─────────────────────────────────────── - let led1_r = Output::new(p.PIN_10, Level::High); // HIGH = off for common-anode + let led1_r = Output::new(p.PIN_10, Level::High); let led1_g = Output::new(p.PIN_11, Level::High); let led1_b = Output::new(p.PIN_12, Level::High); let mut led1 = RgbLed::new(led1_r, led1_g, led1_b); - // ── RGB LED 2 (GPIO 13 / 14 / 15) ─────────────────────────────────────── let led2_r = Output::new(p.PIN_13, Level::High); let led2_g = Output::new(p.PIN_14, Level::High); let led2_b = Output::new(p.PIN_15, Level::High); let mut led2 = RgbLed::new(led2_r, led2_g, led2_b); - // ── Buzzers (GPIO 16, 17 – PWM channel A of slices 0 and 1) ───────────── let mut bz1 = Pwm::new_output_a(p.PWM_SLICE0, p.PIN_16, buzzer::make_silent_config()); let mut bz2 = Pwm::new_output_a(p.PWM_SLICE1, p.PIN_17, buzzer::make_silent_config()); - // ── Infrared sensors (digital OUTPUT, active-LOW, GPIO 20 / 21) ────────── let sensor1 = Input::new(p.PIN_20, Pull::Up); let sensor2 = Input::new(p.PIN_21, Pull::Up); info!("Hardware initialised."); - // ── Main loop ───────────────────────────────────────────────────────────── let mut beep_on = false; let mut prev_zone = Zone::Clear; loop { - // Read sensors (LOW = obstacle detected) let s1 = sensor1.is_low(); let s2 = sensor2.is_low(); let zone = Zone::from_sensors(s1, s2); @@ -120,26 +99,22 @@ async fn main(_spawner: Spawner) { if zone != prev_zone { info!("Zone changed: {}", zone); - // Update LEDs set_both_leds(&mut led1, &mut led2, zone); - // Update LCD lcd.set_cursor(0, 0).await; lcd.print("Distance Status ").await; lcd.set_cursor(0, 1).await; lcd.print(zone.label()).await; prev_zone = zone; - beep_on = false; // restart beep phase on zone change + beep_on = false; } - // Toggle beep state beep_on = !beep_on; buzzer::set_buzzer_zone(&mut bz1, zone, beep_on); buzzer::set_buzzer_zone(&mut bz2, zone, beep_on); - // Wait for half a beep period before toggling again buzzer::half_period(zone).await; } } diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs index 212e62f6650..c6b3bb7f5fb 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs @@ -1,61 +1,24 @@ -/// ───────────────────────────────────────────────────────────────────────────── -/// Pin assignments – Raspberry Pi Pico W (RP2040) -/// Read from the KiCad schematic provided in the project. -/// -/// I²C bus 0 (Sensor 1 / LCD 1602) -/// SDA → GPIO 4 (physical pin 6) -/// SCL → GPIO 5 (physical pin 7) -/// -/// I²C bus 1 (Sensor 2) -/// SDA → GPIO 8 (physical pin 11) -/// SCL → GPIO 9 (physical pin 12) -/// -/// RGB LED 1 (common-anode, active-LOW) -/// R → GPIO 10 (physical pin 14) -/// G → GPIO 11 (physical pin 15) -/// B → GPIO 12 (physical pin 16) -/// -/// RGB LED 2 (common-anode, active-LOW) -/// R → GPIO 13 (physical pin 17) -/// G → GPIO 14 (physical pin 19) -/// B → GPIO 15 (physical pin 20) -/// -/// Buzzers (passive, driven via PWM) -/// BZ1 → GPIO 16 (physical pin 21) -/// BZ2 → GPIO 17 (physical pin 22) -/// -/// Digital Infrared obstacle sensors (digital OUT, active-LOW) -/// SENSOR_1_OUT → GPIO 20 (physical pin 26) -/// SENSOR_2_OUT → GPIO 21 (physical pin 27) -/// ───────────────────────────────────────────────────────────────────────────── -// I²C 0 – sensor 1 + LCD pub const I2C0_SDA: u8 = 4; pub const I2C0_SCL: u8 = 5; -// I²C 1 – sensor 2 pub const I2C1_SDA: u8 = 8; pub const I2C1_SCL: u8 = 9; -// RGB LED 1 pub const LED1_R: u8 = 10; pub const LED1_G: u8 = 11; pub const LED1_B: u8 = 12; -// RGB LED 2 pub const LED2_R: u8 = 13; pub const LED2_G: u8 = 14; pub const LED2_B: u8 = 15; -// Buzzers pub const BUZZER1: u8 = 16; pub const BUZZER2: u8 = 17; -// Infrared obstacle sensor digital outputs pub const SENSOR1_OUT: u8 = 20; pub const SENSOR2_OUT: u8 = 21; -// I²C addresses -pub const LCD_I2C_ADDR: u8 = 0x27; // PCF8574-based 1602 backpack (common default) -pub const SENSOR1_I2C_ADDR: u8 = 0x29; // TMF8820 default address -pub const SENSOR2_I2C_ADDR: u8 = 0x29; // same chip, different bus +pub const LCD_I2C_ADDR: u8 = 0x27; +pub const SENSOR1_I2C_ADDR: u8 = 0x29; +pub const SENSOR2_I2C_ADDR: u8 = 0x29; From 9bfc150af69051938b8ce61bd5392f0e4d70197b Mon Sep 17 00:00:00 2001 From: Denisa Filip Date: Sat, 23 May 2026 21:22:54 +0300 Subject: [PATCH 5/7] Milestone --- .../2026/denisa.filip/{ => images}/arch.webp | Bin .../2026/denisa.filip/{ => images}/h1.webp | Bin .../2026/denisa.filip/{ => images}/h2.webp | Bin .../2026/denisa.filip/{ => images}/h3.webp | Bin .../2026/denisa.filip/{ => images}/h4.webp | Bin .../2026/denisa.filip/{ => images}/sch.svg | 0 .../project/2026/denisa.filip/index.md | 35 ++++++++---------- 7 files changed, 15 insertions(+), 20 deletions(-) rename website/versioned_docs/version-fils_en/project/2026/denisa.filip/{ => images}/arch.webp (100%) rename website/versioned_docs/version-fils_en/project/2026/denisa.filip/{ => images}/h1.webp (100%) rename website/versioned_docs/version-fils_en/project/2026/denisa.filip/{ => images}/h2.webp (100%) rename website/versioned_docs/version-fils_en/project/2026/denisa.filip/{ => images}/h3.webp (100%) rename website/versioned_docs/version-fils_en/project/2026/denisa.filip/{ => images}/h4.webp (100%) rename website/versioned_docs/version-fils_en/project/2026/denisa.filip/{ => images}/sch.svg (100%) diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/arch.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/arch.webp similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/arch.webp rename to website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/arch.webp diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h1.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/h1.webp similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/h1.webp rename to website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/h1.webp diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h2.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/h2.webp similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/h2.webp rename to website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/h2.webp diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h3.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/h3.webp similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/h3.webp rename to website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/h3.webp diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/h4.webp b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/h4.webp similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/h4.webp rename to website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/h4.webp diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/sch.svg b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/sch.svg similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/sch.svg rename to website/versioned_docs/version-fils_en/project/2026/denisa.filip/images/sch.svg diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md index 4db40148733..c10b87ba0a2 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md @@ -33,7 +33,7 @@ It’s built around the Raspberry Pi Pico and programmed in Rust, which not only ## Architecture -![architecture](arch.webp) +![architecture](images/arch.webp) @@ -41,31 +41,26 @@ It’s built around the Raspberry Pi Pico and programmed in Rust, which not only -### Week 5 - 30 March -Decided the project theme and searched for informations. +### Week 5 - 30 March: decided the project theme and searched for informations. -### Week 6 - 6 April -Bought all the components and soldered the raspberry pi and started creating the prototype. +### Week 6 - 6 April: bought all the components and soldered the raspberry pi and started creating the prototype. -### Week 7 - 13 April -Started on the documentation. +### Week 7 - 13 April: started on the documentation. -### Week 8 - 20 April -Started on the hardware and software milestones of the project. +### Week 8 - 20 April: started on the hardware and software milestones of the project. -### Week 9 - 27 April -Edited the documentation to submit the first milestone. -### Week 10 - 4 May -Submitted the documentation and made the necessary changes. +### Week 9 - 27 April: edited the documentation to submit the first milestone. -### Week 11 - 11 May +### Week 10 - 4 May: I submitted the documentation and made the necessary changes. -### Week 12 - 18 May +### Week 11 - 11 May: i finished the software milestone. + +### Week 12 - 18 May: i submitted the software milestone. ## Hardware @@ -78,10 +73,10 @@ RGB LEDs (2x): Provide visual feedback—colors change (e.g., green to red) base Buzzers (2x): Emit sound alerts that increase in frequency as the object gets closer, enhancing the warning system. -![Hardware](h1.webp) -![Hardware](h2.webp) -![Hardware](h3.webp) -![Hardware](h4.webp) +![Hardware 1](./images/h1.webp) +![Hardware 2](./images/h2.webp) +![Hardware 3](./images/h3.webp) +![Hardware 4](./images/h4.webp) @@ -90,7 +85,7 @@ Buzzers (2x): Emit sound alerts that increase in frequency as the object gets cl Schematic of the project on KiCad Application. -![Schematic of the project with using KiCad](sch.svg) +![Schematic of the project with using KiCad](images/sch.svg) From d5365b0e970bc72d44e1f847d8b740c0e6eb4288 Mon Sep 17 00:00:00 2001 From: Denisa Filip Date: Sat, 23 May 2026 21:54:21 +0300 Subject: [PATCH 6/7] Milestone --- .../project/2026/denisa.filip/.cargo/config.toml | 1 + .../version-fils_en/project/2026/denisa.filip/Cargo.toml | 1 + .../version-fils_en/project/2026/denisa.filip/README.md | 2 +- .../version-fils_en/project/2026/denisa.filip/build.rs | 2 +- .../version-fils_en/project/2026/denisa.filip/index.md | 4 ++-- .../version-fils_en/project/2026/denisa.filip/memory.x | 2 +- .../version-fils_en/project/2026/denisa.filip/src/buzzer.rs | 2 +- .../version-fils_en/project/2026/denisa.filip/src/distance.rs | 2 +- .../version-fils_en/project/2026/denisa.filip/src/lcd.rs | 2 +- .../version-fils_en/project/2026/denisa.filip/src/led.rs | 1 + .../version-fils_en/project/2026/denisa.filip/src/main.rs | 4 ++-- .../version-fils_en/project/2026/denisa.filip/src/pins.rs | 2 +- 12 files changed, 14 insertions(+), 11 deletions(-) diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml index dabee5eebca..c7522fd2c5d 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml @@ -1,3 +1,4 @@ + [target.thumbv6m-none-eabi] runner = "probe-rs run --chip RP2040 --protocol swd" rustflags = [ diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml index 7138700148a..929665209f3 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml @@ -1,3 +1,4 @@ + [package] name = "parking_sensor" version = "0.1.0" diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/README.md b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/README.md index af43fb81717..9b97eec51d1 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/README.md +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/README.md @@ -1,4 +1,4 @@ -# Parking Sensor – Raspberry Pi Pico W (Rust / Embassy) +# Parking Sensor – Raspberry Pi Pico WH (Rust / Embassy) Smart parking sensor system using digital IR obstacle modules, RGB LEDs, passive buzzers and an LCD 1602 display. diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs index e9871a81a95..fcc9cea7cf4 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs @@ -2,4 +2,4 @@ fn main() { println!("cargo:rerun-if-changed=memory.x"); println!("cargo:rerun-if-changed=build.rs"); -} +} \ No newline at end of file diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md index c10b87ba0a2..d737140839e 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/index.md @@ -58,9 +58,9 @@ It’s built around the Raspberry Pi Pico and programmed in Rust, which not only ### Week 10 - 4 May: I submitted the documentation and made the necessary changes. -### Week 11 - 11 May: i finished the software milestone. +### Week 11 - 11 May: I finished the software milestone. -### Week 12 - 18 May: i submitted the software milestone. +### Week 12 - 18 May: I submitted the software milestone. ## Hardware diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x index e9346923424..abdd87c52cf 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x @@ -1,4 +1,4 @@ -/* Raspberry Pi Pico / RP2040 memory layout */ +/* Raspberry Pi Pico WH/ RP2040 memory layout */ MEMORY { /* NOTE: RP2040 boots from external QSPI flash. The first 256 bytes are reserved for the second-stage bootloader. */ diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs index cbf67b2537d..da31d60f414 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs @@ -13,7 +13,7 @@ pub fn make_beep_config() -> PwmConfig { let wrap = (SYS_CLK_HZ / BEEP_FREQ_HZ).saturating_sub(1) as u16; let mut cfg = PwmConfig::default(); cfg.top = wrap; - cfg.compare_a = wrap / 2; // 50 % duty + cfg.compare_a = wrap / 2; cfg } diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs index e3e7983c52d..68c04b4d515 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs @@ -26,7 +26,7 @@ impl Zone { pub fn beep_period_ms(self) -> u64 { match self { - Zone::Clear => 0, // silent + Zone::Clear => 0, Zone::Warning => 600, // slow beep Zone::Danger => 150, // rapid beep } diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs index c035ff08447..8e7bb8da5af 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs @@ -1,4 +1,4 @@ - +//lcd.rs use embassy_rp::i2c::I2c; use embassy_time::{Duration, Timer}; diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs index 1d609c5e53d..0bda4585e7e 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs @@ -1,3 +1,4 @@ +//led.rs use embassy_rp::gpio::{Level, Output}; use crate::distance::Zone; diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs index 3a97c8a3557..5453567dd5d 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs @@ -42,8 +42,8 @@ async fn main(_spawner: Spawner) { let i2c0 = I2c::new_async( p.I2C0, - p.PIN_5, // SCL – GPIO 5 - p.PIN_4, // SDA – GPIO 4 + p.PIN_5, + p.PIN_4, Irqs, { let mut cfg = I2cConfig::default(); diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs index c6b3bb7f5fb..23e49e83714 100644 --- a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs +++ b/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs @@ -1,4 +1,4 @@ - +//pin.rs pub const I2C0_SDA: u8 = 4; pub const I2C0_SCL: u8 = 5; From 119a2999799fcb0df095242f1645cd7a50fe44cd Mon Sep 17 00:00:00 2001 From: Denisa Filip Date: Sat, 23 May 2026 22:12:42 +0300 Subject: [PATCH 7/7] Move Rust code out of website folder to fix GitHub test Software Milestone --- .../2026/denisa.filip => hardware_code}/.cargo/config.toml | 0 .../project/2026/denisa.filip => hardware_code}/Cargo.toml | 0 .../project/2026/denisa.filip => hardware_code}/build.rs | 0 .../project/2026/denisa.filip => hardware_code}/memory.x | 0 .../project/2026/denisa.filip => hardware_code}/src/buzzer.rs | 0 .../project/2026/denisa.filip => hardware_code}/src/distance.rs | 0 .../project/2026/denisa.filip => hardware_code}/src/lcd.rs | 0 .../project/2026/denisa.filip => hardware_code}/src/led.rs | 0 .../project/2026/denisa.filip => hardware_code}/src/main.rs | 0 .../project/2026/denisa.filip => hardware_code}/src/pins.rs | 0 10 files changed, 0 insertions(+), 0 deletions(-) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/.cargo/config.toml (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/Cargo.toml (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/build.rs (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/memory.x (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/src/buzzer.rs (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/src/distance.rs (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/src/lcd.rs (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/src/led.rs (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/src/main.rs (100%) rename {website/versioned_docs/version-fils_en/project/2026/denisa.filip => hardware_code}/src/pins.rs (100%) diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml b/hardware_code/.cargo/config.toml similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/.cargo/config.toml rename to hardware_code/.cargo/config.toml diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml b/hardware_code/Cargo.toml similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/Cargo.toml rename to hardware_code/Cargo.toml diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs b/hardware_code/build.rs similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/build.rs rename to hardware_code/build.rs diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x b/hardware_code/memory.x similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/memory.x rename to hardware_code/memory.x diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs b/hardware_code/src/buzzer.rs similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/buzzer.rs rename to hardware_code/src/buzzer.rs diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs b/hardware_code/src/distance.rs similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/distance.rs rename to hardware_code/src/distance.rs diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs b/hardware_code/src/lcd.rs similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/lcd.rs rename to hardware_code/src/lcd.rs diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs b/hardware_code/src/led.rs similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/led.rs rename to hardware_code/src/led.rs diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs b/hardware_code/src/main.rs similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/main.rs rename to hardware_code/src/main.rs diff --git a/website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs b/hardware_code/src/pins.rs similarity index 100% rename from website/versioned_docs/version-fils_en/project/2026/denisa.filip/src/pins.rs rename to hardware_code/src/pins.rs