From f75525ed24b9d90a16a4784129ef80383c858e21 Mon Sep 17 00:00:00 2001 From: Bilal Hassan <bilal.hassan@student.uibk.ac.at> Date: Tue, 26 Jul 2022 14:20:59 +0200 Subject: [PATCH] deep sleep mode --- .../deep_sleep/ESP32_LOW_POWER Management.pdf | Bin 0 -> 36837 bytes .../documentaion DeepSleep Timer wake up.docx | Bin 0 -> 7834 bytes .../deep_sleep_timer_wake_up.ino | 31 ++++++++++++++++++ .../deep_sleep/f_deep_sleep/f_deep_sleep.cpp | 23 +++++++++++++ .../deep_sleep/f_deep_sleep/f_deep_sleep.h | 6 ++++ 5 files changed, 60 insertions(+) create mode 100644 code-snippets/client/deep_sleep/ESP32_LOW_POWER Management.pdf create mode 100644 code-snippets/client/deep_sleep/documentaion DeepSleep Timer wake up.docx create mode 100644 code-snippets/client/deep_sleep/f_deep_sleep/examples/deep_sleep_timer_wake_up/deep_sleep_timer_wake_up.ino create mode 100644 code-snippets/client/deep_sleep/f_deep_sleep/f_deep_sleep.cpp create mode 100644 code-snippets/client/deep_sleep/f_deep_sleep/f_deep_sleep.h diff --git a/code-snippets/client/deep_sleep/ESP32_LOW_POWER Management.pdf b/code-snippets/client/deep_sleep/ESP32_LOW_POWER Management.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c93ade6a83ac217e56d40a0e53fe2f56c9b0dcc7 GIT binary patch literal 36837 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	j>q!ZJe=kvKrOjBq`zcRk1uW^hZ z|J*V5@xhcUfI`CWDWyW#z!#EA+ouo41}&&lDVzzn58E#l3rQvhloa0MsYO4as6D$1 zKEb%hamqx9DCT?~H7840yGOL~(PsLk!FAgu14eAhcu@KSSZul6wZ?iGG5tO2pjq;1 z?5Nc(Bx{;8AadK`<w*X>T$3xqJ=oO&1&aEu^#$w6Aa}ILa~I-dcG+hbXNt}UEN94` zS!4Qb;52$_jVy1nd>N~AgM=tH^(Z!_0q%j(+?7_4Ofm7%b%p_=-kR6)c%S7lxY3Iy zYlJ^o$0$#ZVY{R9n+MhfbL$zkUsJ<7Iqg2<eY4CXv?o@w?>BSN%mbwj^VN_UlHP;a zUfnbFpmX73fjAKAAg@zg01cUi)I@O3ro;YbU>)XDVH!jMo%E8gtwELV-uspemm$(? z4TjCpzU6bgO!Xu;y{Hp;7+ZZf=8!KePqE6jq#)t?j7TWV$W%2sSapMs`9GT6U<p?+ zhw>WQ%jYvSZI`jeO7UELHW1cK@VZOZL~I*!Yt<iG$P0S?+G~@IDgy#JAUTlxW+cxm zYl*#*Lpf^9unaH=qXRE8E=+E@Yu1>;Zy0a+j*IqqFaPakz=x7Zo=xH5hV4popa(=% zn3{}nvphNSG3(_N%yUFmq6XdJpnZRD@A(u`#-?j!p?Z|=g0qz92?yh3uBBH6C01b0 zET`T$Ls)i@i=7scE!os{uZCKRu?o^S>ZF=%&%8wyp9a<J%B>|Uoa12dAFZAv-dHA= zABR#Qr6W-b`<3t`I*m;=W`GSpgVSel=#k1VL53T_xEX1?4%xA@vSm6gb=ZBrFW@PF ziBc>b@aFWhqfJ~GOZI~P!k2cA=nyx_vJNVrM8%uAl4r^Z{-P3A+P$d_g2~ZA{Tx#I z$;*+Xwkq@qb#?A~$+<3$1;Jm8_lv&DG70l92>1`uE=*hBdO7TVb2&(2_`p`>IL?2S zNOR%o?GPwB9XNRqerB~XT@y`-iFG=7R3-crKD%8;=;N7G=PFlHQ&=P?uV=~|T6JWb zV^S_#GZk8}*Wt=nHC1<Z8?$K~7D%!0Q+J0VJIaa(?lOo*?4M#8N=dzdS<V}fRaz6V zC-$iNdPZ!`s3}9X4TQW)Oo8V~Rvf?3n9UoI8;0o++cY+cJKhCa=Y6v}+U_0$Gk$=U zOc=&SOvcFzPsA&@I_tKx=z62{OsO*Aa5Y=;NG{xfqA9rg_I6cm<~rs**9UO;jwYu~ z2+hetvqr(xCurJQ9^*I74>V==ffg_NqVUb7u?##lNnkg*8jL-g2g!PQx$PZLy!PnC zB6zJx#CD92<IHb7oF}tW7H32*L{Z+|Ip%-0SjHq46Fn<rg4-i2Gmb>h{)YQZ#os}8 z?jD<Vw!w99V$hQFzVBA1((*j$)=q4=zO*RY1a5q56p)Rn^5M|R!7k1>XNAVH^%;vv z#4QO&fvfXkyTrpSTZ*)~@Yh1BijT6wb|YbsT9!6w8SMu|)H7aRDaBMjh!g|8)N89A zZq-;DDG?G_n9RGf&L%fl*G(#IhRjC>Ng$o%z&uJ^kv(v-u2rr4!S#@qMbxY<JfhK5 zDQKtPREspk)L^~%X3pBF!joBb*{wa=Uw!Dkt)x^-@PeUf?5m+=Bq{}#j3Bo}f&rAY z5ZhX_?(H{j=JA)x%Tz~R!cfl~w%|6sD8YrD<DoA!8DMSFzVV5^{CwVJ)29AGyiGZ` z;HxPgtY&tALU}0kl+weA2@NW%x%%>_Ms}BC6A|GcjNC2N;(cG21(~<1tPCwd3&So6 z@Nch^_{BaA8@`tAL!)1@g9p4*ASF%f5vgW5XOd!Jp*nu?U~<gWt{mt`dS5H%lM!o( ziMG-!3vYP#ve0x@{G~06G)+0~!|eHK+sU_YNMH$UAqWQ4ql>fYK9C=ik%&2Ln`vB; zixL1;5Uke8=9xHjZBpx5g7<>mFCK`A_vX)EmRY!;T{&+yD`PO<M}@e&7zlEc7+BMq ziKBQsD});4yd+`z8Yw^*{wykN(p|k;>FTN@y*eo_*~9e8H}F{hi`L4r@1Xo-M`Ok2 zDXOoYQMu8(WxcG9myO?GREfqm8Zn=$WvC|~L75lA&EPZ$p;ERmdFPWeC05nxEyN&M z3FOgx!n~NPgYQ(1y_Mv|cz)n3jn^NQt0zlMfxe5aKBS#IPGpMvxoWRNOE@(`#N@E% zTNs})nLqBz^LbXcUKVrUhlL74x7u62i=&%^je0ZTOZyp6K^jNtxd0Nv5RZgz?+{BS zK<7)s92kA_ok%#NcPyRlNMQ$X$5@vG4f=XjLK3)}L)HZFq8o*~oVC58?~)~G%?ZVD zit`n7SB(gUVL(sdk#J9$mNzxcvYDbtghjxxq~BhzaU+?8=G*hoZ;K^OP+Oj67|@!p zF$R#9XGGgdfMHrf%3`osnbo4@BfPHzA3Hh^!BRi#=ntc6m1#Wi_~bVZt?S!k<c$^# zjo$)zMK9`(iY<V|4eOjHt|K$`F^s#&T@T*k3*{#D7a8fy-eF`i<8lCrdMu~V7l4`T zwczOPG$piNFOD_d!Bkl7C^*d<Ja$f^(J@O=E;Ol5FmN%7S2p2iU8NrVs16I-fpq*- zZ}`h0m@M9YEc6!C4T39_^z<aO7lYexU|0EI9zu(6<m+iD-Xpc`A>uDmF_MkG9LT6Y zmU<p!sR&KGB`qr}B_%taN%Xc(BFWsUcye01b0CpDior-G{Q8aUM4oS=Re`*!ukob1 z%H(eC!)n9GeM5yQ+?Y`4ySOOZFYc*^NTcwj0F>Ke`nnfT4CWP{R90zd=b0b(xEF#Q zwVxRYN)92s?Q%>m!#d)6c@tACLTfmdl4iForuwSkA$eP;JN3jn0%@W<{kHRJc*B5m zv7CzT$y^W_yAeX7gsFPow82EKIu{ltiM;xCVs}l>0#mJh-?Rd=>+6gU?xqgdOa(6W z6ZZz5`+Kbt@tU36lev4e9EJwQ;Ir-P+t9P)AF6Y4QJp3%wjRLvH`KHL9;*Hx(Rqyf zF)*<FyQJ^;N*@0)Rt<_K{ful%^1m15e@DqHCME>>mWw}uAW*(KD7XauOBD?<O>HT& z51OVw>uT^DT3T828i2SmASh*?R#fxXt?wD_kEK7pgG0Z@E&n&{(4T|+9-9NfSKo*G zn7NOyObyDjr=|l900>|P1q)e#pa}b~iTl)#k+#25_n8?%NBS5Oe9Yqq1@u5$Kd~Vu zP$=`S)O}Fo@<(tE`Z3J-S8xu5$o&k?J%%WM3C;mQ;kci{xyPCde+1|L0U=`e3nBV< zaPCo10R9i6a>SuRqDY$PJ`c&d*vVgCNeWuCy$G&K3vzr93yj4?(^3WS`xAx$zU8PI zyf7$MQ1Xg$jT)(!sUgh%7$A$(Moc5A9V9a5spe0Tc&gPG1n(bZ@6b@Uu;y~CB}nlO z-6s-vzA;}dT_s;8+crO4pR-)Q&4Y8&^$oN)v7kZ#l#T~}G-P1<s&&F?VV(v#kAYq@ zm0N$@+Qn6=N|-=%A)Sn$W;o%A!zXUu(H#_qdhu*#g`ikzqmUdUHKF|c?CByOC4o`K zF*$1EF$Q`z;dXN)xnA=t^C-5jW)ns6-Z?q4R`HtBHZ}qRz8{BUksVjE`za^i<6w%5 zjhB*4Obt}LpE+X-`POQnxZT*W{2;kq?!y$qC`I7{V?0LSC4`zRY)yB7(H?K`A{-ST zR%qBo)Y}D3CA|gV$RuDP0W~KA-7Vxnk>d;Wnnoykg*TfJ+U6X5d6mh!w0AGW9q7xB zS}Qc^o`+TGH(>>F^c)3Pw5saAns3doeLcNc9Cs~L1s2nnezfGjDRPKN@S;laO;tic z!2nxt0}>ayN~#cR+Utv_%q4Gg(EYqE=chDC7Pen6t8!CLzsTRm?U%GL^UhC>vzVT9 z5!e*tV)#<P9@dKDHjzXu>|HrWet%#U^l;79(&=5j=1kzKlxK<Uo1pQWmkY@V`l7>K zFk|_O4$t1v*BWn$QD>?6LFn>j^NPLo(}GWBo{BWC%`@)a8L8V*6a1U6XBYiK!4B<R zJYFOv@xJoYzr-kB{i@J1#6EEgiw1d;o=E0^@^reZKbicH4{trVhL0rSk`TS)a!q~3 zaQBG$eva86|7BF9#7Z|JQLF9dXR|ixxBFsnE{E?ZJpGpxpz8q8P$Chd1rU_Y?H~My zDYs^2wAaD2J?2n9$ePvmn!f7w+pDU^>Z`yfS~WYQrnl_P5x+*1VQYq5zZ~N-f2zgT z@d{YE{cTD+BIC`fbk!YUB9>d^k_gSU|42pIS6JWFI;P-2QG0krqPft|{b#)aG(7>G z0UW66=iNHDr!8&;$Fd>+;30pAdCb2!$bZ%cKzH`9WrKcmklYgd+=^n~9pod}_j~CV z5KQ=g<sU(k#;+BTzW4lhSN_jR#vfz+NB0Q$%RK@CO#fHz@uzn2KX#9g&h-aj399n) zr=t1Y@Z+d|XcvE0Hu;~rM{OMqO-&6Qoz*jobGTFZaoh8=vodg~snxsv8=G5wq#Xo9 zA3VAsPMsLnF5m;Aewfo{`*D)5P?U$qQUbo8b3X!M5{$c`4SsW#sGo;-SXgRV&S+DU z!eCQV7i;6!5;A)BR6g$4iqg$PBO@vT&0S4RQq4f-ax!{WphPosG0|&A=3?-!Zb`@i zi2+gSY?+~=ZZdN6qLE2jTG~mGKI(~HTH(skF-fvPs_yrY!qno_6e41h=DmZIl7}LF zVzN)(s3M56ZET=^j!Hu%zg*8uLtO*IX(xlQo`;1X;pdO)=VZHdy?sb1U924p$74Ie zXk>PMAZOFu|6D$Ihh4g(C)1;A$Gl;~bT4;r#h+4NQCnIYnQG*C_qKX`E<*mi|JxnA zpqAnEdIsa%POY89jGLC@R6#)b9A!;(pF)+*eryb>hmYvymoYN=g}LzwHAy3>*tpSt z$*~&yWao=IsFTb*<zpeO;Rt_`%!A$i==foVT4V!d5pEIJ7;ipp%XzbqsFs3rGWI}I zc;Ed%tF>CRv;KsN2+u<6B~Vr1(F~VC^{(?b7MQizXn|MGxC26ORoLIo=2jJ0(#CYP zp4=rvKEaGFV*Q7^`-i^E!1QmW9`uL&U+N#3u9Z1Gow^RFgqW3quCBGZt|^fGv5&_~ z3#48C)e7`1gD)YCuK;>xpaIg;FyTwuXj)o3;)A~N`Fklhd+VP&{Sej2<jgFsv<)<E ze*WrFTYK!7jE{{DKt~5)regvy)6+AuC;<SZp!d&~Kc0EWewuzf4=De{s(*~{J5_CH z4XQfy{lKI^rO+(RbZoSBEg$vQ$L9)KUQ1og#}ZT^x$)<=p_wV)<JU!lq}lIAF*BXV zZRj7{BDxNCW|p9WY>eNZ?m!PS-0wx%ep>&0X0f-_)q@6!u1wIN>Q{fg@R=AHL433x z{=aPWj0}%e-5y`~rhnN0^sJBg_-{5KBO^%K{M`oHdMy9;TRYIck6)+uyNv<x=oEjm z0YU2UpZ(D>10TPy?e}&7hDR>{HyePNiSf_=K(IN}-;RTs2_%vKZC_T<$@{H85UCCT zU6jAu80kTN{SO;}0ptb$urboHf_&j0`!f9PbLr?opYlgLdb+=#D|!aH$Esz2^vCqK za}Q*CEO_;2I~I__{D+MR2-58Tv@rnwHfAPf5WN3KJ7&ORJ;cY?zpo8CdH_i1|I^0E z{CC@<-2S(Ak5}^J>zDpOc);ImEPopx9q1bRTRUa|2y*zNKTtWyzqg|U6+-)4yMO49 zndQ%GjgAHIcn?3mevX+1G?{<c=;>Hk|2$rL(7F2ab3v<)$3&gq`UA~5=ui8fHhNHj zwLfi4kIcaD`+|syzqMne``f&Mz>G(y@yEXOph9tfvpwdL{Mimv7Vd90)?e;7YfDW~ z=7r_=EEj1*N018xJuXO@nSp9Zf=2x4@V=Mx`^)(W@qyNrZ#8up0Sv6#dJH;x^m+gt wRu<3|qr(cM0|0e288vkP9MJ!{$-kbwtgJ!a|GTrJX9W2vXky}b68zBr4~;MIDgXcg literal 0 HcmV?d00001 diff --git a/code-snippets/client/deep_sleep/documentaion DeepSleep Timer wake up.docx b/code-snippets/client/deep_sleep/documentaion DeepSleep Timer wake up.docx new file mode 100644 index 0000000000000000000000000000000000000000..ec4930d43b77bb43e1a22e65f8c6fc565b9ae987 GIT binary patch literal 7834 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 TKL8g1KzlgA4?Pd?@45d!c9725 literal 0 HcmV?d00001 diff --git a/code-snippets/client/deep_sleep/f_deep_sleep/examples/deep_sleep_timer_wake_up/deep_sleep_timer_wake_up.ino b/code-snippets/client/deep_sleep/f_deep_sleep/examples/deep_sleep_timer_wake_up/deep_sleep_timer_wake_up.ino new file mode 100644 index 0000000..c17462c --- /dev/null +++ b/code-snippets/client/deep_sleep/f_deep_sleep/examples/deep_sleep_timer_wake_up/deep_sleep_timer_wake_up.ino @@ -0,0 +1,31 @@ +#include <f_deep_sleep.h> +/* +This code is under Public Domain License. +Author: Pranav Cherukupalli <cherukupallip@gmail.com> +*/ + +/* Data saved on the RTC memory will not be deletet while the deep sleep mode */ +RTC_DATA_ATTR int bootCount = 0; +/* First we configure the wake up source We set our ESP32 to wake up every 5 seconds */ +#define TIME_TO_SLEEP 5 + +void setup(){ + Serial.begin(115200); + Serial.println("******************After weak up Programm starts in setup**********************"); + delay(1000); //Take some time to open up the Serial Monitor + +} + + +void loop(){ + ++bootCount; + Serial.println("Boot number: " + String(bootCount)); + //Print the wakeup reason for ESP32 + print_wakeup_reason(); + Serial.println("Setup ESP32 to sleep for every " + String(TIME_TO_SLEEP) + " Seconds"); + Serial.println("Going to sleep now"); + Serial.println(); + Serial.flush(); + //going to sleep + deep_sleep(TIME_TO_SLEEP); +} diff --git a/code-snippets/client/deep_sleep/f_deep_sleep/f_deep_sleep.cpp b/code-snippets/client/deep_sleep/f_deep_sleep/f_deep_sleep.cpp new file mode 100644 index 0000000..fc82775 --- /dev/null +++ b/code-snippets/client/deep_sleep/f_deep_sleep/f_deep_sleep.cpp @@ -0,0 +1,23 @@ +#include "f_deep_sleep.h" + +void print_wakeup_reason(){ + esp_sleep_wakeup_cause_t wakeup_reason; + + wakeup_reason = esp_sleep_get_wakeup_cause(); + + switch(wakeup_reason) + { + case ESP_SLEEP_WAKEUP_EXT0 : Serial.println("Wakeup caused by external signal using RTC_IO"); break; + case ESP_SLEEP_WAKEUP_EXT1 : Serial.println("Wakeup caused by external signal using RTC_CNTL"); break; + case ESP_SLEEP_WAKEUP_TIMER : Serial.println("Wakeup caused by timer"); break; + case ESP_SLEEP_WAKEUP_TOUCHPAD : Serial.println("Wakeup caused by touchpad"); break; + case ESP_SLEEP_WAKEUP_ULP : Serial.println("Wakeup caused by ULP program"); break; + default : Serial.printf("Wakeup was not caused by deep sleep: %d\n",wakeup_reason); break; + } +} + + +void deep_sleep(int time_in_sec){//Increment boot number and print it every reboot + esp_sleep_enable_timer_wakeup(time_in_sec * 1000000); + esp_deep_sleep_start(); +} diff --git a/code-snippets/client/deep_sleep/f_deep_sleep/f_deep_sleep.h b/code-snippets/client/deep_sleep/f_deep_sleep/f_deep_sleep.h new file mode 100644 index 0000000..876500d --- /dev/null +++ b/code-snippets/client/deep_sleep/f_deep_sleep/f_deep_sleep.h @@ -0,0 +1,6 @@ +#ifndef F_DEEP_SLEEP_H +#define F_DEEP_SLEEP_H +#include <Arduino.h> +void deep_sleep(int time_to_sleep); +void print_wakeup_reason(); +#endif -- GitLab