")!important;box-shadow:none!important}.switch_input__AE4N4:focus{border:0}.reportModal_report-text-wrapper__1iqE1{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding:0 10px 10px}.reportModal_report-options-wrapper__y4_3U{margin-top:10px;padding:0 10px;max-height:300px;overflow:auto}.reportModal_report-input-wrapper__XSE90{margin-top:15px;padding:0 10px}.reportModal_report-options__uzacv{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:5px 10px;height:40px}.reportModal_report-options__uzacv:hover{cursor:pointer;background-color:#ecf1f1}.reportModal_report-sub-options-title__oZXd5{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;height:40px;padding:0 10px;gap:10px}.reportModal_report-sub-options-title__oZXd5:hover{cursor:pointer;background-color:#ecf1f1}.reportModal_report-sub-options-title-input__niQPE{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;height:40px;padding:0 10px 25px;gap:10px}.reportModal_report-sub-options-title-input__niQPE:hover{cursor:pointer}.reportModal_report-sub-options__yrWdo{display:flex;align-items:center;padding:0 10px 0 40px;height:40px;justify-content:space-between}.reportModal_report-sub-options__yrWdo:hover{cursor:pointer;background-color:#ecf1f1}.reportModal_report-sub-options__yrWdo.reportModal_selected__QWXxd{background-color:#ecf1f1}.reportModal_report-buttons-wrapper__c8kMr{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;padding:0 20px;margin-top:25px;gap:20px}.circularLoader_loader-background__pP4fw{position:relative;z-index:1;margin:auto;background-color:rgba(0,0,0,0);padding:30px;display:flex;flex-direction:row;align-content:center;justify-content:center;overflow:hidden}.circularLoader_fill-loader-background__5DOEX{position:absolute;z-index:1;top:0;bottom:0;left:0;right:0;display:flex;justify-content:center}.contentModal_report-text-wrapper__ER9_R{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding:0 10px 10px}.contentModal_report-description-wrapper__U_Ems{display:flex;flex-direction:column;align-items:flex-start;padding:0 70px 10px}.contentModal_report-input-wrapper__Ntr2B{margin-top:10px;padding:0 10px}.contentModal_report-buttons-wrapper__O1td_{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;padding:0 10px;margin-top:45px;gap:20px}.report_iconReport__8JEHy:hover{cursor:pointer}.report_button__OPflT{background-color:rgba(0,0,0,0);border:none;font-family:OpenSans-Regular;font-weight:400;font-size:11px;line-height:14px;letter-spacing:.03em;color:#008184;cursor:pointer;position:fixed;z-index:4;bottom:13.5px;right:25px}.report_mobile-button__gkSEp{position:fixed;z-index:4;bottom:10px;right:20px;transform:scale(.8)}.report_black-button__KSocW{color:#374146}.report_report-buttons-wrapper__imDoQ{display:flex;justify-content:flex-end;width:100%;gap:20px}.items_card__iAP1N{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:15px 16px;background:#fff;border-bottom:1px solid #c9d2d2;margin:8px 24px;height:75px}.items_card__iAP1N:hover{background-color:#f7f9f9}.items_nopad__7Jmrm{padding:0}.items_image-wrapper__g44md{border:1px solid rgba(0,0,0,.1);border-radius:4px;width:50px}.items_item-name__rtMxi{font-size:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.github_info-wrapper__cG_8S{word-wrap:break-word;margin-bottom:16px}.github_pointer__gxiz4{cursor:pointer}.github_col-1__CuKj1{padding:8px;margin:0;width:100%;background:#f6f8fa;border-radius:1px 1px 0 0;border:1px solid #c9d2d2;border-bottom:0;justify-content:space-between}.github_col-1-wrapper__Szvw4,.github_col-1__CuKj1{display:flex;flex-direction:row;align-items:center;gap:10px}.github_col-1-wrapper__Szvw4{justify-content:flex-start}.github_col-2___Pu0m{align-items:flex-start;gap:10px;border:1px solid #c9d2d2;border-bottom:0}.github_col-2___Pu0m,.github_col-3__14yut{display:flex;flex-direction:row;padding:8px;width:100%;margin:0}.github_col-3__14yut{align-items:center;gap:8px;border:1px solid #c9d2d2;justify-content:space-between;gap:10px}.github_repo-text__XIL8H,.github_repo-text__XIL8H:hover{font-size:20px}.github_repo-text-mobile__WujI0,.github_repo-text-mobile__WujI0:hover,.github_repo-text__XIL8H,.github_repo-text__XIL8H:hover{font-family:SFProDisplay-Regular;font-style:normal;display:flex;letter-spacing:.3px;align-self:center;text-decoration:none;color:#0969da;margin-bottom:0;cursor:default;text-overflow:ellipsis}.github_repo-text-mobile__WujI0,.github_repo-text-mobile__WujI0:hover{font-size:14px}.github_repo-user-text__499rp{font-weight:400;color:#0969da;line-break:anywhere}.github_repo-name-text__mdkyX{font-weight:600;color:#0969da;line-break:anywhere}.github_repo-slash__o_T77{font-weight:400;color:#57606a;margin-bottom:0}.github_watchers-forks-container__druQZ{display:flex}.github_watchers-forks-image-container__q5KU8{background:#fafbfc;border:1px solid rgba(27,31,35,.15);border-radius:6px 0 0 6px}.github_watchers-forks-count-container__K4_R_,.github_watchers-forks-image-container__q5KU8{height:28px;padding:0 15px;display:flex;justify-content:center;align-content:center;align-items:center}.github_watchers-forks-count-container__K4_R_{background:#fff;border:1px solid rgba(27,31,35,.15);border-left-width:0;border-radius:0 6px 6px 0}.github_description-text__5_9va,.github_description-text__5_9va:hover{flex-direction:row;color:#57606a;cursor:default}.github_description-link__oCEeF,.github_description-link__oCEeF:hover,.github_description-text__5_9va,.github_description-text__5_9va:hover{font-family:SFProDisplay-Regular;font-style:normal;font-size:12px;font-weight:400;display:flex;align-self:center;text-decoration:none;text-overflow:ellipsis;margin-bottom:0;word-wrap:break-word;white-space:pre-wrap}.github_description-link__oCEeF,.github_description-link__oCEeF:hover{color:#0969da;cursor:pointer}.github_download-zip-button__u2eR8{background:#fafbfc;padding:4px 12px;border:1px solid #e1e4e8;border-radius:6px;display:flex;align-items:center;justify-content:center;text-decoration:none}.github_download-zip-text__qZ87M{font-family:SFProDisplay-Regular;font-style:normal;font-weight:400;font-size:12px;line-height:18px;color:#24292e;text-decoration:none}.github_trigger-button__MOUwf{background-color:#ecf1f1;border-top-right-radius:20px;border-bottom-right-radius:20px}.embedCode_editor__QSVcx{counter-reset:line;border:1px solid #fff}.embedCode_editor__QSVcx pre{padding-left:50px!important}.iconButton_icon__P6Cmj{font-weight:700;display:flex;flex-direction:column;justify-content:center;align-items:center;border:none;cursor:pointer;padding:5px 28px;gap:10px;width:80px;height:36px;background:#ecf1f1;border-radius:30px}.iconButton_icon__P6Cmj:hover:disabled{pointer-events:none}.iconButton_icon__P6Cmj:disabled{background:rgba(0,92,95,.05);pointer-events:none;color:rgba(0,0,0,.3)}.iconButton_image__UuSQa{cursor:pointer;background:#ecf1f1;padding:8px 28px;width:80px;height:36px;border-radius:32px;border-radius:30px}.codeBox_row-1__dfqC2{display:flex;padding:20px;background:#dae3e3;margin:0}.codeBox_code__wIfoQ{pointer-events:none}.codeBox_name-container__vb9um{gap:24px;display:flex;align-items:center}.codeBox_buttons-container__oH7qm{display:flex;align-items:center;justify-content:flex-end}.codeBox_buttons-wrapper__yhgbf{gap:8px;display:flex;justify-content:flex-end}.codeBox_buttons-wrapper-mobile__Fj__l{gap:8px;display:flex;margin-top:10px}.codeBox_code-wrapper__emZDQ{margin:0;height:335px;overflow-y:auto;background:#fff;-ms-overflow-style:none;scrollbar-width:none}.codeBox_code-wrapper__emZDQ::-webkit-scrollbar{display:none}.codeBox_trigger-button__WJ901{background-color:#ecf1f1;border-top-right-radius:20px;border-bottom-right-radius:20px;padding-left:0}.singleFile_wrapper__OXd52{display:flex;flex-direction:column;padding:0;gap:16px;margin:2rem 0;max-width:100%}.singleFile_row__NP_ac{display:flex;align-items:center;justify-content:space-between;margin:0}.singleFile_col___REyF{display:flex;flex-direction:row;justify-content:flex-end;padding:0}.singleFile_col-text__an2Sc{margin:0;padding:0;word-break:break-word}.singleFile_image-preview__S_PgD{display:flex;align-items:center;position:relative;overflow:hidden;height:291px;width:100%}.downloadButton_wrapper__YZmsZ{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:16px;background:#fff;border:1px solid #7fcbcd;border-radius:1px}.downloadButton_text__etoTi{font-family:OpenSans-Regular;font-weight:400;margin-bottom:0;letter-spacing:.01em;line-height:170%;font-size:14px;color:#374146;display:-webkit-box;word-break:break-all;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.singleDoc_wrapper__PE2g9{display:flex;flex-direction:column;gap:16px;margin:2rem 0;padding:0}.singleDoc_col-text__6X2Q4{margin:0;padding:0;word-break:break-word}.singleDoc_row__dfaTX{display:flex;align-items:center;justify-content:space-between;margin:0}.singleDoc_edit-col__EgfFu{display:flex;flex-direction:row;justify-content:flex-end}.singleDoc_image-preview__77Obb{display:flex;align-items:center;position:relative;overflow:hidden;height:291px;width:100%}.comment_comment-wrapper__tz6Qt{background-color:#fff;padding:1rem;border:1px solid #dae3e3;border-radius:4px;margin:0}.comment_topWrapper__V5IM4{display:flex;padding:0}.comment_badge__RvfM8{display:flex;flex-direction:row;align-items:center;padding:2px 4px;background-color:#2f2f2f;color:#fff;border:1px solid #434f54;border-radius:2px;width:30px;height:18px;font-style:normal;font-weight:400;font-size:12px;line-height:120%}.comment_mobile-reply__URZTg{display:flex;justify-content:end;padding-top:1rem;float:left}.comment_flex-col-center__p5Die{display:flex;flex-direction:column;align-items:center;justify-content:center}.comment_flexrowcenter__pI2rx{display:flex;flex-direction:row;align-items:center;justify-content:center}.comment_flexrowend__2wyZ0{display:flex;flex-direction:row;align-items:center;justify-content:flex-end}.comment_wrapper__cfVkV{position:relative;right:160px;font-size:14px}.comment_wrapper-small-screen__pNX7A{position:relative;right:200px;top:20px}.comment_dropdown__Yucv4{position:absolute;display:show;background-color:#fff;box-shadow:0 8px 16px 0 rgba(0,0,0,.2);z-index:1;margin:7px;min-width:200px}.comment_dropdown__Yucv4 a{color:#000;padding:12px 16px;text-decoration:none;margin:5px;display:block}.comment_dropdown__Yucv4 a:hover{background-color:#ecf1f1}.comment_divider__Khtkj{width:0;height:100%;border-right:1px solid #c9d2d2}.comment_trigger-icon__ZnCEf{cursor:pointer;color:#000}.respectButton_container__vEeBY{padding:7px 2px 2px;width:35px;height:35px;border:none;background:rgba(0,0,0,0);cursor:pointer}.respectButton_container__vEeBY:hover{background:rgba(0,92,95,.1);border-radius:30px}.respectButton_disabled-container__U_4C7{padding:7px 0 0;width:35px;height:35px;border:none;background:rgba(0,0,0,0)}.respectButton_icon__Qvzp_{margin-left:5px;width:20px;height:20px;border:none;background:rgba(0,0,0,0);cursor:pointer}.respectButton_disabled-icon__EvFCz{margin-left:5px;width:19px;height:19px;border:none;background:rgba(0,0,0,0)}.CommentLogin_container__aj_dW{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:16px;gap:16px;border:1px solid #dae3e3;border-radius:4px;background:#fff}.CommentLogin_wrapper__Zbb3J{justify-content:center;padding:8px 0}.CommentLogin_wrapper__Zbb3J,.error_container__PqU7w{display:flex;flex-direction:column;align-items:center}.error_container__PqU7w{padding:40px;gap:33px;background:#fff;border-radius:6px}.error_image-wrapper__k4M6L{width:auto;max-width:640px;margin:auto}.error_buttons-container__lcQ3I{display:flex;flex-direction:row;align-items:flex-start;padding:0;gap:24px}.notification_main-wrapper__xGr71{position:relative}.notification_wrapper__eqFcm{position:fixed;top:108px;right:8px;width:100%;max-width:535px;z-index:2;filter:drop-shadow(0 4px 20px rgba(0,0,0,.25));border-radius:6px;background-color:#fff}.notification_header__kf0BD{width:100%;background:#ecf1f1;justify-content:center;padding:1px 20px;text-align:center;border-top-left-radius:6px;border-top-right-radius:6px;height:53px;border-bottom:1px solid #dae3e3;justify-content:space-between}.notification_header__kf0BD,.notification_header__kf0BD>.notification_left__LMHK0{align-items:center;gap:8px;display:flex;flex-direction:row}.notification_see-all__efEbG{text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:8px}.notification_footer__ARmGx{height:24px;border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:1px solid #dae3e3;background:#ecf1f1;display:relative}.notification_card-wrapper__cuFE_{display:flex;flex-direction:row;align-items:center;padding:1px 1px 1px 24px;gap:20px;width:100%;border-bottom:1px solid #dae3e3}.notification_card__gpnn9{display:flex;flex-direction:column;align-items:flex-start;padding:16px 20px 16px 0;gap:5px;width:inherit}.notification_card__gpnn9>.notification_top__OfqO6{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%}.notification_top__OfqO6>.notification_left__LMHK0{display:flex;flex-direction:row;align-items:center;gap:13px}.notification_left__LMHK0>.notification_text___GL9N{display:flex;flex-direction:row;gap:4px}.notification_top__OfqO6>.notification_right__y0Hxu{display:flex;flex-direction:row;align-items:center;gap:13px}.notification_slug__8ure_{display:-webkit-box;word-break:break-all;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;width:100%}.notification_zero-wrapper__K04Zb{display:flex;flex-direction:column;padding:48px 0;justify-content:center;align-items:center;gap:20px;align-self:stretch}.notification_zero__4q7Tw{display:flex;flex-direction:column;padding:0 80px;justify-content:center;text-align:center}.notifications_button__Tkh1B{position:fixed;z-index:99;top:58px;right:27px;cursor:pointer}.notifications_button__Tkh1B:hover{animation-name:notifications_hvr-hang-sink__7EI75,notifications_hvr-hang__hyUye;animation-duration:.3s,1.5s;animation-delay:0s,.3s;animation-timing-function:ease-out,ease-in-out;animation-iteration-count:1,infinite;animation-fill-mode:forwards;animation-direction:normal,alternate}@keyframes notifications_hvr-hang__hyUye{0%{transform:translateY(4px)}50%{transform:translateY(2px)}to{transform:translateY(4px)}}@keyframes notifications_hvr-hang-sink__7EI75{to{transform:translateY(4px)}}.infoBanner_info-banner__gLR80{min-height:40px;background:#f1c40f;flex-direction:row;padding:8px}.infoBanner_info-banner__gLR80,.maintenance_page-wrapper__o2_XX{display:flex;justify-content:center;align-items:center;text-align:center}.maintenance_page-wrapper__o2_XX{flex-direction:column;gap:10px;min-height:80vh;background:radial-gradient(50% 50% at 50% 50%,rgba(216,248,246,.5) 0,rgba(165,242,238,.5) 100%),#fff}
Components and supplies
resistor 2k ohm
5V 2.5A Switching Power Supply
grounded power cable
Resistor 10k ohm
yellow wire nuts
Alphanumeric LCD, 16 x 2
Arduino Nano R3
Decora 2-Gang Midway Nylon Wall Plate - White
decora duplex outlet, white
Jumper wires (generic)
2-Gang 47 cu. in. PVC New/Old Work Electrical Box (B249B)
Grove - 2-Channel SPDT Relay
DHT11 Temperature & Humidity Sensor (3 pins)
Tools and machines
Soldering iron (generic)
Project description
Code
Humidity controller code
c_cpp
code for operating the humidity controller
Humidity controller code
c_cpp
code for operating the humidity controller
Downloadable files
wiring diagram
wiring diagram
Comments
Only logged in users can leave comments
Anonymous user
3 years ago
Hey , i install dht.h library but i see always dht.h: No such file or directory
Anonymous user
3 years ago
Will try this fall. Im in engineering school and not only have music instruments to take care of, i think this is brilliant! Please share other ideas ....
basssman72
4 years ago
Will try this fall. Im in engineering school and not only have music instruments to take care of, i think this is brilliant! Please share other ideas ....
radiogareth
6 years ago
Thanks for sharing this project - just what I need to look after my mushroom growing cabinet :-) It won't compile in 1.81, I'm getting three errors....first error in the listing seems to be lower case on line 18 #include <dht.h> then on compiling it stops here on line 23 with 'dht does not name a type' (fair enough maybe, so changed for DHT DHT_sens(10, DHT11); from a listing that DOES work. Its a type DHT11 and its on digital pin 10. Then it stops on line 270 } else if(DHT.humidity >= setpoint + 3 and syson == true){ //if humidity is 3% above setpoint Serial.println("humidifier OFF, fan ON"); digitalWrite(humidifier, HIGH); //turn on fan digitalWrite(fan, LOW); } else{ Serial.println("all off"); //if humidity is within 3% of setpoint digitalWrite(humidifier, HIGH); //turn both off digitalWrite(fan, HIGH); } //delay(700); //un-comment for serial debugging Serial.print("setpoint = "); Serial.println(setpoint); //delay(700); //un-comment for serial debugging } UNQUOTE with the message "expected primary-expression before '.' token". Not sure why really. I'm sure I've downloaded and checked the various libraries as both my LCD and DH11 work with separate test programs. Any ideas?
radiogareth
2 years ago
I've tried the listing in the on-line compiler and it fails in the same manner and same messages as above. How did you get it to work?
Anonymous user
6 years ago
Hey , i install dht.h library but i see always dht.h: No such file or directory
Humidity Controller | Arduino Project Hub
auro_auro
6 months ago
Thanks for sharing this project. I'm a student of electronic engineering. I'm really interested in learning more from it. I was wondering if it would be possible for me to take a look at your PCB schematic diagram? It would be of great help for my studies.