विषयसूची:

DIY ब्लूटूथ मैक्रो कीपैड: 10 कदम (चित्रों के साथ)
DIY ब्लूटूथ मैक्रो कीपैड: 10 कदम (चित्रों के साथ)

वीडियो: DIY ब्लूटूथ मैक्रो कीपैड: 10 कदम (चित्रों के साथ)

वीडियो: DIY ब्लूटूथ मैक्रो कीपैड: 10 कदम (चित्रों के साथ)
वीडियो: Deep Cleaning A DIRTY Keyboard For The First Time In 5 YEARS #shorts 2024, जुलाई
Anonim
DIY ब्लूटूथ मैक्रो कीपैड
DIY ब्लूटूथ मैक्रो कीपैड

इस निर्देशयोग्य में हम ब्लूटूथ कीबोर्ड का अनुकरण करने के लिए ESP32 के अंतर्निहित ब्लूटूथ का उपयोग करने पर एक नज़र डालने जा रहे हैं।

ब्लूटूथ छिपाई (ह्यूमन इंटरफेस डिवाइस) नियमित ब्लूटूथ कीबोर्ड और चूहों द्वारा उपयोग किया जाने वाला प्रोटोकॉल है और इसे केवल एक ईएसपी 32 के साथ अनुकरण करना संभव है, जो बहुत अच्छा है!

कुछ ESP32 विकास बोर्डों के साथ $ 5* से कम की शुरुआत होती है, यह मैक्रो कीपैड जैसे वायरलेस कस्टम कीबोर्ड बनाने का एक बहुत ही सस्ता और सरल तरीका है। मैक्रो कीपैड का उपयोग विभिन्न एप्लिकेशन जैसे वीडियो एडिटर या फोटोशॉप को नियंत्रित करने के लिए किया जा सकता है, व्यक्तिगत रूप से मैं ओबीएस में दृश्यों को नियंत्रित करने के लिए मेरा उपयोग करता हूं जब मैं वीडियो बना रहा हूं या स्ट्रीमिंग कर रहा हूं।

हम पहले देखेंगे कि ESP32 HID कीबोर्ड लाइब्रेरी का उपयोग कैसे करें और फिर मैं आपको दिखाऊंगा कि मैंने इसका उपयोग बैटरी चालित ब्लूटूथ मैक्रो कीपैड बनाने के लिए कैसे किया।

आपूर्ति

  • TinyPICO ESP32 देव बोर्ड (कोई भी ESP32 काम कर सकता है)
  • 4*4 मैट्रिक्स कीपैड*

आपको एक लाइपो बैटरी की भी आवश्यकता होगी, मैंने बस एक यादृच्छिक बैटरी का उपयोग किया था जिसे मैंने चारों ओर बिछाया था इसलिए मैं इससे लिंक नहीं कर सकता!

यदि आपके पीसी में ब्लूटूथ नहीं है तो आप इस तरह के डोंगल का उपयोग कर सकते हैं:

Amazon.co.uk*:

Amazon.com*:

Amazon.de*:

* = संबद्ध

चरण 1: वीडियो देखें

Image
Image

मैंने एक वीडियो बनाया है जो इस निर्देश के समान ही कवर करता है, इसलिए यदि आप रुचि रखते हैं, तो कृपया इसे देखें! मैं नियमित रूप से ESP8266 और ESP32 परियोजनाओं के आसपास वीडियो भी बनाता हूं, इसलिए हो सकता है कि मेरे चैनल पर अन्य वीडियो हों जो आपको दिलचस्प लगे!

चरण 2: [वैकल्पिक] ESP32 के साथ शुरुआत करना

ESP32s माइक्रोकंट्रोलर हैं जो Arduino IDE के साथ संगत हैं और वाईफाई और ब्लूटूथ के साथ आते हैं। वे काफी सस्ते भी हैं इसलिए वे आपकी परियोजनाओं के लिए बहुत उपयोगी चिप्स हैं।

आपको अपने Arduino IDE में ESP32 बोर्ड परिभाषा जोड़ने की आवश्यकता होगी, इसके लिए आप ESP32 Arduino प्रोजेक्ट्स Github पेज पर सूचीबद्ध चरणों का पालन कर सकते हैं।

चरण 3: ESP32 Ble कीबोर्ड लाइब्रेरी स्थापित करना

ESP32 Ble कीबोर्ड लाइब्रेरी स्थापित करना
ESP32 Ble कीबोर्ड लाइब्रेरी स्थापित करना
ESP32 Ble कीबोर्ड लाइब्रेरी स्थापित करना
ESP32 Ble कीबोर्ड लाइब्रेरी स्थापित करना

बिना किसी बाहरी पुस्तकालय के ESP32 पर Bluethooth HID का उपयोग करना संभव है, लेकिन Github उपयोगकर्ता T-Vk ने ESP32-BLE-कीबोर्ड नामक एक पुस्तकालय लिखा है जो इसे मानक Arduino कीबोर्ड लाइब्रेरी की तरह बनाता है जो इसे उपयोग करना बहुत आसान बनाता है।

यह पुस्तकालय पुस्तकालय प्रबंधक पर उपलब्ध नहीं है, इसलिए आपको इसे जीथब से डाउनलोड करना होगा।

  • प्रोजेक्ट रिलीज़ पेज पर जाएं और नवीनतम ESP32-BLE-Keyboard.zip डाउनलोड करें
  • एक बार डाउनलोड हो जाने के बाद, आप इसे अपने Arduino IDE में जोड़ सकते हैं लेकिन स्केच -> लाइब्रेरी शामिल करें और फिर लाइब्रेरी में ज़िप जोड़ें और पिछले चरण से ESP32-BLE-Keyboard.zip चुनें।

चरण 4: उदाहरण को देखते हुए

उदाहरण देख रहे हैं
उदाहरण देख रहे हैं
उदाहरण देख रहे हैं
उदाहरण देख रहे हैं
उदाहरण देख रहे हैं
उदाहरण देख रहे हैं

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

आप फ़ाइल पर जाकर उदाहरण तक पहुँच सकते हैं -> उदाहरण -> ESP32 BLE कीबोर्ड -> SendKeyStrokes

ब्लूटूथ कनेक्शन सेट करना

सेटअप में यह ब्लूटूथ कनेक्शन शुरू करता है, इस स्तर पर यह आपके डिवाइस पर पेयर करने के लिए उपलब्ध होना चाहिए।

bleKeyboard.begin ();

लूप के अंदर यह भी जांचता है कि क्या यह किसी डिवाइस से जुड़ा है

bleKeyboard.isकनेक्टेड ()

टाइपिंग

उदाहरण से पता चलता है कि पहली चीज यह है कि कनेक्ट होने के बाद आप टेक्स्ट कैसे टाइप कर सकते हैं, यह पहले "हैलो वर्ल्ड" टाइप करेगा

bleKeyboard.print ("हैलो वर्ल्ड");

सिंगल बटन प्रेस

यह तब दिखाता है कि आप रिटर्न कुंजी को "लिख" कैसे सकते हैं, यह मूल रूप से इस बटन के एक एकल कुंजी प्रेस का अनुकरण कर रहा है।

bleKeyboard.लिखें (KEY_RETURN);

आप लाइब्रेरी की BleKeyboard.h फ़ाइल को खोलकर इस तरह परिभाषित सभी कुंजियों को देख सकते हैं। आप एएससीआई वर्णों को एकल अल्पविराम में डालकर भी भेज सकते हैं।

bleKeyboard.write ('ए');

मीडिया कुंजियाँ

यह यह भी दर्शाता है कि आप मीडिया कुंजी कैसे भेज सकते हैं, यह उसी तरह है जैसे आप अपने ब्लूटूथ हेडफ़ोन के साथ वॉल्यूम को नियंत्रित कर सकते हैं या ट्रैक को छोड़ सकते हैं। उदाहरण प्ले/पॉज़ कुंजी दिखाता है, लेकिन फिर से आप उपलब्ध अन्य विकल्पों को देखने के लिए BleKeyboard.h खोल सकते हैं।

bleKeyboard.लिखें (KEY_MEDIA_PLAY_PAUSE);

कुंजियों को दबाना और छोड़ना

अंतिम चीज जो उदाहरण हमें दिखाती है वह यह है कि आप कुंजियों को कैसे दबाकर रख सकते हैं, यह मैक्रो कीबोर्ड बनाने के लिए उपयोगी है। यहाँ दिखाया गया उदाहरण Ctrl + Alt + Delete के लिए है

bleKeyboard.press (KEY_LEFT_CTRL);

bleKeyboard.press (KEY_LEFT_ALT);

bleKeyboard.press (KEY_DELETE);

इसके बाद यह रिलीज ऑल को कॉल करता है, जैसा कि आप शायद नाम से अनुमान लगा सकते हैं, सभी दबाए गए कुंजियों को रिलीज़ करता है।

bleKeyboard.releaseAll ();

आप विशिष्ट कुंजी भी जारी कर सकते हैं यदि आप या तो उस कुंजी के साथ रिलीज़ कमांड का उपयोग करके जिसे आप रिलीज़ करना चाहते हैं

bleKeyboard.release (KEY_DELETE);

चरण 5: पुस्तकालय के लिए अन्य सुझाव

पुस्तकालय के लिए अन्य सुझाव
पुस्तकालय के लिए अन्य सुझाव
पुस्तकालय के लिए अन्य सुझाव
पुस्तकालय के लिए अन्य सुझाव
पुस्तकालय के लिए अन्य सुझाव
पुस्तकालय के लिए अन्य सुझाव

हमने पिछले चरण में पुस्तकालय की मुख्य कार्यक्षमता को कवर किया था, लेकिन यहां कुछ अतिरिक्त चीजें हैं जो मुझे लगता है कि जानने के लिए उपयोगी हो सकती हैं

बाहरी ट्रिगर का उपयोग करें

बटन दबाने जैसे बाहरी ट्रिगर का उपयोग करके इस तरह के एक HID डिवाइस को नियंत्रित करना हमेशा सबसे अच्छा होता है। यदि आप टाइमर का उपयोग करते हैं और कुछ गलत हो जाता है तो इसे डिस्कनेक्ट करना अजीब हो सकता है। अपने ब्लूटूथ को बंद करने का प्रयास करने की कल्पना करें यदि आपने गलती से इसे हर 100mS पर Ctrl + Alt + Del दबाने के लिए प्रोग्राम किया है!

डिवाइस का नाम बदलना

डिफ़ॉल्ट रूप से डिवाइस का नाम "ESP32 BLE कीबोर्ड" के रूप में दिखाई देगा, इसे तब बदला जा सकता है जब आप लाइब्रेरी का इंस्टेंस बना रहे हों। आप डिवाइस का नाम, निर्माता और प्रारंभिक बैटरी स्तर सेट कर सकते हैं।

BleKeyboard bleKeyboard ("ब्लूटूथ डिवाइस का नाम", "ब्लूटूथ डिवाइस निर्माता", 100);

बैटरी स्तर सेट करना (मेरे लिए कम से कम काम नहीं कर रहा है)

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

bleKeyboard.setBatteryLevel(50)

डिवाइस संगतता

मैंने अपने विंडोज 10 पीसी, एंड्रॉइड फोन और अपने मैक पर उदाहरण को सफलतापूर्वक चलाया (हालाँकि यह अभी भी किसी तरह सिएरा चला रहा है!)

इसे एक समय में केवल एक डिवाइस से भी जोड़ा जा सकता है।

समस्या निवारण जोड़ी

यदि आपको युग्मित करने में कुछ समस्याएँ आ रही हैं, तो आपका उपकरण खोजते समय ESP32 को पुनः प्रारंभ करने का प्रयास करें। मुझे भी एक बार अपने पीसी पर अपने ब्लूटूथ को चालू और बंद करना पड़ा ताकि इसे जोड़ा जा सके।

चरण 6: मैक्रो कीपैड

मैक्रो कीपैड
मैक्रो कीपैड
मैक्रो कीपैड
मैक्रो कीपैड
मैक्रो कीपैड
मैक्रो कीपैड
मैक्रो कीपैड
मैक्रो कीपैड

अब जबकि हमारे पास मूल बातें खत्म हो गई हैं, आइए इससे कुछ व्यावहारिक बनाते हैं!

पिछले गाइड में मैंने दिखाया था कि कैसे एक Arduino प्रो माइक्रो और सस्ते कीपैड से सबसे सरल मैक्रो कीपैड बनाया जाता है। कीपैड पर प्रत्येक बटन के लिए यह बटन का एक अलग संयोजन भेजता है जिसका उपयोग अनुप्रयोगों को नियंत्रित करने के लिए किया जा सकता है, व्यक्तिगत रूप से मैं इसे ओबीएस के लिए उपयोग करता हूं, जिस सॉफ्टवेयर का उपयोग मैं वीडियो रिकॉर्ड करने के लिए करता हूं और जब मैं स्ट्रीम करता हूं। यह ESP32 पर पोर्ट करने के लिए एक अच्छी परियोजना की तरह लगता है ताकि हम एक वायरलेस संस्करण बना सकें।

इस बिल्ड के लिए मैं अनपेक्षित मेकर के TinyPICO ESP32 बोर्ड का उपयोग करने जा रहा हूं। इसे चुनने का मुख्य कारण एक बहुत ही शक्ति कुशल बोर्ड है और इसमें निर्मित लाइपो बैटरी को चलाने और चार्ज करने के लिए सर्किटरी है, इसलिए मुझे बस एक बैटरी प्लग इन करने की आवश्यकता है।

मैं झूठ बोल रहा हूँ यदि तथ्य यह है कि इसमें प्रो माइक्रो के समान पंक्ति रिक्ति है और मैं पहले से बनाए गए ब्रेकआउट बोर्ड का उपयोग कर सकता हूं जो मैंने पहले बनाया था, वह भी आकर्षक नहीं था!

कीपैड को संचालित करने के लिए 8 GPIO पिन की आवश्यकता होती है, और TinyPICO में एक पंक्ति में 8 GPIO पिन होते हैं इसलिए हम उनका उपयोग करेंगे। जैसा कि ऊपर की छवि में दिखाया गया है, आप कीपैड को TinyPICO से आसानी से जोड़ सकते हैं।

चरण 7: मैक्रो कीपैड के लिए कोड

मैक्रो कीपैड के लिए कोड
मैक्रो कीपैड के लिए कोड
मैक्रो कीपैड के लिए कोड
मैक्रो कीपैड के लिए कोड

मैक्रो कीपैड स्केच के लिए कोड मेरे जीथब पर पाया जा सकता है।

साथ ही BleKeyboard पुस्तकालय जो पिछले चरण में स्थापित किया गया था, आपको कीपैड के लिए पुस्तकालय स्थापित करने की भी आवश्यकता होगी, आप स्केच -> पुस्तकालय शामिल करें -> पुस्तकालय प्रबंधित करें पर जाकर पुस्तकालय प्रबंधक खोलकर ऐसा कर सकते हैं।

पुस्तकालय प्रबंधक के अंदर, "कीपैड" खोजें और मार्क स्टेनली और अलेक्जेंडर ब्रेविग द्वारा स्थापित एक को स्थापित करें

यदि आप TinyPICO कीपैड पिन से भिन्न ESP32 का उपयोग कर रहे हैं, तो आपको एक कॉन्फ़िगरेशन बनाने की आवश्यकता हो सकती है, वे RowPins और colPins सरणी में सेट होते हैं। कीपैड के सामने और बाईं ओर से शुरू करते समय, पहले 4 पिन रो पिन होते हैं और दूसरे 4 कोल पिन होते हैं।

एक बार यह हो जाने के बाद, कोड को बोर्ड पर अपलोड करें और आपको इस स्तर पर परीक्षण करना चाहिए कि यह काम कर रहा है।

चरण 8: आइए इसे वायरलेस बनाएं

आइए इसे वायरलेस बनाएं!
आइए इसे वायरलेस बनाएं!
आइए इसे वायरलेस बनाएं!
आइए इसे वायरलेस बनाएं!
आइए इसे वायरलेस बनाएं!
आइए इसे वायरलेस बनाएं!
आइए इसे वायरलेस बनाएं!
आइए इसे वायरलेस बनाएं!

जैसा कि पहले उल्लेख किया गया है, TinyPICO में निर्मित लिपो को संभालने के लिए सर्किटरी है, इसलिए हमें बस इसे कनेक्ट करने की आवश्यकता है। यह JST कनेक्टर्स के साथ आता है जिसे नीचे तक मिलाया जा सकता है, या यदि आप इसे पिन के माध्यम से करना चाहते हैं तो आप बैट और GND पिन का उपयोग कर सकते हैं।

यदि आप JST कनेक्टर्स का उपयोग कर रहे हैं, तो कृपया अपनी बैटरी की ध्रुवता को TinyPICO से मेल खाने के लिए दोबारा जांचें, इन्हें कैसे तार-तार किया जाना चाहिए, इसके लिए कोई मानक नहीं है, इसलिए एक अच्छा मौका है कि आपकी बैटरी मेल नहीं खा सकती है।

उपयोग करने से पहले अपनी लाइपो बैटरी के वोल्टेज की जांच करें, एक स्वस्थ बैटर 3V या उससे अधिक का होना चाहिए, जो बैटरी मुझे सही JST कनेक्टर के साथ मिली वह 0V पढ़ रही थी!

मैंने एक धारक में 18650 सेल का उपयोग किया और इसे मृत बैटरी के JST कनेक्टर में मिला दिया।

TinyPICO अपने किसी भी एल ई डी को पावर न देकर बैटरी को बंद करते समय अपनी बिजली की खपत को कम करता है, इसलिए भले ही यह न दिखे, उम्मीद है कि यह है! प्रोजेक्ट का भविष्य में सुधार स्टार्टअप पर ऑनबोर्ड डॉटस्टार एलईडी को पल्स करने के लिए हो सकता है ताकि आपको यह पता चल सके कि यह वास्तव में चालू है और शायद फिर से कनेक्ट होने पर। अभी के लिए आप अपने सिस्टम ब्लूटूथ मेनू में जांच सकते हैं कि यह चालू है और ठीक से जुड़ा हुआ है।

चरण 9: इसका परीक्षण करना

इसका परीक्षण!
इसका परीक्षण!

आइए इसका परीक्षण करें, यदि मैं ओबीएस के हॉटकी भाग को खोलता हूं तो मैं एक बटन संयोजन रिकॉर्ड करने के लिए विभिन्न क्रियाओं पर क्लिक कर सकता हूं जो इसे नियंत्रित करेगा, इसके लिए हम बस अपने कीपैड पर बटन पर क्लिक कर सकते हैं और यह अपडेट हो जाएगा।

लागू पर क्लिक करने के बाद, आप ओबीएस में अपने दृश्य को नियंत्रित करने के लिए अपने कीपैड का उपयोग करने में सक्षम नहीं होना चाहिए।

चरण 10: पढ़ने के लिए धन्यवाद

उम्मीद है कि आपको यह निर्देश योग्य उपयोगी लगा होगा। मुझे यह सुनना अच्छा लगेगा कि आप इस प्रकार के सेटअप के साथ क्या करेंगे। कृपया मुझे नीचे दी गई टिप्पणियों में बताएं, या मेरे साथ और मेरे डिस्कॉर्ड सर्वर पर अन्य निर्माताओं के एक समूह में शामिल हों, जहां हम इस विषय या आपके किसी अन्य निर्माता से संबंधित चर्चा कर सकते हैं, लोग वास्तव में वहां मददगार हैं इसलिए यह हैंग होने के लिए एक शानदार जगह है बाहर

मैं अपने जीथब प्रायोजकों को भी बहुत-बहुत धन्यवाद देना चाहता हूं जो मैं जो करता हूं उसका समर्थन करने में मदद करता हूं, मैं वास्तव में इसकी सराहना करता हूं। यदि आप नहीं जानते हैं, तो जीथब पहले वर्ष के लिए प्रायोजन का मिलान कर रहा है, इसलिए यदि आप प्रायोजन बनाते हैं तो वे अगले कुछ महीनों के लिए इसका 100% मिलान करेंगे।

पढ़ने के लिए धन्यवाद!

सिफारिश की: