ESP32-C6+IR LED का उपयोग करके एयर कंडीशनर का रिमोट कंट्रोल और Lichee Zero Dock पर OpenWrt इंस्टॉल करना
नमस्ते, मैं नाकाबिल हूँ।
हाल ही में इलेक्ट्रॉनिक्स प्रोजेक्ट्स का शौक जोरों पर है...
पृष्ठभूमि
दरअसल, जब मैं शराब पी रहा था तब एक जान-पहचान वाले को रिमोट से एयर कंडीशनर चलाते देखा और सोचा कि यह अच्छा है, तो क्या मैं भी ऐसा ही बना सकता हूँ? इसी से शुरुआत हुई।
नतीजतन, किसी और काम के सिलसिले में एक OpenWrt सर्वर भी खड़ा हो गया (आँखें फटी रह गईं)।
ESP32-C6

खरीदे गए सामान की बात करें तो:
ESP32-C6
ब्रेडबोर्ड
प्रतिरोधक
ट्रांज़िस्टर(2N2222)
IR LED Emitter
इन्फ्रारेड ट्रांसमिट करने वाला हिस्सा
VS1838B IR Receiver
एयर कंडीशनर के रिमोट का विश्लेषण करने के लिए रिसीवर वाला हिस्सा


चमक रहा है, इसकी पुष्टि करके...

इस तरह बन गया।
ब्रेडबोर्ड का इस्तेमाल पहले कभी नहीं किया था, इसलिए काम कच्चा-कच्चा ही हुआ। बहुत पहले एक बार Arduino की मदद से सिंगल-बोर्ड का उपयोग करके RJ45 पोर्ट वाले कीबोर्ड को USB में बदला था, उसी से काम चल गया।
पहले परीक्षण के तौर पर फ्लैश करके, इसका सिद्धांत समझते हुए arduino-cli इंस्टॉल करके फ्लैश किया। हालाँकि arduino-ide भी मौजूद था, लेकिन अगर काम LLM को ही सौंपना है तो CLI के ज़रिए संचालन करना बेहतर रहेगा – यह आलस्य की पराकाष्ठा है।
https://github.com/haturatu/esp32c6/
जाहिर है, रिमोट का पूरा विश्लेषण खुद करना काफी बड़ा काम होता, इसलिए Codex से एक-एक करके लॉग चेक करवाए। जब Codex उसे संभाल लेता, तो अगला बटन दबाकर विश्लेषण करता। इस प्रक्रिया को दोहराते हुए रिमोट क्लाइंट वाले हिस्से का इम्प्लीमेंटेशन पूरा हो गया।
ESP36-C6 में Wi-Fi मॉड्यूल भी है, इसलिए अंत में एक HTTP सर्वर खड़ा करके उसे API सर्वर के रूप में संचालित किया जा सके।

https://github.com/haturatu/esp32c6/tree/main/daikin-an22nesj-w-http-api-server
बेशक, यह केवल प्राइवेट नेटवर्क तक सीमित है।
खैर, इसी के साथ क्लाइंट ऐप वाला हिस्सा बना लिया (इसमें LLM का काफी असर है, माफ़ कीजिएगा)।

सोल्डरिंग आयरन का इस्तेमाल सिर्फ ESP32-C6 के पैर जोड़ने के लिए हुआ और बाकी काम तो बस चिपकाने भर का था – बिल्कुल LEGO की तरह। इसलिए यहाँ तक पहुँचने में सिर्फ 3 से 4 घंटे लगे!
इतना सुविधाजनक है कि दिल खुश हो गया।
Lichee Zero-Dock
यह एक सिंगल-बोर्ड है जो हाल में काफी चर्चा में था, इसलिए खरीद लिया।

वाह, RJ-45 पोर्ट के साथ सिर्फ 1000 येन की खास कीमत!
https://akizukidenshi.com/catalog/g/g115544/
इतना सस्ता था कि दो खरीद लिए।
microSD कार्ड रीडर खो गया था, इसलिए ThinkPad X1 Gen1 को निकाला, Codex से OpenWrt फ्लैश करने की स्क्रिप्ट बनवाई और फिर सीधे फ्लैश कर दिया।
https://gist.github.com/haturatu/488a05b6bb59026c01ed1b493ebc04d4

लगता है हाल ही में इस तरह के SoC-इंटीग्रेटेड चीज़ें बढ़ रही हैं और धीरे-धीरे और भी सुविधाजनक होती जा रही हैं...
अभी तय नहीं है कि इससे क्या करवाऊँ। हालाँकि इसमें DDR2 मेमोरी इंटीग्रेटेड है, लेकिन SoC में सब कुछ इंटीग्रेटेड होने की वजह से तरह-तरह की बाइंडिंग लागतें कम हो जानी चाहिएं, इसलिए लगता है कि यह नेटवर्क रिपीटर जैसे उपकरण के लिए भी अच्छा रहेगा।
और OpenWrt में इस्तेमाल होने वाला HTTP सर्वर uHTTPd, एक बेहद छोटे एप्लिकेशन के रूप में HTTP सर्वर का कार्यान्वयन करता है – यह देखकर थोड़ा दिल छू जाता है।