विषयसूची:
वीडियो: Apple HomeKit WS2812B LED नियंत्रक: 3 चरण (चित्रों के साथ)
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:19
वहाँ WS2812B LED स्ट्रिप्स पर आधारित बहुत सारी परियोजनाएँ हैं, लेकिन इनमें से अधिकांश होमब्रिज या किसी अन्य समाधान का उपयोग कर रही हैं - ज्यादातर MQTT पर आधारित - HomeKit के साथ संवाद करने के लिए।
कुछ प्रोजेक्ट Apple HomeKit के माध्यम से भी प्रभाव का उपयोग कर रहे हैं, लेकिन उनमें से कोई भी स्टैंडअलोन HomeKit का समर्थन नहीं करता है बिना किसी ब्रिज की आवश्यकता के मैं WS2812B LED का उपयोग लगभग 3-4 वर्षों से HomeKit के साथ कर रहा हूं और वे बहुत अच्छी तरह से काम कर रहे हैं
चूंकि कोड बहुत जटिल है और मैंने कई कस्टम पुस्तकालयों का उपयोग किया है, मैंने पहले से संकलित फर्मवेयर फाइलें बनाई हैं। उन लोगों के लिए जो मूल HomeKit प्रोजेक्ट बनाने में रुचि रखते हैं, esp-homekit का सोर्स कोड यहां उपलब्ध है।
बुनियादी जानकारी:
- वर्तमान में केवल WS2812B, WS2812B ECO और WS2813 LED स्ट्रिप्स समर्थित हैं!
- RAM बचाने के लिए LED की अधिकतम संख्या 500 तक सीमित है
- तर्क स्तर कनवर्टर आवश्यक (3.3V से 5V डेटा रूपांतरण के लिए)
- अच्छी गुणवत्ता वाली 5V बिजली की आपूर्ति भी आवश्यक है
- अधिक जानकारी मेरे GitHub पर मिल सकती है
- Adafruit berguide भी मदद कर सकता है:-)
पीसीबी डिजाइन:
मैंने नवीनतम SN74HCT125N लॉजिक लेवल कन्वर्टर IC और अनुशंसित 1000uF कैपेसिटर का उपयोग करके Adafruit के NeoPixel Überguide में वर्णित उचित तरीके से NeoPixel LED को चलाने के लिए एक साधारण PCB डिज़ाइन किया है:-) मैं वर्तमान में 5V 10A बिजली की आपूर्ति के साथ इस PCB का उपयोग कर रहा हूँ बिना किसी (तापमान) मुद्दों के:-)
इसके अलावा मेरे पास छोटी एलईडी स्ट्रिप्स के लिए एक यूएसबी टाइप-सी संस्करण भी है!
आप यहाँ और यहाँ से PCB मंगवा सकते हैं
आप पीसीबी के बारे में अधिक जानकारी यहाँ पा सकते हैं
विशेषताएं:
- रंग बदलना
- चमक बदलें
- रंग तापमान बदलें (कोई RGBW पट्टी की आवश्यकता नहीं है)
- WS2812FX लाइट इफेक्ट्स (बीटा!!!)
- WS2812B LED काउंट सेट करना (पहले बूट पर 1 से 500 तक)
- पावर व्यवहार विशेषता (डिफ़ॉल्ट रंग / ईव ऐप के माध्यम से स्टार्टअप पर अंतिम बार उपयोग किया गया)
- संक्रमण (त्वरित / डिफ़ॉल्ट / मध्यम / ईव ऐप के माध्यम से शांत)
- चाइल्ड लॉक (ईव ऐप के माध्यम से सक्षम / अक्षम बटन दबाएं)
- डाउनलोड करने योग्य उपयोगकर्ता मैनुअल (ईव ऐप के माध्यम से)
- पावर / रीसेट बटन
आपूर्ति
कस्टम पीसीबी बनाने के लिए आपको एक सस्ते सोल्डरिंग आयरन, या एक सोल्डरिंग स्टेशन की आवश्यकता होगी यह एक या यह एक। साथ ही एक हॉट एयर सोल्डरिंग गन भी मददगार होगी! कोड अपलोड करने के लिए आपको शायद एक यूएसबी टीटीएल एडाप्टर भी खरीदना होगा।
आवश्यक भाग:
- NodeMCU या Wemos D1 Mini
- तर्क स्तर कनवर्टर आईसी
- WS2812B एलईडी पट्टी
- जेएसटी 3 पिन महिला कनेक्टर
- 5V 2-10A बिजली की आपूर्ति v1 या 5V 2-10A बिजली की आपूर्ति v2
- जंपर केबल
पीसीबी पार्ट्स:
- ESP12F/ई
- ईएसपी-01एस(1एमबी फ्लैश)
- एसएमडी 0805 प्रतिरोधक
- एसएमडी 0805 कैपेसिटर
- AMS1117-3.3
- स्पर्श बटन
- 2.54 मिमी हैडर
- SN74HCT125N
- एसएमडी 10.5x10.5 1000uF संधारित्र
- डीसी कनेक्टर
- 3 पिन स्क्रू टर्मिनल
- फ्यूज होल्डर
- फ्यूज
चरण 1: फर्मवेयर स्थापित करना
आप फर्मवेयर को मेरे GitHub पेज से डाउनलोड कर सकते हैं
खिड़कियाँ
विंडोज़ के लिए आप एस्प्रेसिफ द्वारा आधिकारिक फर्मवेयर डाउनलोड टूल का उपयोग कर सकते हैं
फ्लैश एड्रेस (0x2000), फ्लैश साइज (1MB/8mbit, 4MB/32mbit) और फ्लैश मोड (DIO/QIO) सेट करना बहुत महत्वपूर्ण कदम है, लेकिन आपके द्वारा उपयोग किए जा रहे मॉड्यूल के आधार पर ये सेटिंग्स बदल सकती हैं! इसके अलावा, मैंने.bin फ़ाइलों को अपलोड करने से पहले फ्लैश को मिटाने की सलाह दी है!
समायोजन:
- बॉड दर 115200
- फ्लैश आकार 4MB या 32mbit (आपके मॉड्यूल के आधार पर)
- फ्लैश मोड क्यूआईओ (या आपके मॉड्यूल के आधार पर डीआईओ)
- 0x0000 rboot.bin
- 0x1000 ब्लैंक_कॉन्फिग.बिन
- 0x2000 एलईडीस्ट्रिप.बिन
- 40 मेगाहर्ट्ज
मैक ओएस
MacOS के लिए आप इस फ्लैशर टूल का उपयोग कर सकते हैं
समायोजन:
- फ्लैश मिटाएं - हाँ
- बॉड दर 115200
- फ्लैश आकार 4MB या 32mbit (आपके मॉड्यूल के आधार पर)
- फ्लैश मोड क्यूआईओ (या आपके मॉड्यूल के आधार पर डीआईओ)
- फ़ाइल: ledstrip.bin
- 40 मेगाहर्ट्ज
मैन्युअल रूप से फ्लैश
अपने ईएसपी मॉड्यूल को फ्लैश करने में सक्षम होने के लिए हमें अपने मैक पर esptool.py स्थापित करना होगा। Esptool.py के साथ काम करने के लिए, आपको अपने सिस्टम पर या तो Python 2.7, Python 3.4 या एक नए Python इंस्टॉलेशन की आवश्यकता होगी। हम नवीनतम पायथन संस्करण का उपयोग करने की सलाह देते हैं, इसलिए पायथन की वेबसाइट पर जाएं और इसे अपने कंप्यूटर में स्थापित करें।
पायथन स्थापित होने के साथ, एक टर्मिनल विंडो खोलें और पाइप के साथ नवीनतम स्थिर esptool.py रिलीज़ स्थापित करें:
पाइप स्थापित esptool
नोट: कुछ पायथन इंस्टॉलेशन के साथ जो कमांड काम नहीं कर सकता है और आपको एक त्रुटि प्राप्त होगी। यदि ऐसा है, तो esptool.py को इसके साथ स्थापित करने का प्रयास करें:
pip3 esptool स्थापित करें अजगर -m pip esptool स्थापित करें pip2 esptool स्थापित करें
स्थापित करने के बाद, आपके पास डिफ़ॉल्ट पायथन निष्पादन योग्य निर्देशिका में esptool.py स्थापित होगा और आप इसे esptool.py कमांड के साथ चलाने में सक्षम होना चाहिए। अपनी टर्मिनल विंडो में, निम्न आदेश चलाएँ:
esptool.py
आपके कंप्यूटर पर esptool.py स्थापित होने के साथ, आप फर्मवेयर के साथ अपने ESP8266 बोर्ड को आसानी से फ्लैश कर सकते हैं।
सबसे पहले आपको तीन बिन फ़ाइलें डाउनलोड करनी होंगी: rboot.bin औरblank_config.bin और नवीनतम रिलीज़। rboot.bin में ESP8266 के लिए बूटलोडर और केवल एक रिक्त कॉन्फ़िग फ़ाइल में रिक्त_कॉन्फ़िग.बिन होता है और ledstrip.bin में फ़र्मवेयर होता है। अब अपने डिवाइस को फ्लैश-मोड में अपने FTDI अडैप्टर से कनेक्ट करें।
मिरर लिंक:
rboot.binblank_config.binledstrip.bin
डिवाइस को फ्लैश मोड में डालना
ESP8266 फर्मवेयर को सक्षम करने के लिए डिवाइस को पावर करते समय चमकती GPIO0 पिन को कम खींचा जाना चाहिए। मेरे कस्टम पीसीबी के साथ एक बटन है, नोडएमसीयू में एक फ्लैश बटन भी है और वेमोस यूएसबी का उपयोग करके स्वचालित रूप से करता है। इसके विपरीत, सामान्य बूट के लिए, GPIO0 को ऊंचा या तैरता हुआ खींचा जाना चाहिए। फ्लैश मोड में प्रारंभ करें
आपके द्वारा बनाई गई निर्देशिका पर जाएँ जहाँ आपने पहले डाउनलोड की गई rboot.binblank_config.bin फ़ाइलें (जैसे डाउनलोड) रखी हैं
टर्मिनल ऐप खोलें। अपनी गोदी में खोजक आइकन पर क्लिक करें। जाओ पर क्लिक करें। उपयोगिताएँ क्लिक करें। टर्मिनल पर डबल-क्लिक करें। डाउनलोड निर्देशिका में बदलें।
ESP8266 से कनेक्ट करने के लिए आपको USB TTL अडैप्टर की आवश्यकता होगी। यदि आप एक Wemos D1 मिनी का उपयोग कर रहे हैं, तो केवल एक माइक्रोयूएसबी केबल की आवश्यकता है, Wemos में TTL एडेप्टर बिल्ट-इन है।
सीडी डाउनलोड
नोट: यदि आप तीन.bin फ़ाइलों को संग्रहीत करने के लिए किसी अन्य लाइब्रेरी का उपयोग कर रहे हैं, तो `cd` कमांड का उपयोग करके उस लाइब्रेरी में नेविगेट करें:
अपने डिवाइस को फ्लैश करने के लिए esptool.py का उपयोग करें। पहले हमें फ्लैश को मिटाना होगा:
esptool.py -p /dev/ इरेज़_फ्लैश
आम तौर पर, आपका ESPPort /dev/cu.usbserial-`xxxxxx` जैसा कुछ होगा। फिर, अपने डिवाइस को फिर से फ्लैश-मोड में सेट करें, और नया फर्मवेयर फ्लैश करें:
esptool.py -p /dev/cu.wchusbserial1420 --baud 115200 write_flash -fs 32m -fm dio -ff 40m 0x0 rboot.bin 0x1000blank_config.bin 0x2000 ledstrip.bin
चरण 2: वाई-फाई और होमकिट सेटअप
वाई-फाई सेटअप
HomeKit में एक्सेसरी जोड़ने से पहले आपको वाईफाई नेटवर्क को कॉन्फ़िगर करना होगा। वाई-फाई सेटिंग्स को कॉन्फ़िगर करने के लिए, डिवाइस एपी मोड में अपना वाई-फाई उत्पन्न करता है। अपना वाई-फाई नेटवर्क सेटअप करने के लिए आपको इससे कनेक्ट होना होगा। बस अपना आईओएस डिवाइस लें, सेटिंग -> वाई-फाई पर जाएं, और होमकिड नामक एक एसएसआईडी खोजें- उसके बाद मॉड्यूल का मैक पता और उससे कनेक्ट करें। सुरक्षा कारणों से एपी पासवर्ड से सुरक्षित है! डिफ़ॉल्ट एपी पासवर्ड: 12345678
कुछ सेकंड प्रतीक्षा करें जब तक कि एक वेब आपको वे सभी वाई-फाई नेटवर्क न दिखा दे जो डिवाइस को मिल गया है। अपना चयन करें, और पासवर्ड दर्ज करें! उसके बाद आप अपनी एलईडी पट्टी में एलईडी की सटीक संख्या जोड़ सकते हैं! 1 से 500 तक की संख्या दर्ज करें! फिर ज्वाइन बटन पर क्लिक करें! मॉड्यूल चयनित वाई-फाई नेटवर्क को जोड़ने का प्रयास करेगा, इसमें कुछ सेकंड लगेंगे।
नोट: यदि दिया गया पासवर्ड गलत है, तो आप रीसेट बटन को 10 सेकंड के लिए दबाकर वाई-फाई सेटिंग्स को रीसेट कर सकते हैं
होमकिट सेटअप
अपने आईओएस डिवाइस में, होम ऐप खोलें और एक नया एक्सेसरी जोड़ने के लिए सामान्य चरणों का पालन करें। पेयरिंग सेटअप में लगभग 30 सेकंड का समय लगता है।
डिफ़ॉल्ट होमकिट कोड 021-82-017 है।
इसके अलावा आप इस होमकिट क्यूआर कोड को स्कैन कर सकते हैं:
नोट: यदि युग्मन विफल हो जाता है, तो आप अपने डिवाइस को अनपॉवर कर सकते हैं, इसे फिर से चालू कर सकते हैं, और होमकिट सेटअप को फिर से शुरू कर सकते हैं (वाईफाई सेटिंग्स कॉन्फ़िगर रखें)। सफल युग्मन के बाद एलईडी पट्टी 3 बार सफेद चमकेगी!
सामान्य मुद्दे:
- कभी-कभी क्यूआर कोड का उपयोग करके कई एक्सेसरीज़ जोड़ना विफल हो जाता है, अगर होमकिट "एक्सेसरी पहले से ही जोड़ा गया" रिपोर्ट करता है तो बस क्यूआर कोड को स्कैन करने के बजाय मैन्युअल रूप से पेयरिंग कोड जोड़ें!
- अगर कुछ गलत हो जाता है तो आप Arduino के सीरियल मॉनिटर का उपयोग करके लॉग फाइल देख सकते हैं और GitHub पर एक मुद्दा खोलने के लिए स्वतंत्र हो गए
चरण 3: कस्टम सेटिंग्स
अफसोस की बात है कि होम ऐप कस्टम / तृतीय पक्ष विशेषताओं का समर्थन नहीं करता है, इसलिए आपको इन सेटिंग को बदलने और WS2812B प्रभावों का उपयोग करने के लिए Elgato EVE ऐप की आवश्यकता होगी। जब आप इसे ईव ऐप के माध्यम से जोड़ते हैं तो एक्सेसरी नकली ईव लाइट स्ट्रिप एक्सेसरी की तरह काम कर रही है?
संक्रमण और शक्ति व्यवहार
मूल ईव लाइट पट्टी इन दो विशेषताओं का समर्थन करती है। संक्रमण के साथ आप WS2812FX प्रभाव का उपयोग करते समय एलईडी पट्टी की गति को बदल सकते हैं! इसे त्वरित पर सेट करने से फ़ेडिंग इन/आउट अक्षम हो जाएगी और यह जल्दी से चालू हो जाएगा!
पावर बिहेवियर के साथ एलईडी पट्टी चालू होने पर आप डिफ़ॉल्ट रंग बदल सकते हैं! डिफ़ॉल्ट रूप से यह लास्ट यूज्ड कलर पर सेट होता है, इसलिए जब आप एलईडी स्ट्रिप को बंद करते हैं तो यह हमेशा आपके द्वारा उपयोग किए गए अंतिम रंग को याद रखेगा! जब डिफ़ॉल्ट सफेद पर सेट किया जाता है, तो हर बार जब आप एलईडी पट्टी को बंद करते हैं, तो रंग वापस सफेद हो जाएगा!
रीसेट
कुछ गलत होने की स्थिति में कोड में रीसेट फ़ंक्शन होता है। डिवाइस को पूरी तरह से बूट करने की अनुमति देने के लिए लगभग 5 सेकंड प्रतीक्षा करें, और फिर कम से कम 10 सेकंड के लिए बटन को देर तक दबाएं!
सभी कॉन्फ़िगर की गई सेटिंग्स हटा दी गई हैं और डिवाइस पुनरारंभ हो रहा है। यह होमकिट और वाई-फाई सेटिंग्स को हटा देता है, और वाई-फाई को फिर से कॉन्फ़िगर करने के लिए आपका डिवाइस अगली बार एक्सेस प्वाइंट मोड में जाएगा।
नोट: एक ही बटन को एक बार दबाने से एलईडी पट्टी चालू या बंद हो जाएगी
सिफारिश की:
ESP8266 पर आधारित Apple HomeKit वाई-फाई डीह्यूमिडिफ़ायर ?: 6 चरण (चित्रों के साथ)
ESP8266 पर आधारित Apple HomeKit Wi-Fi Dehumidifier ?: दुर्भाग्य से वहाँ केवल एक या दो DeHumidifiers हैं जो Apple HomeKit को सपोर्ट करते हैं, लेकिन इनकी कीमत वास्तव में बहुत अधिक है (300$+)। इसलिए मैंने अपना वाई-फाई सक्षम ऐप्पल होमकिट डीह्यूमिडिफ़ायर बनाने का फैसला किया है जो मेरे पास पहले से मौजूद सस्ते के आधार पर है? मैं
YABC - फिर भी एक और Blynk नियंत्रक - IoT क्लाउड तापमान और आर्द्रता नियंत्रक, ESP8266: 4 चरण
YABC - फिर भी एक और Blynk नियंत्रक - IoT क्लाउड तापमान और आर्द्रता नियंत्रक, ESP8266: हाय मेकर्स, मैंने हाल ही में घर पर मशरूम उगाना शुरू किया है, ऑयस्टर मशरूम, लेकिन मेरे पास घर पर पहले से ही 3x नियंत्रक हैं जो मेरे घर काढ़ा, पत्नी के लिए किण्वक तापमान नियंत्रण के लिए हैं। अब यह कोम्बुचा काम भी कर रहा है, और गर्मी के लिए थर्मोस्टेट के रूप में
कॉन्फ़िगर करने योग्य टाइमर नियंत्रक के साथ स्मार्ट कॉरिडोर कैसे बनाएं: 6 चरण (चित्रों के साथ)
कॉन्फ़िगर करने योग्य टाइमर नियंत्रक के साथ स्मार्ट कॉरिडोर कैसे बनाएं: यह ट्यूटोरियल दर्शाता है कि कॉन्फ़िगर करने योग्य टाइमर नियंत्रक के साथ स्मार्ट कॉरिडोर कैसे बनाया जाए
Arduino के साथ USB NES नियंत्रक !: 6 चरण (चित्रों के साथ)
एक Arduino के साथ USB NES नियंत्रक !: अद्यतन 22-12-2014 अनुदेशक उपयोगकर्ता mattpbooth ने कोड को अद्यतन किया है और इसे github पर होस्ट कर रहा है:https://github.com/mattpbooth/ArduinoNESController…धन्यवाद मैट! अद्यतन 03-12-2011प्रतिस्थापित प्रिंट (derp) के साथ एक प्रिंटलाइन। अद्यतन 01-12-2011 सभी कोड f
N64 नियंत्रक के साथ Arduino का उपयोग करें: 5 चरण (चित्रों के साथ)
N64 नियंत्रक के साथ Arduino का उपयोग करें: Arduino के साथ NES नियंत्रक का उपयोग करने के लिए ट्यूटोरियल हैं, लेकिन अधिक जटिल N64 नियंत्रक और इसके एनालॉग जॉयस्टिक का उपयोग करने की एक निश्चित अपील है। यदि आपके पास एक Arduino है और आप एक Adaptoid खरीदना नहीं चाहते हैं, तो यह निर्देश