From 17162a2d855f554f79e9c65e735f92ef41c4a7ee Mon Sep 17 00:00:00 2001 From: Dmitry Borisenko <49808844+DmitryBorisenko33@users.noreply.github.com> Date: Fri, 18 Dec 2020 23:52:35 +0100 Subject: [PATCH] memory remain --- data/set.device.json.gz | Bin 2745 -> 2780 bytes data_ungzip/set.device.json | 8 ++++++++ data_ungzip/set.device.json.gz | Bin 0 -> 2780 bytes include/FileSystem.h | 20 ++++---------------- src/FileSystem.cpp | 22 ++++++++++++++++++++++ src/main.cpp | 4 ++-- 6 files changed, 36 insertions(+), 18 deletions(-) create mode 100644 data_ungzip/set.device.json.gz create mode 100644 src/FileSystem.cpp diff --git a/data/set.device.json.gz b/data/set.device.json.gz index 0d278d22fa6d799ac687e8110d9771cc6f2f90df..cf2a10771ba8b58ed225d08cbd5fbbd8344ad147 100644 GIT binary patch delta 2739 zcmV;k3QYC672FjDABzYGzA%vn9~~?Z0;F~7hLWX-A_PbjQ4R+ zgVw55Qz>hclihc;g;5O6@nlsiC>6t7(!PIdax9#)p_?a$@!nkVb}72KS1I-rLCGV| zcxQaDcsb9M;Gdi`to#WaeW$1;XVeGA2Wz%ttK`r4Q~tDnj(uhyal~d>Eh|;4`I2t$ z*g84+Gr8@RSdGmAuX%q8dFb{}rO)mlY1Z^_B5_YIYo>Mjr*b%GBUPkcq0vtz&hCEz zF6aCyR`+j8>PzxAc14!Wli~}Y)oQ|e#KI>`j?`OMLb0#OH zWuvkk)%88?j5iE*FeXzsi^-7zh)91p^{WV{MGgWTyczK zc+3}(zUM~QJ8N)ex@#NC*{p6tCej81(3Z8mwp2vEtL!a0Fsq}JO8#~B34Im*E%?(C zM3E2Z!(Y&gA)M6Kxwc|TBXE;c0*6^+_4j zLdMA$d%zYTM0`Q2kW46U)gWqo0*k-lUtu)}C&-uXYKD_e1*B6Wl9pEZQxaXw29XT3 z|F|-oWjbJ)?qmss>Og23Sl58*HCRHHE8u&c0yG9^|0eqY%L`(WHH1k1%$UUHP*xC% zp#MxXK44762Y8sDg>CUKvUz`c{2b2t7b1u}9*8{Nh0=N4Y9Mn7b1Y1OOkklGYj5}o{!4;lx$Hcii9}?K zfn+iQ-LzaPt3)^5Nf$#VY|MMMAUwYwndW#)*72yarcz`0l}>-t*EnFaX;&(pfZ2W9 z4-f? z#kDQ{*GAOejzl<>5Td3Mp`u2ln3Q!v65RM1Ip-V^zSfmJKunC~6b(N}l%wZ(p2pA> za%i#oyJVs&$ zBx$FkM9EY-NEIpY^gFB$n!U$|MZrPj0xqx;fJ|k{d00FLlGHFOfRdsxnc<0#B>Kqf z#fsv1V^R@Lb`U+$kWN9m!R1flQK_QZ5hNa$4Xa2JLmYp3h+4y^E=r18kU;9+Bs?sQ z*gL}MJlae<{e495nMVo8niis@wNyr~aKti@UEAnjt%SzY+IoPA=HJqmT2vZRyS z z2^^I*(S(0cXmZ|nw5`o3LZn3dahIQY1VIF^fZk}5!Ce$x{7V#gnq*x8WP#;J6Du9G zD8OZb+a!j%KDney#q4|m#Z z+KxO0cZm$=i-un~XsU;a!0d{B>bef#J*RKDpTS>SY7 zx`-tE>Yz>WFCeLQ7M$xy%GmG*`6AjrtPu^%y&-f!?RG;+jeDJ+D9)k=Fd)=Kn61%) zXAM!pkSpv2p#XvnoQfjWTG7G0=*{0P#+d!#g0dL-^A#u?Zgf~Kfj%#Kc+v4=f790O z$5Ma6$cIvS_td}`ez*@T`I44Dk+aV9#jNC&jXn$f5bn1ubj}~`&0>m2YP&IfV-*AK z2WPs|y6Tm($wXq=#K0Fc!cJV}l!jG-8=hc)``en~Z=%=>ikY8Uu@19y+oO99{`{*$ zusE)qQrx_w+g`TnYNmS3(N0!0*IVJ0ba#JjIYFgr#+H(0xp3x6h%H|^0n-QI)rVE_ zRun2GQCqRH3OFe^jFlX%uzq=bBit5KwNrXtTP{t2>Jn^CV&%l-ug82;2q9ezK`DS? zlVSWOn;CuvzE0IoNo4iwmzNc%sGG89*7vpml#^Qq+<))n9#EWVnxob`Xp zbB2;X0dsahB4;_O=47R$eMWLELszAxTesk6LgGuZqo{ht%}Qze49vmfMaQa`s*Duj z!KK?W_?eJw2)|$^K#KEaPp|+%YwS3=qN0)8XAner#(PV9a?!uqWy4smjCJG?I-kK^ zY)ADtTtc4g3iYkhy#WM(9o`}iqw0Sc@?nw+r&@0!Uzghe?d46OH7LD} z2;JYpn7X8e;GkMyjda9u_~jPbSmO!Z+a&QFCO5B{gSmGXZQV6sJuCnq`SphnQwSe-63y$x|#0y&1==jADe>phIdv3IQ^n>68dWfDS z&$HcZJYLkjQY8mXU^%|SIUdKAF<-Koa;-~c!`me`hWRowY2gcR%SuW1t z%x**Tg?MBO`Wa1~z*>Jl16khC3LXu3<{wXdQ~%SNoT4dgCS=8cpI2oeCU}}NF&Lnd zuBw_jqH^K>%--@-Nbb*Fzijho`h>XQ#!tzr=LR_Vu`Sajo`(+yxE?+FZ`lJKU;Xzc t@nobfCoG=BvBf@wEyN@U+V8Ro_$jp3vB!LPbn&9euRFQf(WnD0002!uOgI1l delta 2703 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 J|FgO*004CpGmiiO diff --git a/data_ungzip/set.device.json b/data_ungzip/set.device.json index ee17e69b..a6d32d35 100644 --- a/data_ungzip/set.device.json +++ b/data_ungzip/set.device.json @@ -49,6 +49,14 @@ "type": "h4", "title": "{{signal}}" }, + { + "type": "h4", + "title": "Осталось памяти: {{freeBytes}}" + }, + { + "type": "h4", + "title": "Осталось памяти: {{freePer}} %" + }, { "type": "hr" }, diff --git a/data_ungzip/set.device.json.gz b/data_ungzip/set.device.json.gz new file mode 100644 index 0000000000000000000000000000000000000000..cf2a10771ba8b58ed225d08cbd5fbbd8344ad147 GIT binary patch literal 2780 zcmV<23M2I&iwFq5Fx_7S0CQz@E@WkPX=7zBYIARH0Nq+gkJCUDz9aD;ED!>ub?Sza zrHCQ~NEA^H2oQ2&Cowp-u^oz{mDpXX=;eSwbb&Z<2+J;nkcGc6{zts`W}J{}hYkeD zc*cI^n^(uFE?y+TpCx(AEa*jdNme?{XJ|Igr(>?>RqWVt*D{xk^;x!TPq)m$>xO$7SoW|97jITgOlSC5VbLK%t+BB6AK?3QJ#Pyk8fq$IAB2_V>#-_uO5Q+}abi=%he z){tB&6Fk>m(mjLLs#Q}dYm<}RceI6349)RmRVyeJ!&}n6YjP}{v!RZ9AZgb0Zz6F|FKecC`loU@Xd_jm zUZK%XCC=^uF6aCyR`+j8>PzxAc14!Wli~}Y)oQ|e#KI>`j z?`OMLb0#OHWuvkk)%88?j5iE*FeXzsi^-7zh)6i~s|cq@COk5Bs$@7MltD}=j{&n^V zeHH#K_|p&0!Z;26;<8g zY321v8Pr0?$ryXU79d1?L8_2UC~nmtYJ38Vzu{kDH3%ojm+oqYlTHPsQzMd=R`^pA zUCaiN47C5aGMr^PV43b@354oEXc}18fax_@LY6Dwd!7O`250{!`vA)eVv#k3NdC;2 z#O6>|5Q?DxOf)`VOvMLyn4g7h@h`G@di)&D`4=LHJRXQV-i6Y6+-e|m33Dt=flOnP ze~BXZ0wMzZC@@XK|2J`}1tL7Yg2bGI=RN_#mq5&UP=89~Ba(a$qZzBCqP?YqKNCUr zjBKASqwJX&dyNQ#B-5w^?p_lZ%^*+;=vRM^lk6D8= zn1v5e167ICd9IXy)xRLI55(}20P15nht;x2daUlp0EWC8;q=0(t&zPmB=4FwITWo$ z5ch<=g^PEvLL1uPsb-At&OD+dM(^PX;tSi~Qq{j2F2!0|QS&Ip+8DbBa7+Urb=YgP zSo8wUp5*%2X;?kC;5XOd0@om%dolr#+7wt4o&1px8V9;IP0ye{lIkYchcI~gTlB!pkcE{s~Fn3f497UUt;{gn6!NhjbLyH2HO&u2$G~)I;JA& zxOMx1WHJKXv|K8yL^s_@7egj&%zL&VJii{9=6Fli@u;$nVsxupnye1hBr?%8vh5PhHC;64cyaObwLu`_!&9p91*_Ol|4XAjO7#!KS-3L=XjpR z&=usfCdNw8Y8u9ku8=LQ__pR~=g-S*E<%<|rR2Qnk)+_} kkqC66?dduMiiabVQ z1|(^xqeRJ6I!F~M@bo*Z4w}8kheg3b&1%Vcw2vZRyS z z2^^I*(S%TFa^82et<5Mxq(u91m!EkAK?JXW-e{7+T@+pXOB8sTWL*Jdf#pXND;=~b zz-58kB!;>^xujPl%#1%DsBzJO+zA?nfF${G&m_V4iB`V}$Ry(YHx3wub4K(JciL>) zjywhAR`C9ehujXA?rOMTG`lhi%T=P6xYNzB5%gdFOaOdPk8^$d=r~lq=^$C)bXdBG zB>U>1P4O=vsdg5e>qyGj@CNxJ+CHoi4a>bDbU^KPLrIN$ou4Sqq6RP^)I^xA(Sc_T zQNoZb>;$0zf(@LCBGy{b!My0r-z~w5cST2D+FM4><@ne6}*6qhq z!N`YFdH2-77=E}9Ecud_KasP}^u?^?m5n|N{1EQ9EOgEv?ag9}M{2t@?FVPN z)4J-FvdKhZ*~GvXG{R0?<&=h1fg7G+fBV~-;cueY3yPVaTConZbK9eP4*vYBL$Elm zoKoDpquXA#>T0HX%+XF(G}l|Jn^CV&%l-ug82;2q9ezK`DS?lVSWO zn;CuvzE0IoNo4iwmzNc%sGG89*7vpml#^Qq+<))n9#EWVnxob}6dhLS%4 zb9O)?XF00oWTm8iMsh7fSEZ#}x8P?&;!ColsCvcCN@@EH%)#SD$EujBj1=L)rQ0(2 znUHJ^QliqLJHY5JY*#drNzA(ZAYd!&t72b>t8_pTS*hNA);d zLZ0jj^{vvq0R(^@-Xad8>KO82k_x96gWw+QPb{|U8Hxm4Ji``}q z;qn!Gu`Zt55R+g`c^L(2ANe-0&7y4I5Q+O^N0uKT&zDxQS;IoipJ_EHy^RRn-@=%> zq=n$1T40TI#BuoL7TQ?j3EkTy@g3v3xDB;BnhSh^nQa)+a7(EnZuhLC=&FxMI!I&# zn=+V@<5HN!9za)2d?(QsoDH;rshzXre^<}m!oj}{P{zUaZ_Hvsw<`T!UO zydCI;d=L)Zj?q1FWaM%c$hE_Od4{l%r+p@PKD3X$`bHv(%c3ml0~0-WVMzpE1qA*^ zUkwH9F$QT=m4~H{LqLEB|IWgPy6aZi+dkV3FXr-wrkHRX`Rl<6sYIXRsVjfW*_(}P zL)75aby+bhit)#_fbxe6j_=6C3tHCb_{9)^IXKIEZnS&!gWv>uh@K_Sv)ybwUevu( zB?nDlIljX>uuC!FcX-ZT$2zX%y>DjXr}Y#1ug7C#lP{$Q#?|s!F3#Z0ZbS2hcw`Iu z8BLwQT0a9>-p~pj4S41sPkdAV)0&*3DQqTW#eknzWg#YbnlmvNppvetnmM9!;r`6t z@>59e&t1Q4^Jn^mxZ%c6$*SiDIQX$G( extern FS LittleFS; using littlefs_impl::LittleFSConfig; -extern FS *filesystem; +extern FS* filesystem; #define FileFS LittleFS #define FS_NAME "LittleFS" #else -extern FS *filesystem; +extern FS* filesystem; #define FileFS SPIFFS #define FS_NAME "SPIFFS" #endif -/* -* Информация о ФС - size_t totalBytes; // всего - size_t usedBytes; // использовано - size_t maxOpenFiles; // лимит на открые файлы - size_t maxPathLength; // лимит на полное пути + имя файла - FSInfo buf; - getInfo(buf); - size_t freeBytes = buf.totalBytes - buf.usedBytes; - float freePer = buf.usedBytes / buf.totalBytes * 100; -*/ -bool getInfo(FSInfo& info) { - return FileFS.info(info); -} \ No newline at end of file +extern void getFSInfo(); +extern bool getInfo(FSInfo& info); \ No newline at end of file diff --git a/src/FileSystem.cpp b/src/FileSystem.cpp new file mode 100644 index 00000000..9a658f70 --- /dev/null +++ b/src/FileSystem.cpp @@ -0,0 +1,22 @@ +#include "FileSystem.h" +#include "Global.h" + +void getFSInfo() { + // Информация о ФС + size_t totalBytes; // всего + size_t usedBytes; // использовано + size_t maxOpenFiles; // лимит на открые файлы + size_t maxPathLength; // лимит на полное пути + имя файла + + FSInfo buf; + getInfo(buf); + size_t freeBytes = buf.totalBytes - buf.usedBytes; + float freePer = buf.usedBytes / buf.totalBytes * 100; + + jsonWriteInt(configSetupJson, F("freeBytes"), freeBytes); + jsonWriteFloat(configSetupJson, F("freePer"), freePer); +} + +bool getInfo(FSInfo& info) { + return FileFS.info(info); +} \ No newline at end of file diff --git a/src/main.cpp b/src/main.cpp index 78e16b92..3bd8fb0a 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -22,6 +22,7 @@ #include "items/vSensorUltrasonic.h" #include "Telegram.h" #include "SoftUART.h" +#include "FileSystem.h" void not_async_actions(); @@ -66,9 +67,8 @@ void setup() { #ifdef SSDP_ENABLED SsdpInit(); #endif - + getFSInfo(); //esp_log_level_set("esp_littlefs", ESP_LOG_NONE); - just_load = false; initialized = true; }