मेरा एक महामारी संबंधी शौक जो अटक गया वह था होम ऑटोमेशन। मुझे पता चला गृह सहायक – लोकप्रिय ओपन सोर्स, बेहद अनुकूलन योग्य होम ऑटोमेशन प्लेटफॉर्म – और अपने होमवर्क को बेहतर बनाने के लिए आप इसके साथ सभी जटिल चीजें कर सकते हैं।
मेरे पास एडीएचडी है और मैंने होम असिस्टेंट को कार्यकारी शिथिलता के प्रबंधन के लिए एक मूल्यवान उपकरण पाया है। मैं इसका उपयोग श्रव्य कैलेंडर अनुस्मारक, कपड़े धोने के अनुस्मारक, टाइमर, और अपने दरवाजे की घंटी कैमरे और अपने कुत्ते के लिए अपने नानी कैम की निगरानी के लिए करता हूं। यह मेरे लिए शुद्ध नीरस आनंद का भी एक बड़ा स्रोत है। और मैंने हाल ही में अपने होम ऑटोमेशन निर्धारण में अब तक का सबसे खुशी भरा कदम उठाया है।
होम असिस्टेंट आपको अपने स्मार्ट होम उपकरणों के साथ इंटरैक्ट करने के लिए कस्टम डैशबोर्ड बनाने की सुविधा देता है। समुदाय के सदस्य अपने डैशबोर्ड को बेहतर बनाने में अनगिनत घंटे बिताते हैं और उनमें से कुछ वास्तव में हैं प्रभावशाली. मैंने एक समुदाय की भी खोज की विषय होम असिस्टेंट के लिए जो दिखने में काफी मदद करता है एलसीएआरएस कंप्यूटर नियंत्रण प्रणाली आने वाली पीढ़ी स्टार ट्रेक का युग जिसमें मैं बड़ा हुआ हूं। LCARS एक व्यावहारिक या उपयोगी कंप्यूटर इंटरफ़ेस नहीं है। इसका घोषित उद्देश्य है “जब कोई दर्शक देखे तो कुछ सुव्यवस्थित सुझाव दें [it] एक दृश्य की पृष्ठभूमि में।” हालाँकि, यह जो है वह बहुत खूबसूरत है। आठ साल की उम्र में सौंदर्यबोध ने मुझ पर कब्ज़ा कर लिया और इसे कभी जाने नहीं दिया।
मेरा अधिकांश घरेलू स्वचालन मेरे इनपुट के बिना वास्तविक स्वचालन के माध्यम से होता है, और मैं आवाज नियंत्रण का व्यापक उपयोग करता हूं (हां, “कंप्यूटर” मेरा जागृत शब्द है। जब मैं देख रहा होता हूं तो गलत अलार्म स्टार ट्रेक इसके लायक हैं)। लेकिन कुछ चीजें हैं जिनके लिए मैं हमेशा एक डैशबोर्ड चाहूंगा। कभी-कभी आप चीजों को मैन्युअल रूप से नियंत्रित करना चाहते हैं। यह मौसम प्रदर्शित करने या कस्टम प्रकाश दृश्यों को ट्रिगर करने के लिए अच्छा है। होम असिस्टेंट के प्रति मेरे आकर्षण की शुरुआत से ही, मैं एलसीएआरएस-शैली इंटरफ़ेस का उपयोग करने के लिए मर रहा हूं। ऊपर लिंक की गई थीम बहुत अच्छी है – मैं इसे अपने फोन के मुख्य डैशबोर्ड के लिए उपयोग करता हूं। लेकिन यह पूर्ण नहीं है.
एल्बो डिवाइडर का आकार और अनुपात थोड़ा हटकर है, और सभी बटन दो टुकड़ों में टूट गए हैं। यह छोटी चीज़ है. लेकिन मैं उस तरह का प्रशंसक हूं जो सटीकता की बात को यथासंभव दूर तक ले जाना चाहता हूं। इसलिए मैंने अपना खुद का बना लिया।
मुझे हाल ही में पता चला एलवीजीएल (लाइट एंड वर्सटाइल ग्राफ़िक्स लाइब्रेरी), जो आपको ग्राफिक इंटरफ़ेस बनाने की सुविधा देता है जो स्टॉक होम असिस्टेंट डैशबोर्ड सेटअप की तुलना में कहीं अधिक अनुकूलन योग्य और परिष्कृत है। मुझे लगा कि एलवीजीएल को गृह सहायक से बात कराने का कोई तरीका होना चाहिए। पहेली का अंतिम भाग था ईएसपीहोम. ईएसपीहोम एक ओपन-सोर्स फर्मवेयर फ्रेमवर्क है जो मेरे जैसे कोडिंग नौसिखियों को ईएसपी32, ईएसपी8266 और आरपी2040 जैसे वाईफ़ाई-सक्षम माइक्रोकंट्रोलर प्रोग्राम करने के लिए अपेक्षाकृत सरल मार्कअप भाषा का उपयोग करने देता है, और यह होम असिस्टेंट के साथ गहराई से एकीकृत होता है। संभावनाएं अपार हैं. मैं ईएसपीहोम घटकों का उपयोग मोशन डिटेक्टर, उपस्थिति सेंसर, वायु गुणवत्ता सेंसर और एलईडी स्ट्रिप्स के लिए नियंत्रक के रूप में करता हूं। और ईएसपीहोम विशिष्ट डिस्प्ले हार्डवेयर पर एलवीजीएल का समर्थन करता है।
इसलिए मैंने इसे खरीदा ESP32-S3 माइक्रोकंट्रोलर के साथ वेवशेयर 7” टच डिस्प्ले बनाया गया और मैं काम पर लग गया।
मैंने 90 के दशक के स्टार ट्रेक में दिखाए गए कई LCARS पैनलों में से कुछ के स्क्रीनशॉट और प्रशंसक मनोरंजन को खोजने के लिए इंटरनेट पर घंटों बिताए। और मैंने इसे इस तक सीमित कर दिया:
यह एक ग्राफ़िक है जिसे आप तुवोक के क्वार्टर में देख रहे हैं स्टार ट्रेक: वोयाजर. मुझे यकीन नहीं है कि इसे शो में क्या करना चाहिए, लेकिन इसमें बहुत सारे रंगीन बटन और गोल कोने हैं। और महत्वपूर्ण बात यह है कि कौन जानता है कि शीर्ष पर दो गेज हैं। लेकिन मुझे वे प्रकाश चमक नियंत्रण की तरह लग रहे थे। तो मेरे पास मेरा डिज़ाइन था।
आगे इसे बनाना था. एलवीजीएल का उपयोग करके ईएसपीहोम में एक इंटरफ़ेस बनाने के लिए, आप इसका उपयोग करते हैं वाईएएमएल अपने इच्छित ग्राफिक तत्व की विशेषताओं (आकार, स्थिति, रंग, आदि) को निर्दिष्ट करने के लिए। एलवीजीएल उन्हें “विजेट” कहता है। इसलिए मैंने सबसे पहले संदर्भ के रूप में Adobe Illustrator में अपना डिज़ाइन बनाया।
फिर मैंने होम असिस्टेंट में ईएसपीहोम संपादक में उस डिज़ाइन को फिर से बनाने का कठिन कार्य शुरू किया। शुक्र है कि ईएसपीहोम में इसका उपयोग करने के लिए आपको सी (एलवीजीएल जिस भाषा के लिए लिखा गया है) जानने की आवश्यकता नहीं है। इसके बजाय आप YAML का उपयोग करें, जो मेरे जैसे उत्साही शौकिया के लिए बहुत अधिक क्षमाशील है। घटक दर घटक, मैंने प्रत्येक बटन के आयाम, उसका स्थान, उसका रंग, उस पर कौन सा लेबल होगा और उसका आकार निर्दिष्ट किया। एलवीजीएल में केवल चित्र डालने के बजाय इनबिल्ट विजेट का उपयोग करना सबसे अच्छा अभ्यास है। LVGL में वह क्षमता है, लेकिन ESP32 माइक्रोकंट्रोलर के पास बहुत सारे अतिरिक्त संसाधन नहीं हैं, और छवियां उन्हें तेज़ी से ख़त्म कर देंगी। इस डिज़ाइन में उपयोग की गई एकमात्र वास्तविक छवियां शीर्ष दाईं ओर दो गेज हैं। अन्य सभी आकृतियाँ LVGL बटन विजेट हैं।
अनियमित आकृतियों के लिए मुझे थोड़ा धोखा देना पड़ा। LCARS इंटरफ़ेस के कुछ बटनों में केवल दो गोल कोने हैं। जब गोल कोनों की बात आती है तो एलवीजीएल बटन सभी या कुछ भी नहीं होते हैं। हालाँकि, शुक्र है कि यदि आप आकृतियों को एक-दूसरे के ऊपर रखते हैं तो LVGL को कोई आपत्ति नहीं है। आधे गोलाकार बटनों के लिए, मैंने बस एक वर्गाकार बटन के अंत में एक वृत्त जमा दिया है। वे एक ही रंग के हैं, इसलिए यह एक ही आकार जैसा दिखता है। बीच में कोहनियाँ भी इसी प्रकार बनाई जाती हैं।
आख़िरकार मैं वहां पहुंच गया. मेरे लिविंग रूम में एक ईमानदार, प्रामाणिक दिखने वाला LCARS टचस्क्रीन। 12 साल की उम्र में मैं बहुत प्रभावित होऊंगा। 41 वर्षीय मैं निश्चित रूप से हूं।
बस इसे मेरे डिवाइस से कनेक्ट करना बाकी था। इस परियोजना को शुरू करते समय, मैं अपने लिविंग रूम में घूम रहा था, इसलिए मैंने अपने लिविंग रूम लैंप को चुना। (हां, मैंने यह पूरा प्रोजेक्ट तब बनाया जब मुझे इस बात का स्पष्ट अंदाजा नहीं था कि मैं वास्तव में इसके साथ क्या करूंगा। यह उन लोगों का शौक नहीं है जो पूरी तरह से व्यावहारिक सोच रखते हैं।)
मैंने लाइट चालू होने पर सफेद होने और लाइट बंद होने पर अपने मूल रंग में लौटने के लिए एक निश्चित बटन कॉन्फ़िगर किया। एक अलग बटन वास्तव में लाइटों को चालू और बंद करता था। जितने अधिक बटन अधिक कार्य करते हैं, मुझे यह उतना ही अधिक प्रामाणिक लगता है। और इस पैनल में मेरे घर में जितनी लाइटें हैं उससे अधिक बटन हैं। इनमें से एक गेज उन लैंपों की चमक को प्रतिबिंबित और नियंत्रित दोनों करता है। ऐसे स्टेटस बटन हैं जो मुझे दिखाते हैं कि मेरे घर का ऑपरेटिंग मोड “सामान्य” है या “आरामदायक”, जो मेरे व्यापक में प्रकाश दृश्यों को निर्धारित करता है WLED स्थापित करना।
पैनल के साथ टचस्क्रीन मेरे सोफे के पास एक स्टैंड पर टिकी हुई है। यह दूर से भी व्यावहारिक नहीं है. हम एलसीएआरएस के बारे में पहले से ही जानते थे। हालाँकि, यह सुंदर है. और यह मेरे बेवकूफ दिल को बेहद खुश करता है कि मैं अब अपने घर को उसी तरह नियंत्रित कर सकता हूं जैसे मेरे बचपन के नायकों ने अपने स्टारशिप को नियंत्रित किया था।















