- ओटीए प्रोग्रामिंग क्या है?
- ESP8266 NodeMCU
- अवयव आवश्यक
- वायरलेस तरीके से OTA अपडेट प्राप्त करने के लिए NodeMCU की तैयारी
- ESP8266 OTA स्थानांतरण के लिए निमिष एलईडी कार्यक्रम
- OTA अपडेट के माध्यम से ESP8266 पर एलईडी को ब्लिंक करना
ओटीए प्रोग्रामिंग क्या है?
ओटीए प्रोग्रामिंग (ओवर द एयर) एक ऐसी प्रक्रिया है जो उपकरणों को बिना किसी भौतिक पहुँच के अपने फर्मवेयर या सॉफ़्टवेयर को वायरलेस तरीके से अपग्रेड करने की अनुमति देती है। यह वायर्ड धारावाहिक संचार के बजाय वाई-फाई, ब्लूटूथ, जीपीआरएस या 4 जी / 3 जी जैसी वायरलेस तकनीक का उपयोग करता है। ओटीए का उपयोग माइक्रोकंट्रोलर, सेलफोन, कंप्यूटर, सेट-टॉप बॉक्स आदि जैसे उपकरणों को फिर से शुरू करने के लिए किया जाता है। ओटीए अपडेट आमतौर पर सॉफ़्टवेयर को अपडेट करने, बग्स को हल करने, कुछ सुविधाओं को जोड़ने आदि के लिए भेजे जाते हैं। IoT उपकरणों के बढ़ते उपयोग के साथ ओटीए का उपयोग करके स्थानांतरित किया जाता है। आवृत्ति बैंड जिसमें कम डेटा ट्रांसमिशन दर (868 मेगाहर्ट्ज, 900 मेगाहर्ट्ज, 2400 मेगाहर्ट्ज) है।
यहाँ इस ट्यूटोरियल में, हम LED को ब्लिंक करने के लिए ESP8266 NodeMCU में OTA अपडेट भेजेंगे ।
ESP8266 NodeMCU
NodeMCU एक खुला स्रोत IoT मंच है। इसमें फर्मवेयर शामिल है जो कम लागत वाई-फाई सक्षम ESP8266 वाई-फाई SoC एस्प्रेसिफ़ सिस्टम से चलता है, और हार्डवेयर जो ESP-12 मॉड्यूल पर आधारित है। इसमें GPIO, SPI, I2C, ADC, PWM और UART पिन हैं। इसे Arduino IDE के साथ प्रोग्राम किया जा सकता है। बोर्ड पर NodeMCU में CP2102 IC है जो USB को TTL कार्यक्षमता प्रदान करता है। ESP8266 के बारे में अधिक जानने के लिए, अन्य ESP8266 आधारित परियोजनाओं की जाँच करें।
अवयव आवश्यक
- NodeMCU ESP8266
- माइक्रो यूएसबी केबल
- Arduino IDE
वायरलेस तरीके से OTA अपडेट प्राप्त करने के लिए NodeMCU की तैयारी
पहले माइक्रो USB केबल का उपयोग करके NodeMCU ESP8266 को पीसी से कनेक्ट करें। फिर, ओटीए का उपयोग करके फर्मवेयर को अपलोड करने के लिए, हमें ईएसपी आईपी पते को उत्पन्न करने के लिए माइक्रो यूएसबी का उपयोग करके स्केच को अपलोड करना होगा। अगली बार फर्मवेयर को वायरलेस तरीके से अपलोड करने के लिए यह आवश्यक कदम है। सीरियल पोर्ट का चयन करें कि टूल -> पोर्ट से कौन सी केबल जुड़ी हुई है ।
ESP8266 पुस्तकालयों और उदाहरणों के साथ आता है जिसे सीधे Arduino IDE से एक्सेस किया जा सकता है। Arduino IDE खोलें और फिर बेसिक का उदाहरण खोलें।
स्केच को अपने वाई-फाई SSID और पासवर्ड द्वारा "अपने-ssid" और "अपने-पासवर्ड" को बदलकर संपादित करें और फिर स्केच अपलोड करें
कार्यक्रम को सफलतापूर्वक अपलोड करने के बाद सीरियल मॉनिटर खोलें। सीरियल मॉनिटर पर 115200 की बॉड दर निर्धारित करें और NodeMCU ESP8266 पर रीसेट बटन दबाएं। NodeMCU ESP8266 को वाई-फाई से जोड़ना कुछ समय लगता है क्योंकि यह वाई-फाई क्रेडेंशियल की जाँच करता है। यदि SSID और पासवर्ड सही है तो NodeMCU ESP8266 Wi-Fi से कनेक्ट हो जाएगा और ESP का IP पता सीरियल मॉनीटर पर प्रदर्शित होगा।
ESP8266 OTA स्थानांतरण के लिए निमिष एलईडी कार्यक्रम
ओटीए के माध्यम से ब्लिंकिंग एलईडी कार्यक्रम को स्थानांतरित करने के लिए पूरा कोड अंत में दिया गया है, यहां हम कोड के कुछ महत्वपूर्ण भाग के बारे में बता रहे हैं।
आवश्यक पुस्तकालयों को आयात करना कोड लिखने में पहला कदम है। ESP8266WiFi.h लाइब्रेरी नेटवर्क से कनेक्ट करने के लिए आवश्यक ESP8266 विशिष्ट वाई-फाई दिनचर्या प्रदान करता है। इसके अलावा यह स्टेशन मोड या सॉफ्ट एक्सेस प्वाइंट मोड में ईएसपी 8266 को संचालित करने के तरीके और गुण प्रदान करता है। ESP8266mDNS.h स्केच को मल्टीकास्ट DNS प्रश्नों का जवाब देने की अनुमति देता है।
#शामिल
SSID के लिए वैरिएबल और वाई-फाई नेटवर्क के पासवर्ड को परिभाषित करें जिससे ईएसपी जुड़ा होना है। हमें अपने पीसी और ईएसपी को एक ही वाई-फाई नेटवर्क से जोड़ना होगा।
#ifndef STASSID #define STASSID "your-ssid" #define STAPSK "आपका-पासवर्ड" #endif const char * ssid = STASSID; const char * पासवर्ड = STAPSK;
ESP8266 को स्टेशन मोड के रूप में सेट किया गया है और क्रेडेंशियल्स देकर वाई-फाई कनेक्शन शुरू किया गया है । ईएसपी को वाई-फाई मॉड्यूल से कनेक्ट करने में कुछ समय लगता है। यदि SSID और पासवर्ड सही हैं, तो यह Wi-Fi से कनेक्ट हो जाता है और यदि SSID और पासवर्ड सही नहीं हैं, तो यह प्रत्येक 1 सेकंड में रीबूट हो जाएगा।
सीरियल.बेगिन (115200); // सेट करें बॉड दर 115200 Serial.println ("बूटिंग") के लिए; // वाई-फाई WiFi.mode (WIFI_STA) के साथ ईएसपी को जोड़ने के लिए कदम ; // स्टेशन मोड WiFi.begin (ssid, पासवर्ड) के रूप में ईएसपी सेट करें ; // Wi-Fi क्रेडेंशियल जबकि (WiFi.waitForConnectResult ()! = WL_CONNECTED) // ईएसपी को वाई-फाई से कनेक्ट करने में कुछ समय लगता है, इसलिए तब तक प्रतीक्षा करें जब तक कि यह कनेक्ट न हो जाए { Serial.println ("कनेक्शन विफल! रिबूटिंग…"); देरी (1000); ESP.restart (); }
ईएसपी का आईपी पता सीरियल मॉनिटर पर वाई-फाई मॉड्यूल से कनेक्ट करने के रूप में मुद्रित किया जाता है। WiFi.localIP () ESP का IP पता देता है।
कोड अपलोड करने के बाद 115200 बॉड रेट पर सफलतापूर्वक सीरियल मॉनिटर खोलें। रीसेट बटन दबाएं और कुछ सेकंड के बाद आप सीरियल मॉनिटर पर ईएसपी आईपी एड्रेस देख पाएंगे। अब आप फर्मवेयर को वायरलेस तरीके से अपलोड कर पाएंगे।
OTA अपडेट के माध्यम से ESP8266 पर एलईडी को ब्लिंक करना
अगला स्केच अपलोड करने से पहले टूल पर जाएं और फर्मवेयर को NodeMCU में वायरलेस रूप से अपलोड करने के लिए PORT को ESP IP पते में बदलें।
अब नीचे दिए गए स्केच के निचे दिए गए स्कैच को NodeMCU पर वायरलेस तरीके से Arduino IDE का उपयोग करके अपलोड करें और सुनिश्चित करें कि आपका PC और ESP एक ही वाई-फाई नेटवर्क से जुड़े हैं और ESP कुछ शक्ति स्रोत द्वारा संचालित है।
कोड को सफलतापूर्वक अपलोड करने के बाद, NodeMCU ESP8266 पर एलईडी हर 1 सेकंड में ब्लिंक करना शुरू कर देगा। ईएसपी पर फर्मवेयर अपलोड करते समय आप सुरक्षा के लिए स्केच में होस्ट नाम और पासवर्ड भी सेट कर सकते हैं।