From 1f83a5c4c7385b4642e561693bbd9ba5bfc26218 Mon Sep 17 00:00:00 2001 From: YunHorn Technology Date: Thu, 29 May 2025 13:49:50 +0800 Subject: [PATCH] workable L8A with state upload 1/2/3 --- STM32CubeIDE/Release/WLE5CC_NODE_STS.bin | Bin 190464 -> 190400 bytes STM32CubeIDE/Release/WLE5CC_NODE_STS.elf | Bin 275848 -> 275888 bytes STS/Core/Src/yunhorn_sts_process.c | 32 +++++++++------ STS/TOF/App/app_tof.c | 48 +++++++++++++++-------- 4 files changed, 51 insertions(+), 29 deletions(-) diff --git a/STM32CubeIDE/Release/WLE5CC_NODE_STS.bin b/STM32CubeIDE/Release/WLE5CC_NODE_STS.bin index 66720f31c19bc958b0d0025f589d1c1b9b514d06..df64575bad28ae50a210d0de0534c79c601964b5 100644 GIT binary patch delta 11627 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 Y9H0PzHDkZ5tB8*SdcXPIE-vN20c;RAbN~PV diff --git a/STM32CubeIDE/Release/WLE5CC_NODE_STS.elf b/STM32CubeIDE/Release/WLE5CC_NODE_STS.elf index f50763f9414347624f18ef8ee8f68af77137744f..3c454effb9ef2bab7bd93822bbf401b160503fda 100644 GIT binary patch delta 49501 zcmb5130PFs8~^W_JHQ~AtO|lMYzl%2id$}|IAY+gxhJk+pn4E?4+IE)g23oo5b2K<;g(tiFF_XvxE`N94P(O2_p!>bK5!z?BpxP4R1C*F*i=3YJzlbSCR`9?6C2vj5k2 z1gD?Ool~5);9gu9lITt8C<*CC2XP8|*#Grg>g*rQlB99|VJxY5zQ5#Us;e$;5_+34 z&*I9K9wx}@!e_8E(zI4THl67dqRi`3BRvY6%UM$Y)@7`l6dW;&9h2-4m;8q}L}dqN zcegdW($Ch-7Ay~vW?Q?n#Nzj@BNmSmx32cY-?gW(d^c*^aixk=H?TY58TP{4By*1e{{yhYlIEwokG&L_nHVHX&>whlE+BHJGN(8lD*?x<|W+tVGeAR zMw7I2y#mQMP80%~2S~s_E~))x@4S zJ5Wu3%N6#*Sy46py{s^47ApF`fFo`3;H}m4_j_qsN@TB7)ggP2+_0ny@>2&aN0yod ztB@q5vUD%`_NT&8g-bRSrAG;omck(UW^D-0OgOt%>m~moT}>Itx=0C~!va6Ax9ol9 zllt;7s-zlAiHH2LG_G?W_Nug@b9B@8RhGRCm47t&rd#BZ($}3M*>lpZ&e1GWYStx` z&6nc4B)8aCWrA0~R|!$=to}An`Gcx<;PcYlE`jMC>dYC;`h|13K)!m(Q{bCm7RGwW z@kc1FHgye^W9kKYud|`@{aQ6YlRqO#Kphc_6s%tI{e#k}F5xq79u$riAfpWC|2{&A z{&ggGVD3PM);H~ta5V2B!K(8FaAGr+Q=$3O5maKTr(AXfqfolHd>oFfgq#ZO&QZ-S zGI>QB+%-AST1U+QG0-Mk)|p|yv$VEre3M5SQulgL45xIWYn+d#T&)HCB2{+n-fDGy zvdzP0wRy>pLshBw4|H1J&-Yx>f4@KN^J9JVR_RuczD;LUd)PcM%y^`E z$g`yGJ*UKX#E|15cdkxL^^m*aZ(>%rBWPE-4G}Do(*OAo+B&{}kiO{I)jO!#LvD$~ zDv7-YM!Zoa?y}mb|E{QNXX_5%&|<6G*{G&G<#(l7y*9C@C6C_mtf$nWcXv~RQ+l#@ z%P@aucvPg#Qi#r;CKd$A-p&+oGgP5jdZ%}2*Vi#xHdIbWrR9%|PB%;DT^9KrjG7IV z<7*<&u0B-cqiTehaD9wTv&d_te|txmoYj(FpCl$pef#WUQ>9ydTD5%=`Jtw6vav{N zqEj{YD_L2Th@Nb=vBE$Z9;U{#KGL|&H z1kHNAbhYnb7A7V4i(rGK;r#-=_SD2$J>-khQ~f$euWq>Vw1@l#h5)}*3jN<9zav7L zkZLJuVq-QFO7L;%i++)9&(uU`|2nHotUdedtP!T#pEhP&()(59n>J>7%a&TtLFRN8 zy{EPc)Lic30CEi?ji4%UhhAFS)}s*vFr<}XwqBp<@&yNnHV-GJ3ArYD=I*~)ZiJ7 zQ8X&f_EhejTyIR;!a+H=pvnUcuAs`CBuGM(UxvR;go)$z&C*RpM{eY%2FiOs6{36* zPNqxh|13}R6RdHXt1qBf!g0O^-+OR;gX1q8C;bJxwG1byvqANhuY4xRq9wPaHR^=Q z;hFj{oKc=;*V6bS`Qcd%u8QnWjZdvOs|5Zby^b2LC!iLI)HI_n?+(}wt`_TTq({hkSN9V?7 zPFpx_uebbk4U4ms(df3YDzdRsch^N^v`jyrC!irNuVJDSFXNAZj-@gkLpzKi_d=}?SUin#WiQizq^u)Y}^J2UMWoy;_eGg@%9gNEh z&1QdxSizvq$e z&oN5|4zH4CGe-fF_XwKU8I$YQ-YU7bn-TOHU8#6S%mx71DYWD_wtExYEWq zNXG|7G+lw!WuVq%mq>pPig@JNT5}OBMfoV9W;9{H)BrjAF!iH}Xt)dE#fLa9;&=|n zd>l7%R6i%#9(_3ec%9!JOEa%B&kP}oqN=SvH}_QMS<;rZ*#PNwxsFu4bg6H=jZ(YP>P`c+0zMy*GVv z&nwEb4uAWFJ;c@tQj{${Lyh-4wBn$(0b0NA6G_KKb7+Roh*LGaGJ2;A1yQ!471eVC ze}OsGM81CfHO1BCe*dVnFVK$)sdFBe7L4f1}y|O*TfELgFbkpCKi8BS2s^buWX3U z5F$hJyyaHTs6lWw!#g_)og_fsQ*VX*u?C+a`3MaiT~M@nI5srJpHFdIz)}0WG$OMj z+aoQ@>|?L2?r3eO^mNkbVa3${FSx$4zJbP9;&O%WgH`!uh5x}aUzPt-{TB591grAz z75=R;{{IyIxj~SZ*To=@e#qlqOqfDsKF)UAYpn=Wo9%nGt#O`;;BB?7GK84WY@whN zt}EhDzYo>Z-_rUJWN$x)H5jRHkrA5RB10%ZAI5;yw|_7~tLvg{K^Z|PlpxT(x}Xew zDBDr3j=v_k-KW%egC_`(v=MKz>s48PX#; zsXAwHTy8=h4eI{3CzU>vSskA@D`VE9a}Sy#Lv#HhWpZ!SAJy$+((^;2y*;ZZWmWD@bP(GveLOU}!^ZX z)W>8iGM9RtJP;$(r!1;vZoAy;C(L>xKN;9;%& zJu&WQA7m&Jb(riay)Z1oBeBXNAC}%37TUH|)#Y-UZfL-!5pN|d(P)=j;$d4}bOya(GStsWjcptQcQ{9)UB3V3jiz_B+;EF-c^j)F(?fhqs#bV%3v2 zGkQToWkf@CHtQ6f_r9aK7mh|&g|CZOm_KSgn71N}32l5iMfLTIu zJd_bwBH&8bYzw#f!p5DNNLv$p&#xtm-K3{S1o!RgG?Cq-TVG)U#eWR(7^FYqI_C=5 zuOudFT~X6pCP9d#2If^5Ag`+S+8of6hMWNT3+c-d@j)gh&J{Z^Yw`a*B$-CWH2br0 z*+Wywhf?Q}vm>Y0vt8Y6r=8|}vpf;kuzj(WV3uFPRdf_q%Vs%G`eJ0;$m!@r-n1MU zZk8W!fFnm(lw2-Ei3rP|YnDezKBLyMWNFK&7A#RJ8Py@Uw6>@^|K0@eY4epq`{)T2 z|3s;3l+=t0#8Sc{hvMSPEWaXc8r{qP0>b=Cwie|Zg+KZZ3y>~6mh4|u@0A{eWjM|B zRG{0XR%1fZ1iFriWe256V|uaO(xx#pm|bFHqfNgrklKt*XZ@t7$9@=pyH;q^T=p`V z%lg}>mi^_cwTD85D9O1MOCo>UVALM#;xC_*`j6W-^i|9_G0LjMUtUxz#01IB5VMmO zGp{z-$$C(q3s-blia#!QQWI~LQ7;UEC4YG)EVR%pWJ#UI$98P8kXaO`TME{5VS+Ui zoMLB|dH7y{BX%+7EPP+WF&_is)rHb)<6HW+txZKqm{7g7RZ`LTLUvjjHzAT8mR^{! zBE0zv%u)e+8*%K$F%7&F$99}cTPM!Mgzq(JT5MizR63QXzuc@A%g1y}l)o(0wtCcp z=1ko9Uzhqm9x-@DwP$n>j4ZL$uR4W%kw%FA4V8;OWiVO`zqaB#QQGr(?9gG=SNHiQv^W#fL{1DkGZwOk zlDuNtXxSNF6J;~)ica^J`_)7~8fl~6dEFU}WmQCGLuFn=^l~9;(>|(ST2J`P@lxdE z$^QM|!F@DB@@6c~w@Yg$2evrgKt*&4whlL#WxFZf7EBOfggJ;q!BB`v_;WJb##A*@i>6+ibXy zWeMg2bioogV|w@i=&pM-NExa^omekq)m4tG7oy%!7EAu}lqxlBXg!NwaxZXsLnSV? zvf_jKS2a|YRL?FKVl0KLoYqu}?CV@NC7hj?T1{#15d`Tg($Fcv?0IR%l=fk3u!A$T zdLWi`LiDs;?07`)$i1E$JGZWKq_k(stHBHEEm%!|S{-LgjI!(!oGim%-Xsm0+QIkl zYR~nST>;(v<(L|2>C`wjP1-ZHQ=2^0#3~$AE7VUu#`$i{DAbnoF^W>dy#1o&Iju|A znugc32GFJ|$`-Qg6;xV_s%2;ZA>~w@-4k-o<>S)BFH)4RH@u8R2%TM#o}D&1;!MMI zE$#*9)buD^PWj8HoRgKtQ(yVCbZ1(IiB(Cxrw?hq#MuQ3A-nwLdCpFnLW_E7`}Az= zhxyEC-+ZmpN3#{@Y#tS|%L{&lI;9~q+9Wi8N$c(Kx&X%_e` z=CUFaT3EjH&Wzv*?`Hg!Ghx9Ox5U7W{ru0fD6vhOXO=k=thaKurr(;H5BEQ+e>>xy zM_cCx=Jl7E7?`^yBWhu2-sT}|`$ZgOQ5|!m7PidYh$~W2ZVe z`M>;4*sO(5CIR$M{*EWprT8a$J!Ly1wio0#^BMjY=I>bWNZxv<;MaHX#(sStMSh|K zb9XH0k-GtL1M+%jZW8+c)mKc;^XcFJug}G(ybJp__DjGz^h|y`EaAhj{_(eU#>S(c z{A*o89-1UpC>}KW4E2+5N@Y)k4R85qAaarojv@({xdOth(O8-4E(*7rExfc#vXSPS2 zL3QmjLb2XLZsYA0Q$JQci^tgGht;$oPpBSKF0|`YG5TY5ej!^!vG-_d(mH*q({n4W zXGLt1woGrQlyYQUI8vS_+m)1u**2D=vrR>bT3NK|;11K=Ajx}H#Du2k*?w~CI!`!E zl~YwqTMlHZqBfvhDTvjyy8I6fa0c9c6GsKkkK(&)NjBoX)exE?Y-yQik{iq$54OR8j~emzERPvtMx!Nwwy73#@jP4%`j)&D!+;@ z(-!tAtu!s&nfO+{^=k;u5H`2WW9@$07XUkSaY%ONNUuNH!TuPmZJvoe=u~sYr1>|o zRw%?UlCN2#9OS|3PH_914SmV~AM0CZv>qIm*E;jU!Gyd^PD?&Z_-$WUSu}Mf)1iZ* z8DBW#^2g6h$cxNNqDe5hxl-bhwZV|g%MZ$Ejb-+QebKZiw%?E!B`6VvgbJ7-Q*xR2 zP~VLIITQ2!ajE#(TtC@d>xD=!&%0VqD`qOrpKy?K-)N5h0elxe3V1FysL@^;S7K&=m_5YBi7HdkGG&lDf*Ds%bpMwx+xo z*6J$P;xf%IG6cMk*j|Y-09zR9?G{naRg~;dGQwsmVe_5LD#*Xq#$gZ08wpeYT~K48 z9=)7;w5QTj2aDrxqU+|q<@=B3u7ujf8*LqOI;D{k~9+n6&M|F%AVvgSw zqM5Zx^zoaf6yGU=+*KN$6W_K=O{Z+LB<@Pc_K+w-$2t*nr650Em$bKu(rU?(XlYwc zm`4?o36qZJMBC@!;(?ZJG=Og#jQdcFw`U4b%ZmEi;%vKYfwmZDK+=05tYd0BtJBnj zVS)GxmX`O*Hek5V-rgi?r}K(6JZh=)53A6oNA3%`hjMFjd(3@d?xDFgb2p+x-@}k5 z+`X5d+J^ORE;o24EDv$AgyNdJ_hMnM!d`aS8M7V7zRq-sKlWz-%g*r6ne4^Bymvwn zZXFk=rTw)}S9c0A-0iRcme8)l)+$#yaO#>!y9^HywqjiHeMM_LIj| zr?%gOY)xM)#J(_zTA#YKBw0qarF{i@_Rx%>LzTYWLGD*A#0JYE*5N&r6{w%wz4|G^ zBQnJqXl0$&?ZbD{zM4CCHz99#?ny;++Sq%b0g<(!YHRy5Wyu*~%Qx-Yamyk$iK247 zpywltGI`e`uJeTV*yEXsC1Vsdz(i$o_^&Dkoo>T|3k!sGLKNhI4EMd-WcbN9s$!uL zl1sz95EZTTo!_d|@wTCIz8(7>{cYHikp*A2p!?o^PT|U;?73 zQkw~Pf&|kYlS#b8#J|c|mm7al461?Np7-n{W*$Md&QDa)G-{xxDq0->3>feuQ?lXM~s*gTiyE?QfO3<_;X3Rb{nR zlm{+i7P^$Dm|@}3G11`mH!J%OQDV(Utif8W=`})Js=Pe^(MK;k;}#)%YcPoqOCLI5 z&}FAp`Zjkct^>p7M%xonR`t%k0}?V~e}snBbZfC`|E+$_T3=l6^lGFQ7iehnJ;yq> zM2WJ5Cg-fmBEoXM`IVs+A5SkU52slom*EmaxwKgFR12+&iNmHKL#R`jko(*QWffPBfcmS$Nvo~Zt2;`~({1xvBlA%)I=C*XQReL3!1S_Qy|L ztI1XjSJp}%Yd5jA#oN|4GvTKDUTGv- zQ0!6A%GB&h?2bogZ_1wFb?c|<%4t&aThFt$(yq56Of71pZ{9l7>?7Q;BZUiI*P-yf zw98S<1{P0RAIl;?t@46sWA+bTmb1TRckKUb){fcHvMACL_MP(T$`6WnY?}yy;FWsk-F#=|zx7{)`6v8$-h9Pbd9(f) z3>L%S>hhM^Q8F{N%yL%#h8PW%1L}pigJ+zTzes~V?$fMP2@65kn`O?*BFXV_2mkd- zSXG@6*QesSkDZlkq+dSn+w^IKcFG>_;c?bkIZKKyif%SW37Ozw|L+lK4U@(cb?Dr! z-qZFAyxQm$0=?w=CGhF~d0RPoN(=h0@a?ROMNA6WdPiJL`v}$i;)16Al{qqMA z^0ssc`m3e$2!FZmi?HH;_s>fR&y&3NMX+qC?Y_Qk2cp?ER351n;ua&rsdYkFleqim zM?>q8x>THhe|{*=QF;49sj=;QwbNBp|Do&)VkjKDRJ$b1lu&uz|4OIqXw;@p|4t~_ zA8M&+sCGZ>cL7EFjWn$|zF7(4{o=GFpBJgfK9V*SM>gG}*xICoIHa$Oqnj>MLdGc} zcB!hkJ)0@D-5(n~8a9iwr^2eQSbS@7v$L?9Ax+ue$v+t}qP5fxAT(ZjcYi0-*-O%| z`&-jj_5SfxS|tOqr@f^lfjNr5F7aZfz#8d?Pu88a8L|0499tJ#}8*-wJC+Yx7F zq4a)fJZ=n^mA1eG88=IxXXV9H4s4-Eff_#D!wwejIaKM%+7`e2`CP{SEN*e4vxoPD zeS+nGI9T!MuYWXodmI)lgK>UDS!Q%guV3~yTD>lJ8D27?OK_ecTeTz3-g9VIk{3r7`>h`$BPG8`p1`u`(XI^b~N*zhkNiNbd*zWd71 z$FU8^-#A9X*8k7(`oBVP+Zs_c`PLUF)?YNSiKX6*edy77&mBA!cLPRo?71vhX5Yn= zaySOzyaMHsdDUe3`VUkXj^BS1ETi$=-f`2DjbxdQUS9N7y4DMp@ZGB^yJf<6ydRTH z4^hmEu&`zv=FHzpzX@P1Q97m9gISmlzVR5tG?C?$&WK?<{9((x3mfU3cG+Z!!I4=y zqYKMmk>NP^#Sw%fq_&|!_{+2F#tq)7sg>Sc6Xk9tiM5*KBlYSf z$?Vd-1K0~@Hodg{qwEWl_w?W4(G?tys!SHm)|a-z0}#w(`X46ChSFX`*b`KI?+#;! znD>7$+X?gi+|pSi*hmu#DLpcZq0Y8C{x_O!@V`D98@cd32gkVn*dQ*Q`xx8g>0!q0 zv-DE`N$f|HdhWP6nN46*N(W@Ia>mje?WeMGk96cdyfkzg``#2kZW$hFz=e};trixK z;h2r^=WyiXSb<}m!+$25&#sleI+M*}Chz*vyHDWu3~N;y{3IL9TAXPxVRQ9$+|h2H zVYP+lHdIci|EF@6W5H7_fz>$PeTofayBvQ%#m1RDYaQu1Y$^M~aXN>Uu-{6T%w}s% zA(aPBalS`IE3=~SSS!lAm6%cX4^=x7bJ-QsxvQlQ&1G|#M+z1yM;wcuVb8Kk$A8bj zdP-^JvuG~CeQMRq)`rR}pZQJ~tUg&-|2h`UWAC$`j`;b^!InFY&qq0YSi0*uHinrh zmN`s$>{0q2LQBMoWu*)ASO8-|j#Ud-TV`>TEMT32ElAO?M9jQ8YyH3-Ptt{P$Uuvu zZUKvcMyrMB1Qy5Kg(zl=429I+GINla~F>9 zmN^!`%-(+JFrItWk7L&z58K&TZ(Pen3DJL5KI2$zXPv#HH5}v%(m280{ zeGLn7{I{AdC|$aS6?r&1y~Tz%KaCqJ-{WY3qYQ@wuK&E?)s1hl(v5GK?v4%S6;?n< z3TsQZ{cG|O?VHe4v57AX8Iv)&5a*(Lo?L=+vwGg~bDVpq=bgUCxu<%bauMfV>Urmz zIQPbR-(kZ>-p6?poTv30G+9J}`QUtT{}H47aPF&|XAEeC^QMB(4uXuNc7TUS(08PA z-i*$Nj7;i^a6C*bj2|#!=tqvx_e@>w=$DrHX}G;-W0pJk{&FZ*_z1g`$t<%nm}PW- zM{#iM!0|40w&8dO=bLa0fUUVW*5bSs+JpzbPecAU?Ciq# z+(FDz1^JXItcm4`DM%23TS|i~OqZF-_uTnEtO0dku;Q^V1?_x)LCT4_h`&qC|!7&@h@$-134xdHm1j~8w z+PxvMSHOFI6)cw^yNM$h=cGd)j|+n3KZMP9lrixaHp;QfB(`Pq9A)_OD4c_0bnF$y zK!=|wTG#8%bAn;C(L*00c zfJ9e1{`R7LJDOU=p#jGz}ue@e%Nu^BKARNZ|aRN{}_z; z2*pPfDo~h-j!8`ro>aP}i8$1gb#wgfCr)Pj9fSSFf7xM2uK+QDy<9pg0130pr7Hr( z4vbBA91IeNvQ7@~VDTL`-mxoKyvll(u4*oZnc1?^T`k2vCU&;;X1FMd{uRrN1d$Ca zR_Y?eTWqo8rWLkI9ifq8vEz1x=;yc?DQ;$8ITl30pKGNDqeQHqrkAd0D~gzjN>|0f zA$-5oPW)H&Uz2H623gH^Y{Fq}^2l1#qWUOoOS&qr(vb zB+D_$og9;V?0A>>9fe#jfD|e?CIdlu&;(!jm;{oqEWMP3wh^#_t0&UinCW<M@(LtF z+e9=GlArZp+A`9a;veSpDSidVklO_(7eET;sYU{1z?Wl^Cvi;j6pl$=Fx@r2%rVJR zxlwA2;8>U#3K!lHvQu*}wfPxxtcQoxRzF_yF8Cm<7g*y$De4&dun4f7R9|8Si z;n)MSs^!xjoZAb#EQm+tH3*yq*6W$<<#6$p>=^7Q?<^j7oa`c|+Gjk#lf#%UVE`YK zQsLL!xZaJ;m_~X1=5Czk#)l2IE2Wf*xmh=m3x{YkPR*JqECd&DOj%3k^eJoCI9>|< zGyPENSV&RPkp2x$z83PEU>m|sf?dsF5*7tuC5Q|c zV(TSlb>nn5&eb_yE8=x}fX4gW_{vj`kGhGE*gt_Y`bTd#Epv>-zl1yt{EXs?nz@yn z{4(ULz|)yAz}%i~#HZ4dIj)BO9k8#euU3~l$2CH&8+Ux#RsOac7v;Lj1LnH2^BIGw zbT>b%vsPVO8w1oFo^a#*d3pqO2o1_Jm~t4$F(oi|p{snl8|S~E$?d2fis1K>YlI*- zu6E;RUUtF$?XCuMI3@#cxp7jyp-=K1oSaHzC&xXw z1oiY%)cAI&szu(9Ge`!;yK%M~Kj+4qIUf9g1V7>Amb)E;;IZ zh%N0|4={GX&Da%=$@yz;eAkVIMXsf1;h5t48m#t^AR|B-fI>JX=dB!*ff$ZSp2RW9 zQ#dAhD#s*GYh=eKJ;eY=Trbhjp8J537}cm~5|%EjGx|L{3f#WiBytuE^ck zZ>g(1#9*}~ik7)5oOI)uR}48Nc!Fa}@SGc`ylUu^d^5*N$t>69+E|g^7+?~1JfK9D za&j`TeuZwpBz*b+{mq=5^bd1P4jt23A1lINGYpbK498@kC&wgD<(TAI9G5-7q3N9b zI^;9JDTs&st981bQ@96(4d6^D=nKqqoSYoE#xXgt^L5t@oZy(`qgJ}gb5%CR3a6XG z)K#t#PH{{IbKWrILD-|vKl)&l$I074z5tvAB|Sqs6*;A^l|UgEff6{uG3EFa$0WbP zu~H%&lf2t%!$GCWI3{@^v14zl*uviH0sa@csh{Lnaff3vm$k-7?y(2h%jV>ye_(B+ zzFq0n$BY1F?A*GpQ9+Rxy77KD{>+Wfa7+naIo`B}(c1wY5hYdQJ9 zkk^4naPlE<8V*x}!`!%9V>Cjw6V|#ZB)w%Apd4Ot7)%DQaZK{{8(igE-S|C@AEK>1 z^<&2dwOR!qa0-;beU4*|2#xxw8(kCJ$nhf&&@bfV<$8t>alRFkM2f?}tWa$hIHHA413j>{A?p*kw*%Cdkll55W+FZGdU*tFgO0(jk|s1YOm0Z zANp96)BH*XKhOg-_A4?BeD#1T%ID<2LcRz*9d`68y28oH{xyzoL;pHB2jR*hmvWfC z*GN#wA;{jiO;%T2$Qlas!%Pf3sF7ZV=Z#nuo4_yk6&3W}T} zjO925`t)$glZsR=!SS4&^iR0)S8iOdFgL#n#jYhVmSZZRlN?h5XWTexzia$898-KJ z$4Uv5KwqCepNRzO~PIT(BnziI#&`r0UifV=NvGDfl3G^@TePSy76Of zJl2i3+PQ!qkl;43K6Fw7`#CxB0gfq0TaUUrRK#&P?9n4nr=X{g3wg&}_3bZm0hNgG z68Hocq33be2&o)f{BgS+T*z&PUi{ou{|3hq(5L6Hb{hJ2A^(JHgq0jq4)eZpm2Y+9 z^#8faLr%K#VmH3V@fhlVH@D2=siQF`l7q`hI8R;4|FW z&x8TG?x!5Yz@QTzqthxS+XYMy6jDLzB^|=WS4xCq%0P@8XL3A-#^!lk07b~-m<;-T zZ#bw_0mmdS;CLV$yZ{H$`x_nH&B;k$IAhpT+NLiTpcv$s5?t@b$2g9oA_cF9p58Xo z%ZvmRhdCzuOAU5BF;es&KuU#1pfXVo`_V8m4!KH41Luo9my?sx6OKzGafkPuTX5=G z!^{uxl^zSdq4_!+X6dm|y>`is98RCiF6Wr!YutFdEB6!ja{*-FB*$dn6vrgL$T7*U zIJS%uJ4Bv^pCEkHg^H77iZ;>FbhLQOz8G21KlV2yU)8Oc#Pu_NRXcF()S)o|J-@UZ)0$4^$E!Ik6zsu zxw!agqd-r7@zr&WlNUg~6Q!?~wszy0lNUlxPmS^MWkar3cZCrke2xh8NSO&Izm4S# z$eesG+S^vd=jI^6e8F(2IpWiEa=EyC*V|i~F4wOlU(*A$>Q1|47$Aqna!fhM!L!x) z!bdHkc^r2}g7d+A3FdKfivOaa>sEAo97`S^)Ns3Wi`N$1`^{&#i|3)=`3WIrn_QDNa8JdZ)qUjb3UOIXSs;#o#A} zx1dQ+obwT6LqTar6&$|{#s9!DTmnItT}w5D<73bd1t&S?P7vGLuL9|zcYfipl~Y$* z5yxUMS`nBZ#ZGZ@(m%^_B=mm*^P`mIN~3#fzwtE!gcL+*3Z7^z(}iKbH%1T!LheK} zU4w-5g+?|f9|`#^@CmLw!v8ShlY@zk>|+vUBSL!w#5uN2#Fo^kMwv-?86tY}pU><( zPENL7!U%O{7cA# z!7+Rv<>ch>5RRz}t-Nm7S1w7+e;NTwX}NJXj?W;$?%;_qq&M&7oSfnpa6B39>`m}( zPCvJtOOKX)`CPyaB(Mm4k&BRdgNuOhi5%aD{v>cZr(eLy$)TMb`!&a#iaC8d70ESD zfg;@IxD6uEuSSM(38dU~b*LxDJ)z$VT*2x4{pG5kWUyVxLWE=l{DqN2FVZ|iL7hlA zCWm+b?P_p8$0R>18*)4BPsBx@+6dK$0&h3UwRJ=I9V3E-2(7@><8+61a&ju6-5l?M zKK;HXm(%yVYuF?GaE`wq`(UL+$07;xcp|4j5pp=bhzRt99VLRMznhbj{$Y-lDs^nh z!th?p1(TX^&+v=X=G`}#pBq z$1emapVF3$YeTCDL zlT*|)98+Ciz!(^JGbjw4T?u!grlWbLCj8~ieK^fL5oZe)RM zKgsbP=syM4uOUeO9Vb5y`S;*ssy(&At!ZHxJOhQbV1CV>8DhvUK|U6hMqNOz0L9^%I1-FT*B%N$%vEOrat?8f^!rXo7P@tY4Qr^B3l2joY< zafqjnz~?wQvf&7OT5M`Bg5q@uMsbRXZH)XLft-Htul52_I0cRYTcJ;P{HQ#-ar)%w zqa2fbF~=l-5kC;e7d|Gta1jRSWdr)qd>c%!FVGY8g#~(*fzF9wdLe<%l)z5IpwbJ^ za!lJj^s)loKIvaD_1Xp=J$0Wa<=qi`pxJ`Rkd7{R61Vwcq$4w#EjpuQ!8rQW2(9eeX*ONa2*OSftRWZ%19z~H{_HfC&!i0r#G7*`;8?aJmRWVDgdTBtoV$ZB(K<4x*et0jV(!{IVOX{9PJmt*JmH#>nKk31<2`bC*+&n z_Q!JawUE;rhOC;LOy_d)uf}0C;5r}qo@dDI!n-iAz|FuKLqW;QdX5i5pWckZJG7aT ze+&5*H~CghUJg0EmPL)lU?eR}l^-#4>3ITcV2$MMjo*UR8GM`H!dGvs!m3l!*GHTa0P+yL z(TVb-k1lIC`B2E|oizF*mE^!iPCga#O<=w}-fom*X*nMX^pYE1VSA&3Nmv0ny%2|* zquzveb8-oCdTCCYCZ{HJo0F46GRM22PcP+B($jYdDmaD1P@p&Q#Bl~g2Dny9ILF^W zpWfcXS4kcxCkK{t`~&pqtv^8sNB-3&w4PJA1O<9s5VqwTb6mv9Z$eJ57%Jc##6O#) z0#ZWmK~Asm@>58)pT@}<>Y83Blt|mnsD-j>&+Ndi&E^ z&f(od@dk4~ffESOc?}}aYoit_$*T^e4m0FCAg9+y9pfA*;N+C!8^aC#JLgbHX`Gz&M{!L47oiQ~3m-NA*ElA*?8fAtqArMzO1n7PPVeE<0+cqsfh!l)U;y5OGCdVWn z#&I1S91e~{xISv+adL{ko8wSQzlaMUg;N|;0%zR#8pot>9%E#H^er5dJdR_MCvvPj zT$;`WkU}QMWFVVklIOT_9>=6#z%l8s=a}UCIaV6s0WN?PoE(#ZT8>E`GuAc7aU7F; z7{?TUlpALotp4z6jS--%Mhe`xmSajFX`HJADIAkLn`5QKI3{_1BX?E1&CI6Cexz|s>1^hh{3vqcvu<4P#&Hu2`(&?xW8YSI=Thw?eNF2lgtvl* zYwr@aauLYDS&qq}i;iAPkqElKMiO7e=Egvg6ITX@nk>gk0vszjbmIy) zZk^@$Xc_KsQQX8VJ~6ajj!E8)W3t_oW0I$FO!9P&Nj{xpl4l$2X#0v7J3QYAP`cMr zj>*7Ej>*6pj!C|rW0G%nOnOD^FnqsT@Bxk~+C`3gpi<9aswqOaJ~dw9y-n^Ri|IlVkp-Oo}V0G2uVa>(z1Nv_8?PjxL93&#@l zy}_Ek4zcTDwIVCFpG>*3-l24Xk#br0@%SYG?J~E9pKJ-h?U=*iM@h5Uj@+^)? zo^7zY=apjw2wx$A+2G|+)N^%%las*;j>%vV9KshqCZUWR#;Ac)#bMGv%*jbVeY&pi zc9K$iCiPt8+CWdvP(*iCkC4ZP> zk{{!kpw^8yqiz z{!Q@1nm);!KjG?1ron2%Uupy>i|#WVlYz4wlkef#t_H0fD}~E3#n0rJZz z=9uJ`C-n@d@qIZac`C;gKTTt-_thM&cT?EPF&Q|)F&Q|?G087-O!6xnlRWb&R|iL_ ztZo63LcU|mYP#lNp z1Lc9CYBtBwUK0D*>3x-IcGVk?^u9`- z=|9BqO#euRXZoiyJkvjz;hBC>%QOArmg4~BX>2Y4kGj=KVua61L(kEoK#ZM2_sw}d zy3fvYnj0(kmJ|gwW6I4Zp6TWl$03eA1z0K3Tk`o}dbd8$%eD7X(_Os(p={}&Y+%bl z2tfP&9o(y}`ZFow``~wHsK4Qf0()8U{C{ip7ZoIL0p6R+lt;OVAGYGMgkBDaaKRr5 z^u!6h5Ihb{3Yp+V9Ry_uk$46;87o>}O>PJO)K2~V4$0pDFTl@ZCD8cmiBZfB7io&vkVsXp~8s{3CGQLxMF6Ol{&Y z_&Rb#Yk$(e2>!ddU>Q%0D!W1af%+~ZlGlJY;HSb$mD5}ughk@AIHtVxj1<~{H^3l% zqNf<_1|E#nMx0hcgTQ5QSeH)(FF+OOZ73UD!`1mB@G86v$*S3V3#@ljJN46D2spmN zsH4xod$qIl6C3}JBT}g zXJf~XmKwx;!Tw1`x6A_XG6|MfH2HI2?;+?_S`|9Lm#|Nii1ZZ$yAd!SQ@!48_Jf~& zS+I1`x&gHOKTP&}%ckNRNwE*K+vD!G{BXj^?KZ%#J z1Zf@(K)`}6Mk5&qzRcBGHn@!AdEi)dE84Cm2VMn-Mhcewn!UHc`aJC?cnaIWU$)eS zVj9T6b#3s{Gm~cE2m-cjR)70N27dz2#@HXE$^QW_!q~2}51RYC@q&fcP^2FT9)xk@ zHDV+X501t4i$0V;0)FRd49%K@!@$>{z(|H0p^AZ72}>$foYJa{Awkb~4qR)EhJ zs=rmF1h;^PzbRNg(Bgjpt^w=%hrz$1myp9WPJ9Q>#<)R~7xB;FckSGCc>@7uXk>aL zWbt^Cnk(|AVET6$P*WTZ10TfDnyzsIcuA5mE~J5v!k#`(i~+yf)@VbyVEgQTM!*{g zcnRH3FXHXsWLo}dMOFybUw7<>68IQg42S5tj7sE7a4jx!f#{Y#!nfcm3{3PEHmwgk>AH64e|I`I&PKw1C?q5cjU(9^@HX^osxwO97I*=MUcDQN z38(_RC&!6OCwU9-Zj=DYX*!Mv4@U;{DjE)^|7>zfvp3U@fVnFLWlM$(JP)RSb)whV z>)<)^qG z>V1A>*e-lb0Rk3&!Ax1=1W zfa@?ftkjBpC>TG%wf6H-`}G*`88|RX(Z@e>0MAAV>)m!fcni9 z9+?CQT!raV?}qP#@k!TnL^dI?+w-$4SNT81jX^iJ+n#UW8J zp}*=?q|E=p2)NwL=vHmP{$c6_O9^%ZMgRz+W09%L zw}4Ch1j|;f#P)(wZ6sIc|3e5UhXeXpeiEFd?UqqDI!6ZZf)IUVtN`nevQZoG#iMO; z+=3(o+#d@JT|W-o4OK`*PF2_+yc)Ngnjn3p5oIAD0_%9aTP*~4o+?-lYmM@4@TyqB zG7knQ!4JTf1_+i>T8_Q~v)zL7?1j=O!EMp#^j3cZycs2=I?zOD0Jp+y7_Q9!C}JP9 zQig#???&O^s;`YzY!aAmBd^qQ&;@*+n;Qm!JL8o;dLzpM(|_mE9asbo#S3-xDtQOo z6x%6w8mY+Rk0}B?)=S_sa6T3cYMuHB--B;)D7V-^`x+8N2~|X3zV@P4g`YB z0*zh~2@W0#xreIX2ONS%XhD3M-$#HapbK*tJgRf8N~X_dO_l9i#qF9cnb5$l7dvRST};)&p(9UoTT%NI?3JfH$Dc z^dkpQW$EC*#~QQiTC`aD!Ep^3Os2M>Rc; z74I8cCi}q05kb$GzMJ2jqTguS+cg7 zNo`^tjSOP9R-g@D~I1oqdX11)6Tdux{k0XNZa^={_%2ol6lsn6e5@b8$f=V=ZkgU4ay972qdtOxis9`4tR zcrbWDdt)}71RjG66}{KY1AA}6^}pW83J~z+>w;ysmcR~hB?g{HH9ig=gcZw+T7sv+ z^m@t=FctYla3Eghs8`{A@Q>WU)Vv4ghA8#vRBBV5z&p-j{twU+=!*akEI{;C>u_)i zw+5UDZiP0Yx9V*0L9}W;!MWf;{}U`{G<&PS+fZV9uXr0gAc9%eXjOI?ysQc4e`*xu z(N74_y9ITVzraT@8To4RO7Qs~jSCZxo=7m6DKD#`_|f3HImVVvPjC{qC>;UjC!fh+ z(T;xFPfH*d0kd#vgfGP*2`9U-DAlW|2+Usx900e+wp*H}e+JA?HdnxNBbntBO@0^r zEM`-^QP+X(&*H*CPoP;Zv|?;B=~WU1=1Zgpc-vQar<`VRIQSB#+b4<92p(MfiaX zaE+=0%sc3XmB*{NGFqwWw+HXRii)}=+3N%T$WEjZbUkx$D&Ik+jt0X+kzJ{Sk48zW?}3KN75s?aI*J9(gIH4Oz2HZ1GFJkBfO-4X;NS^*8^Qb^(iZ~{ zu1+n2nm_^=FFb9WYzBgnapgl>sgHq6F#R^s^k;z?SHz3Kk(l4L913rN7oZ#KRa^o- zk45N0Y9n@Zo6iwI|3;P4pl!7uz&^Nk8>S`T1n)&J&<)anu>k$ptjS}+d=7hqk6@(K zGc+Dt!Cn7ngUb@sHKm>E^f?6V!iwf3Q%hh4cmuae-2xtjC6?ZgKLB6n78IX?`ElSR zcng=~a_|IXsGa7psXwZ8k1{!_*Z(aMP|_1uyP5;-z^fj`P^+;GeEkh$sGdRwPHF=W zGB6)pwbI}v;Gb~iq_>H;z{=$|Ie-%14qnDz{~tj>?1#n*=oI+>bannwRTX&vzYih# zAqj{jh6x&pzfx3o(G!J+1t~|d$jD!aQc?K>6_3`sw`W3YN<|xsKMu88m{gjcBciRO zR$6RPX$QruHZt3jwd+<=xf{8kx$iq~ruxJ9%*>rTcjo(RzIWbxgIH5Ng&pvzN;81- za2lpsFG(18I&De$0N7rVG&qwi+MO~3nea2%m_aGiBP4Tmjqp z`hjpAYu;DdkA`h`Jpn$9ogkR@20RD$V~RsyR zN{VaravB9GY@f9)UkF!O?$Qs}v*vn9w!!{oPWTsLfg9|BpL3j~EC#5Y*&(=;jg6L( zk6@qW9sdctE+Lb;K#eer%%+_OjD_3z1=v7`QBH3-ceHUn$?y>?N+x0De8B(^0dD}4 zsJD|)GvJE;62fu6rLcR-lG?|AbHOuk0h`Ap8DKr!+|8)fUicVMY?0Kz4ck(G8ZIB~ z3;&PQpI1!4^0V+|Ir#sPFvyk-8o=W67NXT)zrVMvX6%8$Jm?O=?!jnCh=42mPzCq;wArs;ntI0IOdm*IM!+ z?Bj{=lny_G?I*qf54yp4$DX-38y?6LN(Ph&m(Dl!X)Xn^T%i4Z9(-h}`gw$aOq9T7 z*ZG2B`9tvF5EG!RgX^um;`53TI_;eHz!97@zaag+1=m>K)%}!${1Wq)>pZ-&r?Gqy zw=zSVtNN34kOUv0UfY2TxCLhuBlX#Ey7&eq)VIUU-x;ATh6^}hu_DmkbyiYfPvLs_ zVj){2>98JdA&&1O+zd~$b~2~n^hZtV^(<`n*9lix&M09LGN2CaO!XlHd@y?`1+7G- zTBvS;cVmb~$_?kkPq1@YEbND)_Znx_K`yreEzvWunff+sx4Z*x*koqtC|r;tF{9f5 zzeB+cD}UbsmtSWNiToS(=b0>4&&j0gUo?rufp8bjL=RvToQ$1Fl>uK5+grCBxSEa4 zFzP-3UqC?xLX#vH%!AwFjg+p2*Y?9QigS4u&b-Ck-~imtn@#@bsnzTJ(TJVUYWENL zO0_))<|3blOYswh9%g0_z3PxsZ2>e>2?mx;I2bUw{YqbBLNZ!AAE@!C;ko0Knn$Dt*zD9@LzdCRj<5R*c8VZ z!J1Y|`@ZlggszA1Fu3$(vpv57PS|etij&~EcvCGC#qjNml|xj+fga5$g$es@X-d2lRmICO`Fa2HFa2XH@ZA7okzH|%u0?^jSVw-#=7F@;)B zH&HMQZ>VHIdBdIX0z$HT<%aJK=84B)sCXpRK@;_vR-&;P?!a&jkoIkGH8P^N^Jm~y zRzPzBc7G&hQ%|TmjLt`ouQIP%uYeoLt2MgwzFh;P1&Tc>|80hESq4 z*9s@Y{cbegFCAV(-mee!Y6-Jp-*_WqGpC_{9F++QNjVK#+l}|DhW&UuJ-{8Xt!B+| zG9Q~CBLjE?Zea82={^4b7#xjV(AS@X*I7#t;@*ZDFl9N?K@4o)AW7BZJhG(z_wW(i zt&$P7WZAHPC^II8<}Ua);)!CZUjo0uR%^NNI`~3GAc9gd=GIYQ-*6Y)^A+?rI@ zGU@Z^c`HC?)ubkqdg=K}OE9@@ep!3`m8a zN>n;<=) zZ5XSzp=JiUPseDIiWn*FuZE*Jqn{%-Zxmcj=%8mH8$M|5p^D+HNC%7S#Jc#c#T29y zI%tKdglmXxvg8JJaLa6S^l%rPOz?#ecvJo++o_?P6m z&-sOda#UUqAQH*9FGzsjv6dtqE+F96GjJeoOxq)af z5L`V+L0%D4CJpw&Uou5XL%n?}oM7!sTj3uG4YXtZ6mHa2I=&59A4#!6z-Ds)h@A!YrxZ0ykRq z2jL6yJ^4zAkHgJG67f2?`i6onoVL7PItaOo8Nsn?8x;pf$Cy|p8U8tVjxADsKd+Nw z3GK~rnRVWEmb$)xBgW#k9)x4@3hw1{!_^e5Cyo3xtVXyNE_~NG!n#3x-Av$x7#YAG zPA&DejBJBLXY2Si%4viIB-(pVyo-XvY<#oi z25-S-=zWp!3Ah!ZQ|*;s`x3U(OFzJAIBFeQsHltC7SA5(#K9XmzB)#dG1tJQuC)(M zryzQu*&<}aiw63_+vSFL!E;m1>!W*N{!=2t1NfYBcvfW4v^s0yPss9WJFykc#nL9x zUOm7;*tNI*trYYoSVHx@24`XW4c>REz8=RbTG3+`3Aaa$!FPw$`Rr9hVTM8;^5M6AZ;3?P^vU*i-#X_&ahb=Wb19$L*4@-aF!kvV# zLxjU-V@IqlOz+v~Uuukr;1g+3_MwSq)8Pfgt9_({o8T_%hI3&5LnaHn9QKj%OO^KP z)b*D4d=a*@Kl@w?dX+KdGNs4ie3Gb%(!m#SHQr2{+K@Sf4oI~&)p4*rLj&PsaZWIw zl>yhV&CH@drPevBJ)11OMD7#{63I8IHBt?3hf9W#5|jbm3!k*4ex>T5MDkY%(K@*1 zzhrSms$YQpyzR-52Y3~JpBd8wJ`MNbesr(y=Q`&oXtJg>x`;LHWei0;Tt+}WKsro? z?E|C?FZnUyLedb~p{$h@uw-8^PVSwHYDE~i%29LaL3{3{y zmgEbb@|p_UQ$7!_3nAKz3_Q^ixD?B#r??8Xj~H!)Yd$qHwG%#xO!#;JesM9%IZDA3 zR>Amcz_GiW z@P*vp>+k^zF18u9TdjDB@pc>GeD)|>3wFc3aktue9fE`JtMKnFaGj-g-@<-mKxO_u&P!=>sKr7H#7DX6xDs0Fr0lfM`D~hWhtuFsEWN!SK8AbMmhF$QkGMZZ zuHOV7NHpH`dDvd_W;k|@3EAF**QPi_gHro31rN;B?lQ{x8qVM0gfEdBgq1Ws_-?n5 zsJN9SOXtj6RK9STvv5)1kEY6#-EN-Yi>YlL71}>S9skdH*vI$ob%J5)s{=RGCX5ap z=-X49IXZMum^vM|r?ym;9H^~QCF)Zk2Wt0Ia+&%d=b_G~&qs$&@I@3IRkKB2t#){N X=v86cIWg9|HZPqEn`_I`L$CZl=D9l^ delta 49411 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 Rh$~GEb&lzB{`Sbf{|`BZXP*E7 diff --git a/STS/Core/Src/yunhorn_sts_process.c b/STS/Core/Src/yunhorn_sts_process.c index 36a8498..86cc5bd 100644 --- a/STS/Core/Src/yunhorn_sts_process.c +++ b/STS/Core/Src/yunhorn_sts_process.c @@ -550,10 +550,11 @@ void STS_YunhornSTSEventP5_Process(void) STS_TOF_L8_Process(); + OnSensorL8AStateChanged(); - if (sts_fhmos_state_changed) + if (sts_fhmos_state_changed ==1) { - sts_fhmos_state_changed = 0; + sts_fhmos_state_changed =0; APP_LOG(TS_OFF, VLEVEL_M, "\r\n Upload Fall State Type 1 \r\n"); @@ -564,6 +565,8 @@ void STS_YunhornSTSEventP5_Process(void) #if 1 if (sts_fhmos_bitmap_pending == FHMOS_BITMAP_GENERATED) { + UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); + APP_LOG(TS_OFF, VLEVEL_M, "\r\n Upload Fall Gesture Type 2 , status=%d \r\n", sts_fhmos_bitmap_pending); STS_FHMOS_sensor_upload_map(0x02); } else if (sts_fhmos_bitmap_pending == FHMOS_BITMAP_2D_FINISHED) { @@ -2597,15 +2600,8 @@ void YunhornSTSDurationCheckTimer(void) LED_RED_ON; over_threshold |= 1<<6; - // upload state confirm message - if (sts_fhmos_bitmap_pending == FHMOS_BITMAP_BLANK) - { - APP_LOG(TS_OFF, VLEVEL_M, "\r\nGenerate Fall Gesture Map, bitmap state=%d \r\n", sts_fhmos_bitmap_pending); - // UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); + UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); - //APP_LOG(TS_OFF, VLEVEL_M, "\r\nGenerate Fall Gesture Map\r\n"); - sts_generate_fall_gesture_map(); - } } else { @@ -2620,6 +2616,16 @@ void YunhornSTSDurationCheckTimer(void) // if (sts_fhmos_bitmap_pending == 1) //APP_LOG(TS_OFF, VLEVEL_M, "\r\nFall state KEPT .....\r\n"); LED_RED_ON; + // upload state confirm message + if (sts_fhmos_bitmap_pending == FHMOS_BITMAP_BLANK) + { + APP_LOG(TS_OFF, VLEVEL_M, "\r\nGenerate Fall Gesture Map, bitmap state=%d \r\n", sts_fhmos_bitmap_pending); + // UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); + + //APP_LOG(TS_OFF, VLEVEL_M, "\r\nGenerate Fall Gesture Map\r\n"); + sts_generate_fall_gesture_map(); + } + break; case STS_FHMOS_FALL_STATE_NORMAL: @@ -3142,9 +3148,9 @@ void OnSensorL8AStateChanged(void) APP_LOG(TS_OFF, VLEVEL_L, "\r\n Head Level Rise up or Out of Focus Area ++++++++++ \r\n"); sts_fhmos_state_changed = 1; fhmos_data.state_fall_released = 1; - } else { - sts_fhmos_state_changed = 0; - } + } //else { + // sts_fhmos_state_changed = 0; + //} } last_head_level_low_state = sts_head_level_low; diff --git a/STS/TOF/App/app_tof.c b/STS/TOF/App/app_tof.c index 89577d5..7af13bd 100644 --- a/STS/TOF/App/app_tof.c +++ b/STS/TOF/App/app_tof.c @@ -55,7 +55,9 @@ extern volatile uint8_t sts_fhmos_state_changed; extern volatile uint8_t sts_fhmos_bitmap_pending; #endif #include "stm32wlxx_nucleo.h" -static int to_confirm = 0; +//static int to_confirm = 0; +static uint8_t yes_count=0, no_count=0; +#define TIME_C 2 static uint32_t STS_Get_Center_Range_Distance(RANGING_SENSOR_Result_t *Result); uint16_t bg_distance[64]={0}; uint8_t idx[64]={0}; @@ -424,12 +426,12 @@ void sts_generate_fall_gesture_map(void) { for (i = 0; i < 64; i++) { - if (i % 8 ==0) APP_LOG(TS_OFF, VLEVEL_H, "\r\n[cm] "); + //if (i % 8 ==0) APP_LOG(TS_OFF, VLEVEL_H, "\r\n[cm] "); if ((Result.ZoneResult[i].NumberOfTargets > 0)) { bg_distance[i] += (uint16_t) Result.ZoneResult[i].Distance[0]; idx[i] ++; - APP_LOG(TS_OFF, VLEVEL_H, "|%3d ", Result.ZoneResult[i].Distance[0]/10); + //APP_LOG(TS_OFF, VLEVEL_H, "|%3d ", Result.ZoneResult[i].Distance[0]/10); } } } @@ -438,9 +440,9 @@ void sts_generate_fall_gesture_map(void) for (i=0; i< 64; i++) { - if (i%8==0) APP_LOG(TS_OFF, VLEVEL_H, "\r\n %2d ", i); + //if (i%8==0) APP_LOG(TS_OFF, VLEVEL_H, "\r\n %2d ", i); bg_distance[i] /= idx[i]; - APP_LOG(TS_OFF, VLEVEL_H, "|%3d ", bg_distance[i]/10); + //APP_LOG(TS_OFF, VLEVEL_H, "|%3d ", bg_distance[i]/10); } @@ -458,7 +460,7 @@ void sts_generate_fall_gesture_map(void) } fhmos_gesture.h2cm[i] = (uint8_t)abs(sts_sensor_install_height - range_distance)/10; - //APP_LOG(TS_OFF, VLEVEL_M, "\r\nGesture h_2cm:%4d maskoff height_cm: %4d \r\n", fhmos_gesture.h2cm[i], fhmos_cfg.th_gesture_mask_off_height_cm); + // APP_LOG(TS_OFF, VLEVEL_M, "\r\nGesture h_2cm:%4d maskoff height_cm: %4d \r\n", fhmos_gesture.h2cm[i], fhmos_cfg.th_gesture_mask_off_height_cm); if (fhmos_gesture.h2cm[i] > fhmos_cfg.th_gesture_mask_off_height_cm) { fhmos_gesture.maskoff[i] = 1; @@ -502,8 +504,8 @@ void sts_generate_fall_gesture_map(void) if (i%4 == 0) APP_LOG(TS_OFF, VLEVEL_M, "\r\n"); //h4 = MIN(fhmos_gesture.h2cm[2*i+0],sts_gesture_mask_cap_height_2cm)/8; //l4 = MIN(fhmos_gesture.h2cm[2*i+1],sts_gesture_mask_cap_height_2cm)/8; - h4 = 0xff&(fhmos_gesture.h2cm[2*i+0]); - l4 = 0xff&(fhmos_gesture.h2cm[2*i+1]); + h4 = 0xff&(fhmos_gesture.h2cm[2*i+0]/5); // 1 cm to 5 cm max 80 cm + l4 = 0xff&(fhmos_gesture.h2cm[2*i+1]/5); fhmos_gesture.cube[i] = ((h4&0x0f)<<4)|(l4&0x0f); APP_LOG(TS_OFF, VLEVEL_M, " [%2d_%2d]", (fhmos_gesture.cube[i]>>4)&0x0f, (fhmos_gesture.cube[i]&0x0f)); @@ -616,6 +618,7 @@ void STS_TOF_L8_Process(void) if (status == BSP_ERROR_NONE) { print_result(&Result); + } else { APP_LOG(TS_OFF, VLEVEL_M, "\r\n x \r\n"); } @@ -825,23 +828,36 @@ static void print_result(RANGING_SENSOR_Result_t *Result) && (head_height_level_from_floor_mm >= (10*fhmos_cfg.th_fall_body_min_height_cm ))) { //to_confirm ++; - if (to_confirm++ >= 3 ) + if (yes_count < TIME_C) { - sts_head_level_low = 1; - // to_confirm = 0; + yes_count ++; + } else { + no_count =0; } } else if ((head_distance_from_ceiling_mm < (factor2_head_level_from_floor_mm - 150))) // TODO XXX 50mm gap to avoid flapping back and forth { - sts_head_level_low = 0; - sts_fhmos_bitmap_pending = FHMOS_BITMAP_BLANK; - to_confirm = 0; - APP_LOG(TS_OFF, VLEVEL_M, "\r\n return zero statues, bitmap status=%d \r\n", sts_fhmos_bitmap_pending); + if (no_count < TIME_C) + { + no_count ++; + } else { + yes_count =0; + } } + if (yes_count > (TIME_C -1)) + { + sts_head_level_low = 1; + } else if (no_count > (TIME_C -1)) + { - OnSensorL8AStateChanged(); + sts_head_level_low = 0; + sts_fhmos_bitmap_pending = FHMOS_BITMAP_BLANK; + APP_LOG(TS_OFF, VLEVEL_M, "\r\n return zero statues, bitmap status=%d \r\n", sts_fhmos_bitmap_pending); + } + + //OnSensorL8AStateChanged(); }