Hackster is hosting Hackster Holidays, Ep. 6: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Monday!Stream Hackster Holidays, Ep. 6 on Monday!
Louis SinMin HuiKean-enAquting
Published

[ Engineering Exploration Project ] Final Module Project

School Project

BeginnerShowcase (no instructions)84
[ Engineering Exploration Project ] Final Module Project

Things used in this project

Story

Read more

Schematics

Modular Prototype Model

Download the model made from Blender here

Code

Modular_Farming_C5_Code.m5f

Python
{"components":[{"id":"____screen","createTime":1704851769113,"name":"screen","x":0,"y":0,"width":320,"height":240,"backgroundColor":"#22333b","backgroundImage":"","type":"screen"},{"id":"____buttonA","createTime":1704851769113,"name":"ButtonA","buttonIndex":0,"x":35,"y":216,"width":64,"height":24,"text":"ButtonA","visibility":false,"type":"button"},{"id":"____buttonB","createTime":1704851769113,"name":"ButtonB","buttonIndex":1,"x":125,"y":216,"width":64,"height":24,"text":"ButtonB","visibility":false,"type":"button"},{"id":"____buttonC","createTime":1704851769113,"name":"ButtonC","buttonIndex":2,"x":215,"y":216,"width":64,"height":24,"text":"ButtonC","visibility":false,"type":"button"},{"id":"Aq#himn=w13Tup__","createTime":1704852127478,"isCoreTwo":false,"isPaper":false,"name":"StatusTxt","x":100,"y":150,"color":"#eae0d5","text":"[ Status ]","font":"lcd.FONT_DejaVu24","rotation":0,"type":"label","layer":5},{"id":"#YZm4HRlgtXE+kqW","createTime":1704854118729,"isCoreTwo":false,"name":"line0","x":20,"y":68,"x1":20,"y1":68,"x2":300,"y2":68,"width":50,"color":"#eae0d5","lineWidth":1,"type":"line","layer":10},{"id":"Z%spm7*U692NT_p_","createTime":1704854118729,"isCoreTwo":false,"name":"line1","x":20,"y":190,"x1":20,"y1":190,"x2":300,"y2":190,"width":50,"color":"#eae0d5","lineWidth":1,"type":"line","layer":11},{"id":"90zZv_w8xk5UaaUo","createTime":1704852277821,"isCoreTwo":false,"isPaper":false,"name":"MainMenuTxt","x":72,"y":20,"color":"#eae0d5","text":"[ Main Menu ]","font":"lcd.FONT_DejaVu24","rotation":0,"type":"label","layer":7},{"id":"+!JlqPg9EyjR_d0F","createTime":1706416621318,"isCoreTwo":false,"isPaper":false,"name":"MoistureHeader","x":219,"y":90,"color":"#eae0d5","text":"Moisture","font":"lcd.FONT_Default","rotation":0,"type":"label","layer":28},{"id":"Ft3H1zd99tmyAmN@","createTime":1704852491878,"isCoreTwo":false,"isPaper":false,"name":"Moisture","x":236,"y":112,"color":"#eae0d5","text":"text","font":"lcd.FONT_Default","rotation":0,"type":"label","layer":29},{"id":"5=aW-m5qdIj#nt8q","createTime":1704852277821,"isCoreTwo":false,"isPaper":false,"name":"StatusNotice","x":92,"y":206,"color":"#eae0d5","text":"None","font":"lcd.FONT_DejaVu24","rotation":0,"type":"label","layer":30},{"id":"drxEG0Z4XBI%S%_B","createTime":1706416621318,"isCoreTwo":false,"isPaper":false,"name":"HumidityHeader","x":130,"y":90,"color":"#eae0d5","text":"Humidity","font":"lcd.FONT_Default","rotation":0,"type":"label","layer":32},{"id":"`40$uNRn^Sga1#9G","createTime":1704852491878,"isCoreTwo":false,"isPaper":false,"name":"Humidity","x":147,"y":112,"color":"#eae0d5","text":"text","font":"lcd.FONT_Default","rotation":0,"type":"label","layer":33},{"id":"vBt1v-`iiBvx2dye","createTime":1706416621318,"isCoreTwo":false,"isPaper":false,"name":"TemperatureHeader","x":48,"y":90,"color":"#eae0d5","text":"Temp","font":"lcd.FONT_Default","rotation":0,"type":"label","layer":35},{"id":"4RUWwRBwkhV#8=Z&","createTime":1704852491878,"isCoreTwo":false,"isPaper":false,"name":"Temperature","x":54,"y":112,"color":"#eae0d5","text":"text","font":"lcd.FONT_Default","rotation":0,"type":"label","layer":37},{"id":"u0zKP^ybF1hEIQw8","createTime":1706518214574,"isCoreTwo":false,"isPaper":false,"name":"UserHeader","x":20,"y":20,"color":"#eae0d5","text":"[ User ]","font":"lcd.FONT_DejaVu24","rotation":0,"type":"label","layer":82},{"id":"=wGBdF4R-LICXxaz","createTime":1706518353032,"isCoreTwo":false,"isPaper":false,"name":"UserText","x":20,"y":90,"color":"#eae0d5","text":"Text","font":"lcd.FONT_DejaVu18","rotation":0,"type":"label","layer":83},{"id":"NZb$jeZD^LG=NYow","createTime":1706518439418,"isCoreTwo":false,"isPaper":false,"name":"AccessHeader","x":20,"y":150,"color":"#eae0d5","text":"[ Access ]","font":"lcd.FONT_DejaVu24","rotation":0,"type":"label","layer":84},{"id":"FvMbFLA%RK6ilZ8L","createTime":1706518595060,"isCoreTwo":false,"isPaper":false,"name":"AccessText","x":20,"y":200,"color":"#eae0d5","text":"Text","font":"lcd.FONT_DejaVu18","rotation":0,"type":"label","layer":85}],"type":"core","versions":"Beta","units":[{"id":"D`ZyPJjc6bva!Op@","createTime":1707269191031,"hidden":false,"type":"env2","name":"env2_2","port":"PAHUB","default":["A","E","PAHUB","Custom"],"pb_port":[0,1,2,3,4,5],"new_pb_port":"0","user_port":["21","22"],"icon":"env2.png"},{"id":"PTIW&5MY0i4nZ6rT","createTime":1707269191031,"type":"pahub","name":"pahub_1","port":"A","default":["A","E","Custom"],"user_port":["21","22"],"icon":"pa_hub.png"},{"id":"X7gTDVOq^d^`zFk@","createTime":1707269191031,"type":"rfid","name":"rfid_2","port":"PAHUB","default":["A","E","PAHUB","Custom"],"pb_port":[0,1,2,3,4,5],"new_pb_port":"1","user_port":["21","22"],"icon":"rfid.png"},{"id":"92ml@soA3j^3NAE&","createTime":1707269191031,"type":"pbhub","name":"pbhub_0","port":"PAHUB","default":["A","E","PAHUB","Custom"],"pb_port":[0,1,2,3,4,5],"new_pb_port":"2","user_port":["21","22"],"icon":"pb_hub.png"},{"id":"tc0r@bS_J0QpoTG@","createTime":1707269191031,"stickType":"stick","type":"earth","name":"earth_2","port":"B","default":["B","D","Custom"],"user_port":["21","22"],"icon":"earth.png"}],"hats":[],"blockly":"<block type=\"basic_on_setup\" id=\"setup_block\" deletable=\"false\" x=\"-110\" y=\"-230\"><next><block type=\"label_set_mode\" id=\"HO`I}w$:dN#DduL09vTt\"><field name=\"COMPONENT\">StatusTxt</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"CMqIHl{;KX/usN%CWj=)\"><field name=\"COMPONENT\">MainMenuTxt</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"AK/y-F-P,5Q=/eobxoQ.\"><field name=\"COMPONENT\">MoistureHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"@-gfb!r`:bXRrUFYXz~l\"><field name=\"COMPONENT\">Moisture</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"%r/t=1l4?G^Hy7#%3QA0\"><field name=\"COMPONENT\">StatusNotice</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"|cvsy7@i7JruRy!5Ti,=\"><field name=\"COMPONENT\">HumidityHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\".9yWzxY7t)BKG0iOwBC]\"><field name=\"COMPONENT\">Humidity</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"s;yd)SiYZ`RPVWs7XtkD\"><field name=\"COMPONENT\">TemperatureHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"^EH#;Y=K`uEgI7QnY:Cf\"><field name=\"COMPONENT\">Temperature</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"{ptWootT?1P)Pb;OnpzL\"><field name=\"COMPONENT\">UserHeader</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"kr(lAxP7}-_`EP``IYy2\"><field name=\"COMPONENT\">UserText</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"=k8L~KDbjlH?A[:TVEmo\"><field name=\"COMPONENT\">AccessHeader</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"LNPzz2$PtfnYhvI1`nYl\"><field name=\"COMPONENT\">AccessText</field><field name=\"MODE\">True</field><next><block type=\"basic_on_loop\" id=\"-|q,Syj[s?Z.A!TS8VBA\"><statement name=\"LOOP\"><block type=\"controls_if\" id=\"D/Dl.0KhO|2X^Tn74vlf\"><value name=\"IF0\"><block type=\"rfid_cardOn\" id=\"!$jRP`!yz5=tv69uCWE_\"><field name=\"RFID\">rfid_2</field></block></value><statement name=\"DO0\"><block type=\"controls_if\" id=\"u(,VP0|MOw$v3SbnE[CU\"><mutation else=\"1\"></mutation><value name=\"IF0\"><block type=\"logic_compare\" id=\")GDUC=-l9w{zB_h3boux\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"rfid_uid\" id=\".|KOC;q!UbTP(p|5kzj~\"><field name=\"RFID\">rfid_2</field></block></value><value name=\"B\"><block type=\"text\" id=\"_:b(U1}tq/0!~uE?#Eke\"><field name=\"TEXT\">d486fd6a9</field></block></value></block></value><statement name=\"DO0\"><block type=\"label_set_text\" id=\":_~(cZC^gYXruq(UjO2t\"><field name=\"COMPONENT\">UserText</field><value name=\"TEXT\"><shadow type=\"text\" id=\"@,eBsP2f3MM)rd1|jkt/\"><field name=\"TEXT\">Min Hui</field></shadow></value><next><block type=\"label_set_text\" id=\"4[:}rZ{7Nmtmk#*kx!V4\"><field name=\"COMPONENT\">AccessText</field><value name=\"TEXT\"><shadow type=\"text\" id=\"ZF!b:[V4sksAMVqmUmp1\"><field name=\"TEXT\">Approved</field></shadow></value><next><block type=\"label_set_color\" id=\"}vxX.Sh6u!wP?xtP#58j\"><field name=\"COMPONENT\">AccessText</field><field name=\"COLOR\">#99ff99</field><next><block type=\"timer_delay\" id=\"Ruu4FGbrH~ODzN-m,!f:\"><value name=\"DELAY\"><shadow type=\"math_number\" id=\"H?3}/cdHdS$m1Fm*b^Yk\"><field name=\"NUM\">3</field></shadow></value><next><block type=\"label_set_mode\" id=\"IPy4ob+^4@O:BJA%g#P{\"><field name=\"COMPONENT\">UserHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"a/`kCRyv.6feJuqryVVq\"><field name=\"COMPONENT\">UserText</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"q|htr}flDMj?~/Bw9L04\"><field name=\"COMPONENT\">AccessHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"mjGLoV8c40?IZx4Scn8Z\"><field name=\"COMPONENT\">AccessText</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"9Zf1n?2_n@B;qK,jJJ_i\"><field name=\"COMPONENT\">MainMenuTxt</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"grh!-vx?o1h87:%w/vXL\"><field name=\"COMPONENT\">StatusTxt</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"Z,(QTFmt]-Yg,8cXe*Tb\"><field name=\"COMPONENT\">StatusNotice</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\".,So]=#[LiO-)y=(ET|r\"><field name=\"COMPONENT\">MoistureHeader</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"sl.:VlWHIy2n#Xy-U2D{\"><field name=\"COMPONENT\">HumidityHeader</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"Jjp7~1-NUo.z3$e@V%=$\"><field name=\"COMPONENT\">TemperatureHeader</field><field name=\"MODE\">False</field><next><block type=\"basic_on_loop\" id=\"3Nh,`frkUe/rXJ/g04}5\"><statement name=\"LOOP\"><block type=\"label_set_text\" id=\"c2vzeEYX};n@Ic]ni(3Q\"><field name=\"COMPONENT\">Moisture</field><value name=\"TEXT\"><shadow type=\"text\" id=\"_KK0^3%nR??5l^]!=U9g\"><field name=\"TEXT\">Hello M5</field></shadow><block type=\"earth_a_read\" id=\"m7[ET:cOO;YQl?4RYErw\"><field name=\"VARNAME\">earth_2</field></block></value><next><block type=\"label_set_text\" id=\"[VQjW~Q_TZSxzbD{Dl;w\"><field name=\"COMPONENT\">Humidity</field><value name=\"TEXT\"><shadow type=\"text\" id=\"Vw6`@M/C/s8#9SJ*TOzc\"><field name=\"TEXT\">Hello M5</field></shadow><block type=\"dht12_get_humidity\" id=\"JDevW*o@=n_@2+c86:=)\"><field name=\"VARNAME\">env2_2</field></block></value><next><block type=\"label_set_text\" id=\"N@x/4cOozpJcV/{2f(mR\"><field name=\"COMPONENT\">Temperature</field><value name=\"TEXT\"><shadow type=\"text\" id=\"2f4^ibRKMGg%r6Gls:J2\"><field name=\"TEXT\">Hello M5</field></shadow><block type=\"dht12_get_temperature\" id=\"Z2oRvLyqWot1==!R#z.,\"><field name=\"VARNAME\">env2_2</field></block></value><next><block type=\"controls_if\" id=\"TJi9|**z!W)m4B!ZG[3X\"><mutation elseif=\"2\"></mutation><value name=\"IF0\"><block type=\"logic_compare\" id=\"C,I!Ji+o/Z9IA8/O`|1C\"><field name=\"OP\">LT</field><value name=\"A\"><block type=\"earth_a_read\" id=\"MPtBuvNQ1m}n5Z0xN%E2\"><field name=\"VARNAME\">earth_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"Z+qAu|U]{Q%^Tm``:a!V\"><field name=\"NUM\">200</field></block></value></block></value><statement name=\"DO0\"><block type=\"label_set_text\" id=\"!o+|ct|{I~=Ld_O8?9J|\"><field name=\"COMPONENT\">StatusNotice</field><value name=\"TEXT\"><shadow type=\"text\" id=\"`k*~aSceUIyn?3Db,L-^\"><field name=\"TEXT\">Needs Water</field></shadow></value></block></statement><value name=\"IF1\"><block type=\"logic_operation\" id=\"=[DaFxO(^@`qIUU)nnC9\"><field name=\"OP\">AND</field><value name=\"A\"><block type=\"logic_compare\" id=\"pJolgyUdMG9;@9Y}xt@u\"><field name=\"OP\">GTE</field><value name=\"A\"><block type=\"earth_a_read\" id=\"AV2BtO(@$)Hdk6)KPF;*\"><field name=\"VARNAME\">earth_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"A(/$+7y!)6)]ZEm]~sG9\"><field name=\"NUM\">200</field></block></value></block></value><value name=\"B\"><block type=\"logic_compare\" id=\"Uc%bTYZ{;81e_=%oCkDf\"><field name=\"OP\">LTE</field><value name=\"A\"><block type=\"earth_a_read\" id=\"`l_8.I0vHGXW%EqN;s0P\"><field name=\"VARNAME\">earth_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"za2T6)wMqAO=JMMq8ykQ\"><field name=\"NUM\">300</field></block></value></block></value></block></value><statement name=\"DO1\"><block type=\"label_set_text\" id=\")]:?uFubxAn`p_j3|$fl\"><field name=\"COMPONENT\">StatusNotice</field><value name=\"TEXT\"><shadow type=\"text\" id=\"q5RpVnh)n|7_+R0ky@PO\"><field name=\"TEXT\">None</field></shadow></value></block></statement><value name=\"IF2\"><block type=\"logic_compare\" id=\"-lk(q,DMPqaI[x5tAjps\"><field name=\"OP\">GT</field><value name=\"A\"><block type=\"earth_a_read\" id=\"+*2=Aw$o$S!DNRr[x%2o\"><field name=\"VARNAME\">earth_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"(_|TjBb,CfLS5SKbrv2~\"><field name=\"NUM\">300</field></block></value></block></value><statement name=\"DO2\"><block type=\"label_set_text\" id=\"XT%Rd6v_uo~fgF]IBAv-\"><field name=\"COMPONENT\">StatusNotice</field><value name=\"TEXT\"><shadow type=\"text\" id=\"(Uj*Q5JnG~?4F*6if(sb\"><field name=\"TEXT\">Drain Water</field></shadow></value></block></statement><next><block type=\"controls_if\" id=\"p.9M`,yq2a-nV5iZx+Os\"><mutation elseif=\"2\"></mutation><value name=\"IF0\"><block type=\"logic_compare\" id=\"h_xp:|2Ifl+zF{TO/){W\"><field name=\"OP\">GT</field><value name=\"A\"><block type=\"dht12_get_temperature\" id=\"MOmGOFi{+|kAn+Y{XOpT\"><field name=\"VARNAME\">env2_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"4@1zUVU$9`zSu1NiT@AJ\"><field name=\"NUM\">30</field></block></value></block></value><statement name=\"DO0\"><block type=\"pbhub_setColorPos\" id=\"|~qpoOSCss,Lt6415^!Z\"><field name=\"VARNAME\">pbhub_0</field><field name=\"digitalWriteNum\">0</field><field name=\"digitalWritePos\">1</field><field name=\"COLOR\">#ff0000</field></block></statement><value name=\"IF1\"><block type=\"logic_operation\" id=\"b)+tie5.yQZME[lF/-Ub\"><field name=\"OP\">AND</field><value name=\"A\"><block type=\"logic_compare\" id=\"_p|fv3XS3D8*Sz7hp%UZ\"><field name=\"OP\">GT</field><value name=\"A\"><block type=\"dht12_get_temperature\" id=\"`R{88D|k;cxtzwck9LP2\"><field name=\"VARNAME\">env2_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"0T3!`B$`~8w)Sl7H5Tp-\"><field name=\"NUM\">20</field></block></value></block></value><value name=\"B\"><block type=\"logic_compare\" id=\"CoOb26+*S!Q~-fLl5=vT\"><field name=\"OP\">LT</field><value name=\"A\"><block type=\"dht12_get_temperature\" id=\"HERdn~C7Kz|ZC:#W_x7;\"><field name=\"VARNAME\">env2_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"9_(*$XGUuzKupv=cI{Xg\"><field name=\"NUM\">30</field></block></value></block></value></block></value><statement name=\"DO1\"><block type=\"pbhub_setColorPos\" id=\"#]^ZbxY+8-u%MvfR?wp4\"><field name=\"VARNAME\">pbhub_0</field><field name=\"digitalWriteNum\">0</field><field name=\"digitalWritePos\">1</field><field name=\"COLOR\">#6633ff</field></block></statement><value name=\"IF2\"><block type=\"logic_compare\" id=\"ATti$Hcsm~7|[D*_Ehw.\"><field name=\"OP\">LT</field><value name=\"A\"><block type=\"dht12_get_temperature\" id=\"(I.oKtk|4b$=4%QhU$93\"><field name=\"VARNAME\">env2_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"mk{q%Ag0({*)~JsArl7%\"><field name=\"NUM\">20</field></block></value></block></value><statement name=\"DO2\"><block type=\"pbhub_setColorPos\" id=\"2nH:z^4gsvCoRy4TEFux\"><field name=\"VARNAME\">pbhub_0</field><field name=\"digitalWriteNum\">0</field><field name=\"digitalWritePos\">1</field><field name=\"COLOR\">#33ffff</field></block></statement><next><block type=\"procedures_callnoreturn\" id=\"]3=Pq7bNLrBXKyv9-Y8C\"><mutation name=\"Loop\"></mutation></block></next></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement><statement name=\"ELSE\"><block type=\"label_set_text\" id=\"aX^c4ORNj!W}CFuP]Rgt\"><field name=\"COMPONENT\">UserText</field><value name=\"TEXT\"><shadow type=\"text\" id=\"c+}+3vN;D$gc*+~u*p(0\"><field name=\"TEXT\">Unknown</field></shadow></value><next><block type=\"label_set_text\" id=\"_asdvk(Bp@j.-qv8LJPL\"><field name=\"COMPONENT\">AccessText</field><value name=\"TEXT\"><shadow type=\"text\" id=\"*2i}g^B{JC[oI$.*6x$l\"><field name=\"TEXT\">Denied</field></shadow></value><next><block type=\"label_set_color\" id=\"$$sr4ddm*mOMC_:0a{lw\"><field name=\"COMPONENT\">AccessText</field><field name=\"COLOR\">#ff0000</field><next><block type=\"timer_delay\" id=\"dE#M9UaG~#T?kDKX0zI}\"><value name=\"DELAY\"><shadow type=\"math_number\" id=\"=*7rXEex3=r7;c:Cq|b+\"><field name=\"NUM\">3</field></shadow></value><next><block type=\"label_set_mode\" id=\"J:b+vV*C}RB)G!Um.W)g\"><field name=\"COMPONENT\">UserText</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"M|cAVoj^dk#9%8$C($RC\"><field name=\"COMPONENT\">AccessText</field><field name=\"MODE\">True</field></block></next></block></next></block></next></block></next></block></next></block></statement></block></statement></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block><block type=\"procedures_defnoreturn\" id=\"Dkn[9Dx[G_7OkV#CPY3|\" x=\"890\" y=\"-230\"><field name=\"NAME\">Loop</field><comment pinned=\"false\" h=\"80\" w=\"160\">Describe this function...</comment><statement name=\"STACK\"><block type=\"controls_if\" id=\"ZRQVUbh_II?b:}t]V3B#\"><value name=\"IF0\"><block type=\"button_ispressed\" id=\"KEx|lL2K?k{{)jVGG%P{\"><field name=\"BUTTON\">A</field><field name=\"EVENT\">isPressed</field></block></value><statement name=\"DO0\"><block type=\"label_set_mode\" id=\"(Zh/xEGDULDEDT~e,Am*\"><field name=\"COMPONENT\">StatusTxt</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"uQo1RsEP4_9#e_/L0UlF\"><field name=\"COMPONENT\">MainMenuTxt</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"4P,};t0#Xp;2KUPQSAQ1\"><field name=\"COMPONENT\">MoistureHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"Lm|Y~]*)x#3E`hP8ciwu\"><field name=\"COMPONENT\">Moisture</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"d7hZv59L1G2r`t{t-0:.\"><field name=\"COMPONENT\">StatusNotice</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"I*Wf4dlyW_*N^5R)U-w{\"><field name=\"COMPONENT\">HumidityHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"+h^hI{_wRZ~WX|,WZ1op\"><field name=\"COMPONENT\">Humidity</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\".PWvH%RUn#i|!rhuFTa2\"><field name=\"COMPONENT\">TemperatureHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"qe`l+Sf+~@IT13hS|[!l\"><field name=\"COMPONENT\">Temperature</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"^k]0uA`~Vhx[-?[:m}|.\"><field name=\"COMPONENT\">UserHeader</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"kq[$ibudb--)05F]WjwG\"><field name=\"COMPONENT\">UserText</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"EV|SRqP/]T{fWf(pyweF\"><field name=\"COMPONENT\">AccessHeader</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"kYTd!._;Z%@.WBayB)X~\"><field name=\"COMPONENT\">AccessText</field><field name=\"MODE\">True</field><next><block type=\"basic_on_loop\" id=\".591~=Vk3LHPg{l7^-IX\"><statement name=\"LOOP\"><block type=\"controls_if\" id=\"0fHaWycqP7,CIN$kxL%H\"><value name=\"IF0\"><block type=\"rfid_cardOn\" id=\"=Fi|gR}R3Uk}UyMa~Bl.\"><field name=\"RFID\">rfid_2</field></block></value><statement name=\"DO0\"><block type=\"controls_if\" id=\"icqS[1xNqO([)arBm.d^\"><mutation else=\"1\"></mutation><value name=\"IF0\"><block type=\"logic_compare\" id=\"Awo-pr+j`yFr)}k1X9|5\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"rfid_uid\" id=\"Medw]M.q=B57:[Sjd/NI\"><field name=\"RFID\">rfid_2</field></block></value><value name=\"B\"><block type=\"text\" id=\"_(|EK8i@fokg8jD$BGzU\"><field name=\"TEXT\">d486fd6a9</field></block></value></block></value><statement name=\"DO0\"><block type=\"label_set_text\" id=\"um[p{+z2UnTrZvI8n$^|\"><field name=\"COMPONENT\">UserText</field><value name=\"TEXT\"><shadow type=\"text\" id=\"TSxy|:JpaPr|oMf6)c7d\"><field name=\"TEXT\">Min Hui</field></shadow></value><next><block type=\"label_set_mode\" id=\"hJj.iBR$BVK~d:{w,.4x\"><field name=\"COMPONENT\">UserText</field><field name=\"MODE\">False</field><next><block type=\"label_set_text\" id=\"zr.^[-~V_IcM=p/=;GwE\"><field name=\"COMPONENT\">AccessText</field><value name=\"TEXT\"><shadow type=\"text\" id=\"F4E,7iyIOsJ-w2Nd2{8n\"><field name=\"TEXT\">Approved</field></shadow></value><next><block type=\"label_set_color\" id=\"7}?AYzjE$vQ=J=4@Il?o\"><field name=\"COMPONENT\">AccessText</field><field name=\"COLOR\">#99ff99</field><next><block type=\"timer_delay\" id=\"(2,=ivfo-0z9JFN|E,=l\"><value name=\"DELAY\"><shadow type=\"math_number\" id=\"+MYMlc1J-da`a!~bWi.#\"><field name=\"NUM\">3</field></shadow></value><next><block type=\"label_set_mode\" id=\"t`S!x|=L}TbK#y+o$FRk\"><field name=\"COMPONENT\">UserHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"sRGe;)?)zx%4ss`b+e*I\"><field name=\"COMPONENT\">UserText</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"^m{=[sXCPDur;SQEW,y]\"><field name=\"COMPONENT\">AccessHeader</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"b5uhedf@kGt?UMih2C?%\"><field name=\"COMPONENT\">AccessText</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"%YjKwM5ko2/gR6_`hiRO\"><field name=\"COMPONENT\">MainMenuTxt</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"0^Q][3kVTe|v{k9^{n7f\"><field name=\"COMPONENT\">StatusTxt</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"6fw=e_~2tQ{KDWJ(zEdm\"><field name=\"COMPONENT\">StatusNotice</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\")o^HGs67ZD+R6/V]zH|=\"><field name=\"COMPONENT\">MoistureHeader</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"ET|+ws^IJrJT?m.%q^xa\"><field name=\"COMPONENT\">HumidityHeader</field><field name=\"MODE\">False</field><next><block type=\"label_set_mode\" id=\"(lfnpp}M*gW$Lpj6M*Xb\"><field name=\"COMPONENT\">TemperatureHeader</field><field name=\"MODE\">False</field><next><block type=\"basic_on_loop\" id=\"Foy1!CuDorlu?Y.B[#^G\"><statement name=\"LOOP\"><block type=\"label_set_text\" id=\"t1^262~uv{+C.^{AO7I5\"><field name=\"COMPONENT\">Moisture</field><value name=\"TEXT\"><shadow type=\"text\"><field name=\"TEXT\">Hello M5</field></shadow><block type=\"earth_a_read\" id=\"yU/:X5i5J3GWF!!zm]tF\"><field name=\"VARNAME\">earth_2</field></block></value><next><block type=\"label_set_mode\" id=\"fWPj^(/_H^ULC7lzVj|i\"><field name=\"COMPONENT\">Moisture</field><field name=\"MODE\">False</field><next><block type=\"label_set_text\" id=\"U6RohUwNugonOv;|k^h{\"><field name=\"COMPONENT\">Humidity</field><value name=\"TEXT\"><shadow type=\"text\"><field name=\"TEXT\">Hello M5</field></shadow><block type=\"dht12_get_humidity\" id=\"Y4pQHRP4Hf]R$U-p=rCq\"><field name=\"VARNAME\">env2_2</field></block></value><next><block type=\"label_set_text\" id=\"!!J2,8ge13vx;[!SzSk@\"><field name=\"COMPONENT\">Temperature</field><value name=\"TEXT\"><shadow type=\"text\"><field name=\"TEXT\">Hello M5</field></shadow><block type=\"dht12_get_temperature\" id=\"eiH80]nAZ+SoJIx9Lk=t\"><field name=\"VARNAME\">env2_2</field></block></value><next><block type=\"controls_if\" id=\"zj=|R_ygRau*$0L,nb+[\"><mutation elseif=\"2\"></mutation><value name=\"IF0\"><block type=\"logic_compare\" id=\"ZNPg@T{1,E~_p5FqB3i9\"><field name=\"OP\">LT</field><value name=\"A\"><block type=\"earth_a_read\" id=\"]]lSo$kQR)LDX`$(#{Im\"><field name=\"VARNAME\">earth_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"wCiwWG3sJ!}hI76T6}Zm\"><field name=\"NUM\">200</field></block></value></block></value><statement name=\"DO0\"><block type=\"label_set_text\" id=\"+_Sdq5mIp0wt,160RQdX\"><field name=\"COMPONENT\">StatusNotice</field><value name=\"TEXT\"><shadow type=\"text\" id=\"KAz08z.E3q)`}$8~=j~/\"><field name=\"TEXT\">Needs Water</field></shadow></value></block></statement><value name=\"IF1\"><block type=\"logic_operation\" id=\"B|oFoQKGlX94t:|JEk]S\"><field name=\"OP\">AND</field><value name=\"A\"><block type=\"logic_compare\" id=\"|B-4SKqk#kV1C58CWy/m\"><field name=\"OP\">GTE</field><value name=\"A\"><block type=\"earth_a_read\" id=\"z?f!$BNlq?MeZKK%xiUE\"><field name=\"VARNAME\">earth_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"z0I2OYWDbYGsK?nL=Ejv\"><field name=\"NUM\">200</field></block></value></block></value><value name=\"B\"><block type=\"logic_compare\" id=\"]:eqqRHfVFNZ;GhS%@kc\"><field name=\"OP\">LTE</field><value name=\"A\"><block type=\"earth_a_read\" id=\"rRF2SxM;5)iNy~{!PJ`O\"><field name=\"VARNAME\">earth_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"[P(9?Nvw7-9uhy]Lv.^a\"><field name=\"NUM\">300</field></block></value></block></value></block></value><statement name=\"DO1\"><block type=\"label_set_text\" id=\"Fu}{xj;$I8a/f(Tf-R4q\"><field name=\"COMPONENT\">StatusNotice</field><value name=\"TEXT\"><shadow type=\"text\" id=\"Y1##}N_7D;~Tr3hKkyJm\"><field name=\"TEXT\">None</field></shadow></value></block></statement><value name=\"IF2\"><block type=\"logic_compare\" id=\"M|q13*M*9d288AL.0,i!\"><field name=\"OP\">GT</field><value name=\"A\"><block type=\"earth_a_read\" id=\"Suc_-u+.,;id,Uz5NX{I\"><field name=\"VARNAME\">earth_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"1^Fk@TES8IVHWxq@(e}2\"><field name=\"NUM\">300</field></block></value></block></value><statement name=\"DO2\"><block type=\"label_set_text\" id=\"DER:21Uvv7h`2ipved,8\"><field name=\"COMPONENT\">StatusNotice</field><value name=\"TEXT\"><shadow type=\"text\" id=\"]3{-U,-tx.:55}HT)jbb\"><field name=\"TEXT\">Drain Water</field></shadow></value></block></statement><next><block type=\"controls_if\" id=\"1+;g0=RUvGPOD:lxsk![\"><mutation elseif=\"2\"></mutation><value name=\"IF0\"><block type=\"logic_compare\" id=\"Urq0}:+M58FOYEY*:fuu\"><field name=\"OP\">GT</field><value name=\"A\"><block type=\"dht12_get_temperature\" id=\"j|zXrW;!*@*|/5U-_0)h\"><field name=\"VARNAME\">env2_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"Mdf=sfCz9YIsU-B$).(x\"><field name=\"NUM\">30</field></block></value></block></value><statement name=\"DO0\"><block type=\"pbhub_setColorPos\" id=\"5Ig|3a+7G*Swzm=B0xc{\"><field name=\"VARNAME\">pbhub_0</field><field name=\"digitalWriteNum\">0</field><field name=\"digitalWritePos\">1</field><field name=\"COLOR\">#ff0000</field></block></statement><value name=\"IF1\"><block type=\"logic_operation\" id=\"un_gn1VChaI)71R|$b~i\"><field name=\"OP\">AND</field><value name=\"A\"><block type=\"logic_compare\" id=\"I}3.eg2weNQil_]/:7QV\"><field name=\"OP\">GT</field><value name=\"A\"><block type=\"dht12_get_temperature\" id=\"t)Ky?T19HY%Rv]-v?:LQ\"><field name=\"VARNAME\">env2_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"mi{p1eYan`^l)$[#}%Mc\"><field name=\"NUM\">20</field></block></value></block></value><value name=\"B\"><block type=\"logic_compare\" id=\"9n!s9Wz3Gs;(#NeQOq=i\"><field name=\"OP\">LT</field><value name=\"A\"><block type=\"dht12_get_temperature\" id=\"_Di~*{=q`?4w0%2xfYo(\"><field name=\"VARNAME\">env2_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"5FGRii;w^F;iw}OrI[[;\"><field name=\"NUM\">30</field></block></value></block></value></block></value><statement name=\"DO1\"><block type=\"pbhub_setColorPos\" id=\"=kG5rz8~U.I6b(#fJsRz\"><field name=\"VARNAME\">pbhub_0</field><field name=\"digitalWriteNum\">0</field><field name=\"digitalWritePos\">1</field><field name=\"COLOR\">#6633ff</field></block></statement><value name=\"IF2\"><block type=\"logic_compare\" id=\"H!)]3S8Xo/or@+N#}R=3\"><field name=\"OP\">LT</field><value name=\"A\"><block type=\"dht12_get_temperature\" id=\"Scw!.SlTh~NLSPsTBQ8N\"><field name=\"VARNAME\">env2_2</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"0~zjQuZ8Ru^4(fjyupOw\"><field name=\"NUM\">20</field></block></value></block></value><statement name=\"DO2\"><block type=\"pbhub_setColorPos\" id=\".j@ySz3WP!|V~^9D%.]M\"><field name=\"VARNAME\">pbhub_0</field><field name=\"digitalWriteNum\">0</field><field name=\"digitalWritePos\">1</field><field name=\"COLOR\">#33ffff</field></block></statement><next><block type=\"procedures_callnoreturn\" id=\"B;#,~5ev:!QO[5B|hNX+\"><mutation name=\"Loop\"></mutation></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement><statement name=\"ELSE\"><block type=\"label_set_text\" id=\"+(*7tCsj)q65vtZst3YZ\"><field name=\"COMPONENT\">UserText</field><value name=\"TEXT\"><shadow type=\"text\" id=\"Eb`8E}VU^N^Wrj]72p[!\"><field name=\"TEXT\">Unknown</field></shadow></value><next><block type=\"label_set_text\" id=\"(NP}.ha#z499(RxkO|n[\"><field name=\"COMPONENT\">AccessText</field><value name=\"TEXT\"><shadow type=\"text\" id=\"zD^r!),~OJ~+Tq*#$zrz\"><field name=\"TEXT\">Denied</field></shadow></value><next><block type=\"label_set_color\" id=\"[X_@Qx51Y#-34B{am?z(\"><field name=\"COMPONENT\">AccessText</field><field name=\"COLOR\">#ff0000</field><next><block type=\"timer_delay\" id=\"YiL!8Oa5:#-es;06z)Ms\"><value name=\"DELAY\"><shadow type=\"math_number\" id=\"Jsu;u1`efl2qnbs*+|Cv\"><field name=\"NUM\">3</field></shadow></value><next><block type=\"label_set_mode\" id=\"?q[9]Zp-=F]9K(r]$7@t\"><field name=\"COMPONENT\">UserText</field><field name=\"MODE\">True</field><next><block type=\"label_set_mode\" id=\"HwxxrTU]%]:?eRDYynSU\"><field name=\"COMPONENT\">AccessText</field><field name=\"MODE\">True</field></block></next></block></next></block></next></block></next></block></next></block></statement></block></statement></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></statement></block>","Blockly.Remotes":[],"Blockly.RemotePlus":[{"id":"__title","blockId":"","createTime":1707269191031,"name":"M5RemoteTitle","dragAndDrop":false,"resizable":false,"options":{"minWidth":1,"minHeight":1,"maxWidth":6,"maxHeight":10,"defaultWidth":2,"defaultHeight":1},"w":2,"h":1,"bgColor":"#0080FF","color":"#fff","fontsize":"M","label":"M5Remote","interval":3000,"code":"","event":"","dataSource":"none","ezdataToken":"","topic":"","needShadow":false,"type":"title","x":0,"y":0}],"modules":["rgb"],"cbIdList_":[],"eventCBIdList_":[]}

Credits

Louis Sin

Louis Sin

1 project • 0 followers
Vanitas Vanitatum, Et Omnia Vanitas
Min Hui

Min Hui

1 project • 0 followers
Kean-en

Kean-en

1 project • 0 followers
Aquting

Aquting

1 project • 0 followers

Comments