विषयसूची:

हार्डवेयर और सॉफ्टवेयर हैक स्मार्ट डिवाइसेस, Tuya और Broadlink LEDbulb, Sonoff, BSD33 स्मार्ट प्लग: 7 कदम
हार्डवेयर और सॉफ्टवेयर हैक स्मार्ट डिवाइसेस, Tuya और Broadlink LEDbulb, Sonoff, BSD33 स्मार्ट प्लग: 7 कदम

वीडियो: हार्डवेयर और सॉफ्टवेयर हैक स्मार्ट डिवाइसेस, Tuya और Broadlink LEDbulb, Sonoff, BSD33 स्मार्ट प्लग: 7 कदम

वीडियो: हार्डवेयर और सॉफ्टवेयर हैक स्मार्ट डिवाइसेस, Tuya और Broadlink LEDbulb, Sonoff, BSD33 स्मार्ट प्लग: 7 कदम
वीडियो: How to Reset Smart Bulbs QUICKLY - Alexa Smart Home 2021 2024, नवंबर
Anonim
हार्डवेयर और सॉफ्टवेयर हैक स्मार्ट डिवाइस, Tuya और Broadlink LEDbulb, Sonoff, BSD33 स्मार्ट प्लग
हार्डवेयर और सॉफ्टवेयर हैक स्मार्ट डिवाइस, Tuya और Broadlink LEDbulb, Sonoff, BSD33 स्मार्ट प्लग

इस निर्देशयोग्य में मैं आपको दिखाता हूं कि कैसे मैंने अपने स्वयं के फर्मवेयर के साथ कई स्मार्ट उपकरणों को फ्लैश किया, इसलिए मैं उन्हें अपने ओपनहैब सेटअप के माध्यम से MQTT द्वारा नियंत्रित कर सकता हूं।

जब मैंने उन्हें हैक किया तो मैं नए डिवाइस जोड़ूंगा।

बेशक कस्टम फर्मवेयर फ्लैश करने के लिए अन्य सॉफ्टवेयर आधारित विधियां हैं, जैसे तुया कन्वर्ट, लेकिन मुझे यह समझना अच्छा लगता है कि डिवाइस कैसे काम करता है और 'हुड के नीचे' क्या है।

Arduino IDE का उपयोग करके कोड लिखा और फ्लैश किया गया है।

मैं अपने उपकरणों को ओपनहैब और Google होम (ओपनहैब के माध्यम से) के माध्यम से नियंत्रित करता हूं, यदि आप अधिक जानना चाहते हैं या.items फ़ाइल आदि की आवश्यकता है, तो कृपया मुझे टिप्पणियों में बताएं।

सबसे पहले सुरक्षा

सावधान रहें क्योंकि हम मुख्य वोल्टेज चालित उपकरणों पर काम कर रहे हैं। उन पर काम करने से पहले उपकरणों को बिजली की आपूर्ति से डिस्कनेक्ट करें।

मुझे आपको कोई संदेह है कि संशोधन के बाद डिवाइस सुरक्षित है या नहीं, कृपया इसे त्याग दें।

आपूर्ति

अधिकांश हैक्स के लिए आपको Arduino IDE, कुछ जम्पर वायर, एक सोल्डरिंग आयरन, कुछ रेसिस्टर्स और ESP8266 या ESP8285 मॉड्यूल चलाने वाले कंप्यूटर से जुड़े FDTI प्रोग्रामर की आवश्यकता होती है।

चरण 1: तुया एलईडी आरजीबीडब्ल्यू स्मार्ट बल्ब

तुया एलईडी आरजीबीडब्ल्यू स्मार्ट बल्ब
तुया एलईडी आरजीबीडब्ल्यू स्मार्ट बल्ब
तुया एलईडी आरजीबीडब्ल्यू स्मार्ट बल्ब
तुया एलईडी आरजीबीडब्ल्यू स्मार्ट बल्ब
तुया एलईडी आरजीबीडब्ल्यू स्मार्ट बल्ब
तुया एलईडी आरजीबीडब्ल्यू स्मार्ट बल्ब

पहचान

मैंने यह लैंप Aliexpress से खरीदा है। यह स्मार्ट लाइफ ऐप के साथ ठीक काम करता है, लेकिन मैं इसे ओपनहैब से एमक्यूटीटी के माध्यम से नियंत्रित करना चाहता था। मैंने अपना खुद का Sonoff B1 फर्मवेयर पहले ही बना लिया है, इसलिए मैंने इस लैंप को उस फर्मवेयर के साथ फ्लैश करने की कोशिश की।

चमकता

आप प्लास्टिक की टोपी को ध्यान से हटाकर, हाथ से बल प्रयोग करके या धातु और प्लास्टिक के बीच स्क्रू ड्राइवर को घुमाकर लैंप खोलते हैं। आप नंगे ESP8266 चिप देख सकते हैं।

आवश्यक कनेक्शन पीसीबी (3v3, GND, RX, TX और IO0 (GPIO0)) पर छोटे पैड के माध्यम से उजागर होते हैं।

मैंने पहले पैड में कुछ मिलाप लगाया और तारों को मिलाप किया और फिर उन्हें एक साथ मिला दिया। मैंने तारों को दीपक से जोड़ने के लिए एक टाईरैप और कुछ गर्म गोंद का इस्तेमाल किया।

ESP8266 को प्रोग्राम मोड में लाने के लिए GPIO0 की आवश्यकता है। ESP8266 को पावर देते समय इसे जमीन से कनेक्ट करें। आप FTDI प्रोग्रामर का उपयोग करके ESP8266 को पावर और फ्लैश कर सकते हैं।

फर्मवेयर

फर्मवेयर मेरे Sonoff B1 फर्मवेयर पर आधारित है, लेकिन इसे संशोधित किया गया है, क्योंकि Sonoff B1 MY9231 LED ड्राइवरों का उपयोग करता है जो ESP8285 चिप द्वारा संचालित होते हैं और इस Tuya स्मार्ट लैंप में 4 चैनल (RGBW) सीधे PWM सिग्नल द्वारा स्विच किए गए मस्जिदों द्वारा संचालित होते हैं। ESP8266 से।

हरा चैनल GPIO12 से, लाल से GPIO14, नीला से GPIO13 और सफेद चैनल GPIO4 से जुड़ा है। कोड में आप इसे इस प्रकार देखते हैं: #define GREENPIN 12 #define REDPIN 14 #define BLUEPIN 13 #define WHITEPIN 4।

पूरा कोड मेरे जीथब पर है।

चरण 2: सामान्य गर्म सफेद एलईडी बल्ब - भाग 1

सामान्य गर्म सफेद एलईडी बल्ब - भाग 1
सामान्य गर्म सफेद एलईडी बल्ब - भाग 1
सामान्य गर्म सफेद एलईडी बल्ब - भाग 1
सामान्य गर्म सफेद एलईडी बल्ब - भाग 1
सामान्य गर्म सफेद एलईडी बल्ब - भाग 1
सामान्य गर्म सफेद एलईडी बल्ब - भाग 1

पहचान

मैंने ये एलईडी बल्ब अलीएक्सप्रेस ब्लू/व्हाइट बॉक्स और ब्लैक बॉक्स से खरीदे हैं। उन्हें मैजिक होम स्मार्ट होम एप और टेकलाइफ प्रो एप के जरिए नियंत्रित किया जाएगा। मैंने इन ऐप्स को नहीं आजमाया, क्योंकि मैं Openhab से MQTT के माध्यम से LED बल्ब को नियंत्रित करना चाहता था। चूंकि मेरे पास पहले से ही RGBW बल्बों के लिए फर्मवेयर था, इसलिए मैंने इसका उपयोग चार (RGBW) चैनलों के साथ नहीं, बल्कि केवल एक चैनल के साथ किया।

चमकता

आप प्लास्टिक की टोपी को ध्यान से हटाकर दीपक खोलें। मुझे पता चला कि टोपी धातु से थोड़ी चिपकी हुई थी, इसलिए मुझे धातु और प्लास्टिक के बीच एक स्क्रू ड्राइवर से बल की आवश्यकता थी।

मुझे एक ESP8266 या ESP8285 चिप देखने की उम्मीद थी, हालाँकि यह एक ब्रॉडलिंक मॉड्यूल था। मॉड्यूल एक ESP12 मॉड्यूल की तरह दिखता था, लेकिन मुझे पता चला कि पिनआउट पूरी तरह से अलग था। धातु के आवरण को हटाने से, मुझे पता चला कि यह RDA 5981AM चिप थी।

इस चिप को ईएसपी द्वारा बदलने का मेरा समाधान अगले चरण में दिखाया गया है।

चरण 3: सामान्य गर्म सफेद एलईडी बल्ब - भाग 2

सामान्य गर्म सफेद एलईडी बल्ब - भाग 2
सामान्य गर्म सफेद एलईडी बल्ब - भाग 2
सामान्य गर्म सफेद एलईडी बल्ब - भाग 2
सामान्य गर्म सफेद एलईडी बल्ब - भाग 2
सामान्य गर्म सफेद एलईडी बल्ब - भाग 2
सामान्य गर्म सफेद एलईडी बल्ब - भाग 2
सामान्य गर्म सफेद एलईडी बल्ब - भाग 2
सामान्य गर्म सफेद एलईडी बल्ब - भाग 2

मॉड्यूल 3 पिन के माध्यम से दीपक के आधार से जुड़े हुए हैं, पहली तस्वीर देखें:

  • 3V3 (3.3V)
  • जीएनडी (जमीन)
  • पीडब्लूएम (पल्स चौड़ाई मॉडुलन)

पीडब्लूएम पिन का उपयोग पीडब्लूएम सिग्नल के माध्यम से दीपक की चमक को सेट करने के लिए किया जाता है, जो 0 (लैंप बंद है) से 100 (दीपक पूरी तरह से चालू है) और बीच में प्रत्येक मान से भिन्न हो सकता है। पीडब्लूएम सिग्नल के बारे में कुछ और जानकारी के लिए यह वेबसाइट देखें।

चूंकि ESP8266 और ESP8285 मॉड्यूल 3.3V पर चलते हैं और आसानी से PWM सिग्नल उत्पन्न कर सकते हैं, इसलिए मैंने ब्रॉडलिंक मॉड्यूल को ESP8266 या ESP8285 मॉड्यूल में बदल दिया, जो मैंने चारों ओर बिछाए थे।

ESP-01S (ESP8266) मॉड्यूल एक अलग प्रोग्रामर के माध्यम से फ्लैश किए जाते हैं, इस निर्देश के चरण 3 को देखें। मैंने 3V3 और EN (सक्षम) के बीच पुल अप रेसिस्टर के साथ महिला हेडर पिन को लैंप में मिलाया। यह मेरा पहला प्रयोग था, बाद में मैं ESP8285 मॉड्यूल में बदल गया।

ESP-M1, ESP-M3 और ESP-01F (ESP8285) मॉड्यूल को आवश्यक कनेक्शन (3V3, GND, RX, TX और GPIO0) के लिए सोल्डरिंग तारों द्वारा फ्लैश किया जाता है (देखें चरण 1, तुया स्मार्ट लैंप की चमकती)। 3V3 और EN (सक्षम) के बीच एक पुल अप रोकनेवाला मिलाप।

ESP-M3 मॉड्यूल के साथ, मैं PWM सिग्नल उत्पन्न करने के लिए GPIO4 का उपयोग करता हूं। सबसे पहले मैंने GPIO2 का उपयोग किया, लेकिन जब LEDबल्ब का होता है, तो कम GPIO2 का परिणाम ऑन-बोर्ड LED की रोशनी में होता है, जो LEDbulb में एक अवांछित नीली चमक देता है।

मॉड्यूल और लैंप बेस कनेक्शन के बीच अलगाव को बेहतर बनाने के लिए कुछ केप्टन टेप जोड़ें।

संपादित करें: मुझे पता चला कि ESP-01F मॉड्यूल मज़बूती से शुरू नहीं हुआ है, शायद पावर अप पर बिजली अस्थिरता के कारण। मैंने इसे GND और VCC के बीच 10 uF टैंटलम कैपेसिटर जोड़कर हल किया। उल्लेखनीय रूप से एक सिरेमिक 10 यूएफ कैपेसिटर ने काम नहीं किया।

चरण 4: सामान्य गर्म सफेद एलईडी बल्ब - भाग 3

सामान्य गर्म सफेद एलईडी बल्ब - भाग 3
सामान्य गर्म सफेद एलईडी बल्ब - भाग 3

फर्मवेयर

कोड मेरे जीथब पर है।

फर्मवेयर एलईडीबल्ब को नियंत्रित करने के लिए एक वेब इंटरफेस को शामिल करता है, और फर्मवेयर ओटीए को वेबअपडेट के माध्यम से अपडेट करने का विकल्प भी है

चरण 5: Sonoff या BSD33 स्मार्ट प्लग - भाग 1

Sonoff या BSD33 स्मार्ट प्लग - भाग 1
Sonoff या BSD33 स्मार्ट प्लग - भाग 1
Sonoff या BSD33 स्मार्ट प्लग - भाग 1
Sonoff या BSD33 स्मार्ट प्लग - भाग 1
Sonoff या BSD33 स्मार्ट प्लग - भाग 1
Sonoff या BSD33 स्मार्ट प्लग - भाग 1
Sonoff या BSD33 स्मार्ट प्लग - भाग 1
Sonoff या BSD33 स्मार्ट प्लग - भाग 1

पहचान

मैंने यह वाईफाई स्मार्ट प्लग Aliexpress से खरीदा है। यह स्मार्ट लाइफ ऐप के साथ ठीक काम करता है, लेकिन मैं इसे ओपनहैब से एमक्यूटीटी के माध्यम से नियंत्रित करना चाहता था। मैंने पहले से ही स्मार्ट प्लग और सॉकेट के लिए अपना खुद का सोनऑफ फर्मवेयर बनाया है, इसलिए मैंने उस फर्मवेयर के साथ इस लैंप को फ्लैश करने की कोशिश की।

मैंने इस फर्मवेयर का उपयोग अपने Sonof S20 और Sonoff S26 स्मार्ट प्लग और Sonoff बेसिक और Sonoff बेसिक R3 स्मार्ट स्विच को फ्लैश करने के लिए भी किया। फ्लैशिंग के लिए सोनऑफ उपकरणों को कैसे खोलें और हार्डवेयर कनेक्ट करें, तस्मोटा के विकी पर तस्मोटा के लिए वर्णित है, इसलिए इसका वर्णन यहां नहीं किया गया है।

सॉकेट खोलना

स्मार्ट प्लग एक साथ चिपके हुए हैं। इसे खोलने के लिए पृथ्वी पर कटआउट में एक स्क्रूड्राइवर डालें और सॉकेट के दूसरी तरफ धुरी बिंदु के रूप में उपयोग करके कुछ बल लागू करें (इस विषय नेटपोकिन से संकेत)। इस तरह आप सॉकेट को नुकसान पहुंचाए बिना इसे बाहर निकालने में सक्षम होना चाहिए।

तस्वीरों में आप प्लग के अंदर देखते हैं। इसमें रिले के साथ एक मुख्य बोर्ड होता है जिसमें एक छोटा पीसीबी होता है जिस पर ESP8266 चिप और मेमोरी लगाई जाती है। बोर्ड सुलभ सोल्डर कनेक्शन के माध्यम से जुड़े हुए हैं।

चरण 6: Sonoff या BSD33 स्मार्ट प्लग - भाग 2

Sonoff या BSD33 स्मार्ट प्लग - भाग 2
Sonoff या BSD33 स्मार्ट प्लग - भाग 2
Sonoff या BSD33 स्मार्ट प्लग - भाग 2
Sonoff या BSD33 स्मार्ट प्लग - भाग 2
Sonoff या BSD33 स्मार्ट प्लग - भाग 2
Sonoff या BSD33 स्मार्ट प्लग - भाग 2
Sonoff या BSD33 स्मार्ट प्लग - भाग 2
Sonoff या BSD33 स्मार्ट प्लग - भाग 2

चमकता

मैंने सोल्डर कनेक्शन को रिवर्स इंजीनियर किया। कनेक्शन के विवरण के लिए चित्र देखें। मुझे उसका पता चल गया:

  • GPIO2 LED (प्लग के बटन में) से जुड़ा है।
  • GPIO13 बटन से ही जुड़ा है।
  • GPIO15 मस्जिद से जुड़ा है जो मुख्य रिले को स्विच करता है।

आप FTDI प्रोग्रामर का उपयोग करके ESP8266 को पावर और फ्लैश कर सकते हैं। महिला ड्यूपॉन्ट केबल को निम्न कनेक्शन से कनेक्ट करें: (VCC (3.3V), GND, RX, TX और GPIO0)

ESP8266 को प्रोग्राम मोड में लाने के लिए GPIO0 की आवश्यकता है। ESP8266 को पावर देते समय इसे जमीन से कनेक्ट करें।

अपने FTDI प्रोग्रामर पर मैंने ग्राउंड और VCC के बीच एक 470uF कैपेसिटर जोड़ा। एक अन्य परियोजना में मुझे पता चला कि इससे स्थिरता में वृद्धि हुई है।

FTDI प्रोग्रामर के पास कुछ अन्य अप्रयुक्त GND और VCC पिन हैं, आप उनका उपयोग GPIO0 को GND से जोड़ने के लिए कर सकते हैं।

चरण 7: Sonoff या BSD33 स्मार्ट प्लग - भाग 3

Sonoff या BSD33 स्मार्ट प्लग - भाग 3
Sonoff या BSD33 स्मार्ट प्लग - भाग 3
Sonoff या BSD33 स्मार्ट प्लग - भाग 3
Sonoff या BSD33 स्मार्ट प्लग - भाग 3
Sonoff या BSD33 स्मार्ट प्लग - भाग 3
Sonoff या BSD33 स्मार्ट प्लग - भाग 3
Sonoff या BSD33 स्मार्ट प्लग - भाग 3
Sonoff या BSD33 स्मार्ट प्लग - भाग 3

फर्मवेयर

मेरा फर्मवेयर मेरे जीथब पर है।

फर्मवेयर के मुख्य भाग

  • वाईफाई और एमक्यूटीटी सर्वर से कनेक्शन
  • ऑनलाइन और ऑफलाइन होने पर मैन्युअल स्विचिंग (स्टार्टअप पर)
  • यदि डिवाइस के ऑफ़लाइन होने पर रिले को मैन्युअल रूप से स्विच किया जाता है, तो यह फिर से कनेक्ट होने पर MQTT के माध्यम से राज्य को भेजता है
  • रिले स्थिति को RTC मेमोरी में संग्रहीत किया जाता है (ESP8266 की RTC मेमोरी के बारे में यह वीडियो देखें)
  • स्विच को नियंत्रित करने और ओटीए के लिए वेबअपडेट तक पहुंचने के लिए वेब इंटरफ़ेस
  • फर्मवेयर इस BSD33 स्मार्टप्लग के लिए उपयुक्त है, लेकिन Sonoff उपकरणों के लिए भी: Sonoff S20, Sonoff S26, Sonoff Basic, Sonof Basic R3

ओपनहैब इंटीग्रेशन

मैं अपनी कॉफी मशीन की शक्ति को नियंत्रित करने के लिए इस प्लग का उपयोग करता हूं। ओपनहैब और गूगल होम के जरिए मैं इसे आवाज के जरिए नियंत्रित कर सकता हूं।

मैंने एक टाइमर लागू किया जो एक पूर्व निर्धारित समय के बाद मेरी कॉफी मशीन के स्विच करता है, मेरे ओपनहैब साइटमैप की तस्वीर देखें। प्रीसेट समय को NodeRed में इंजेक्ट किया जाता है, सप्ताह के दिनों और सप्ताहांत के दिनों में अलग-अलग प्रीसेट समय के साथ।

आइटम, नियम और साइटमैप फ़ाइलों के उदाहरण के लिए मेरा जीथब देखें।

सिफारिश की: