İçindekiler:

DIY Bluetooth Makro Tuş Takımı: 10 Adım (Resimlerle)
DIY Bluetooth Makro Tuş Takımı: 10 Adım (Resimlerle)

Video: DIY Bluetooth Makro Tuş Takımı: 10 Adım (Resimlerle)

Video: DIY Bluetooth Makro Tuş Takımı: 10 Adım (Resimlerle)
Video: Kıyıda Deniz Kızı Görüntülendi!!! Deniz Kızlarının Gerçek Olduğunu Söyleyen 10 İnsan ve Görüntüleri 2024, Temmuz
Anonim
DIY Bluetooth Makro Tuş Takımı
DIY Bluetooth Makro Tuş Takımı

Bu Eğitilebilir Tabloda, bir Bluetooth Klavyeyi taklit etmek için ESP32'nin yerleşik Bluetooth'unu kullanmaya bir göz atacağız.

Bluetooth HID (İnsan Arayüzü Cihazı), normal Bluetooth klavye ve fareler tarafından kullanılan protokoldür ve bunu sadece bir ESP32 ile taklit etmek mümkündür, bu harika!

Bazı ESP32 geliştirme kartlarının 5$'dan* daha düşük fiyatıyla teslim edildiğinde, bu, Makro tuş takımları gibi kablosuz özel klavyeler oluşturmanın gerçekten ucuz ve basit bir yoludur. Makro tuş takımları, Video editörleri veya Photoshop gibi çeşitli uygulamaları kontrol etmek için kullanılabilir, kişisel olarak, video yaparken veya akış yaparken OBS'deki sahneleri kontrol etmek için benimkini kullanırım.

Önce ESP32 HID klavye kitaplığının nasıl kullanılacağına bakacağız ve sonra size bunu pille çalışan bir Bluetooth Makro Tuş Takımı oluşturmak için nasıl kullandığımı göstereceğim.

Gereçler

  • TinyPICO ESP32 Dev board (Herhangi bir ESP32 çalışabilir)
  • 4*4 Matris Tuş Takımı*

Ayrıca bir lipo pile ihtiyacınız olacak, sadece rastgele bir tane kullandım, bu yüzden bağlantı kuramıyorum!

Bilgisayarınızda Bluetooth yoksa aşağıdaki gibi bir dongle kullanabilirsiniz:

Amazon.co.uk*:

Amazon.com*:

Amazon.de*:

* = Ortak

1. Adım: Videoyu Kontrol Edin

Image
Image

Bu Eğitilebilirlik ile aynı şeyi kapsayan bir video hazırladım, bu yüzden ilgileniyorsanız, lütfen kontrol edin! Ayrıca düzenli olarak ESP8266 ve ESP32 projeleri ile ilgili videolar hazırlıyorum, belki kanalımda ilginizi çekebilecek başka videolar da vardır!

2. Adım: [İsteğe Bağlı] ESP32'ye Başlarken

ESP32'ler, Arduino IDE ile uyumlu, WiFi ve Bluetooth dahil olan mikro denetleyicilerdir. Ayrıca oldukça ucuzlar, bu yüzden projeleriniz için çok faydalı çipler.

Arduino IDE'nize ESP32 board tanımını eklemeniz gerekecek, buna ESP32 Arduino projeleri Github Sayfasında listelenen adımları takip edebilirsiniz.

3. Adım: ESP32 Ble Klavye Kitaplığını Yükleme

ESP32 Ble Klavye Kitaplığını Yükleme
ESP32 Ble Klavye Kitaplığını Yükleme
ESP32 Ble Klavye Kitaplığını Yükleme
ESP32 Ble Klavye Kitaplığını Yükleme

Bluethooth HID'yi ESP32'de harici kitaplık olmadan kullanmak mümkündür, ancak Github kullanıcısı T-Vk, ESP32-BLE-Keyboard adında bir kitaplık yazdı ve bu da onu standart Arduino klavye kitaplığına daha çok benzeterek kullanımı çok daha kolay hale getirdi.

Bu kitaplık kitaplık yöneticisinde mevcut değil, bu yüzden Github'dan indirmeniz gerekecek.

  • Proje sürümleri sayfasına gidin ve en son ESP32-BLE-Keyboard.zip dosyasını indirin
  • İndirdikten sonra Arduino IDE'nize ekleyebilirsiniz ancak Sketch -> Include Library ve ardından Add Zip to library'e giderek önceki adımdan ESP32-BLE-Keyboard.zip dosyasını seçebilirsiniz.

Adım 4: Örneğe Bakmak

Örneğe bakıldığında
Örneğe bakıldığında
Örneğe bakıldığında
Örneğe bakıldığında
Örneğe bakıldığında
Örneğe bakıldığında

Bu eklendikten sonra onunla birlikte gelen örneği açabiliriz. Kütüphane ile elde edebileceğiniz birkaç farklı şeyi gösterdiği için oldukça güzel bir örnek ama faydalı olacağını düşündüğüm yerlerde biraz daha ayrıntı ekleyeceğim.

Örneğe Dosya -> Örnekler -> ESP32 BLE Klavye -> SendKeyStrokes'a giderek erişebilirsiniz.

Bluetooth bağlantısı kurma

Kurulumda Bluetooth bağlantısını başlatır, bu aşamada cihazınızda eşleştirmeye hazır olmalıdır.

bleKeyboard.begin();

Döngünün içinde ayrıca bir cihaza bağlı olup olmadığını kontrol eder.

bleKeyboard.isConnected()

Yazıyor

Örneğin gösterdiği ilk şey, bağlandıktan sonra metni nasıl yazabileceğinizdir, ilk önce kullanarak "Merhaba dünya" yazacaktır.

bleKeyboard.print("Merhaba dünya");

Tek tuşa basma

Daha sonra dönüş tuşunu nasıl "yazabileceğinizi" gösterir, bu temelde bu düğmeye tek bir tuş basışını taklit eder.

bleKeyboard.write(KEY_RETURN);

Bu şekilde tanımlanmış tüm anahtarları görmek için kütüphanenin BleKeyboard.h dosyasını açabilirsiniz. Ascii karakterleri tek virgül koyarak da gönderebilirsiniz.

bleKeyboard.write('A');

Medya Tuşları

Ayrıca, medya tuşlarını nasıl gönderebileceğinizi de gösterir; bu, Bluetooth kulaklıklarınızla ses seviyesini nasıl kontrol edebileceğiniz veya parçaları nasıl atlayabileceğinize benzer. Örnek, oynat/duraklat tuşunu göstermektedir, ancak mevcut diğer seçenekleri görmek için tekrar BleKeyboard.h'yi açabilirsiniz.

bleKeyboard.write(KEY_MEDIA_PLAY_PAUSE);

Tuşlara basmak ve bırakmak

Örneğin bize gösterdiği son şey, tuşları nasıl basılı tutabileceğinizdir, bu Makro klavyeler oluşturmak için kullanışlıdır. Burada gösterilen örnek Ctrl + Alt + Delete içindir

bleKeyboard.press(KEY_LEFT_CTRL);

bleKeyboard.press(KEY_LEFT_ALT);

bleKeyboard.press(KEY_DELETE);

Daha sonra, muhtemelen adından da tahmin edebileceğiniz gibi, basılan tüm tuşları serbest bırakan releaseAll'ı çağırır.

bleKeyboard.releaseAll();

Serbest bırakmak istediğiniz anahtarla serbest bırakma komutunu kullanarak isterseniz belirli tuşları da serbest bırakabilirsiniz.

bleKeyboard.release(KEY_DELETE);

Adım 5: Kütüphane İçin Diğer İpuçları

Kütüphane için Diğer İpuçları
Kütüphane için Diğer İpuçları
Kütüphane için Diğer İpuçları
Kütüphane için Diğer İpuçları
Kütüphane için Diğer İpuçları
Kütüphane için Diğer İpuçları

Kütüphanenin ana işlevselliğini önceki adımda ele aldık, ancak burada bilmenin yararlı olabileceğini düşündüğüm bazı ek şeyler var.

Harici Tetikleyici Kullanın

Bir düğmeye basmak gibi harici bir tetikleyici kullanarak böyle bir HID cihazını kontrol etmek her zaman en iyisidir. Bir zamanlayıcı kullanırsanız ve bir şeyler ters giderse, bağlantının kesilmesini zorlaştırabilir. Yanlışlıkla her 100mS'de Ctrl+Alt+Del tuşlarına basacak şekilde programladıysanız Bluetooth'unuzu kapatmayı denemeniz gerektiğini düşünün!

Cihaz adını değiştirme

Varsayılan olarak cihaz adı “ESP32 BLE Klavye” olarak görünecektir, bu, kitaplığın bir örneğini oluştururken değiştirilebilir. Cihaz adını, üreticisini ve ilk pil seviyesini ayarlayabilirsiniz.

BleKeyboard bleKeyboard("Bluetooth Aygıt Adı", "Bluetooth Aygıt Üreticisi", 100);

Pil seviyesini ayarlama (en azından bende çalışmıyor)

Kitaplık, pil seviyesini de ayarlayabileceğinizi iddia ediyor, ancak Windows bilgisayarımda benim için işe yaramadı (başlangıç değeri ne olursa olsun kaldı) ve android telefonum her şeyin seviyesini göstermedi. İşte sizin için çalışması durumunda bunun için komut

bleKeyboard.setBatteryLevel(50)

Cihaz Uyumluluğu

Örneği Windows 10 PC'mde, Android telefonumda ve Mac'imde başarıyla çalıştırdım (yine de bir şekilde Sierra çalıştırıyor!)

Ayrıca aynı anda yalnızca bir cihaza bağlanabilir.

Eşleştirmede Sorun Giderme

Eşleştirmeyle ilgili bazı sorunlar yaşıyorsanız, cihazınız arama yaparken ESP32'yi yeniden başlatmayı deneyin. Ayrıca bir kez eşleştirmek için bilgisayarımda bluetooth'umu açıp kapatmak zorunda kaldım.

Adım 6: Makro Tuş Takımı

Makro Tuş Takımı
Makro Tuş Takımı
Makro Tuş Takımı
Makro Tuş Takımı
Makro Tuş Takımı
Makro Tuş Takımı
Makro Tuş Takımı
Makro Tuş Takımı

Artık temel bilgilerden kurtulduğumuza göre, şimdi pratik bir şeyler yapalım!

Önceki bir kılavuzda, Arduino pro Micro ve ucuz tuş takımından en basit Makro tuş takımının nasıl yapıldığını gösterdim. Tuş takımındaki her bir düğme için uygulamaları kontrol etmek için kullanılabilecek farklı bir düğme kombinasyonu gönderir, kişisel olarak bunu OBS için, video kaydetmek için ve yayın yaparken kullandığım yazılım için kullanıyorum. Bu, kablosuz bir sürüm yapabilmemiz için ESP32 üzerinden bağlantı kurmak için iyi bir proje gibi görünüyor.

Bu yapı için Unexpected Maker'ın TinyPICO ESP32 kartını kullanacağım. Bunu seçmemin ana nedeni, güç açısından çok verimli bir kart ve yerleşik bir Lipo pili çalıştırmak ve şarj etmek için devrelere sahip olması, bu yüzden tek yapmam gereken bir pili takmak.

Pro Micro ile aynı sıra aralığına sahip olması ve daha önce yaptığım kesme tahtasından faydalanabilmem de çekici olmasaydı yalan söylemiş olurdum!

Tuş takımının çalışması için 8 GPIO pini gerekir ve TinyPICO'nun art arda 8 GPIO pini vardır, bu yüzden onları kullanacağız. Tuş takımını yukarıdaki resimde gösterildiği gibi TinyPICO'ya kolayca bağlayabilirsiniz.

Adım 7: Makro Tuş Takımının Kodu

Makro Tuş Takımı Kodu
Makro Tuş Takımı Kodu
Makro Tuş Takımı Kodu
Makro Tuş Takımı Kodu

Makro Tuş Takımı taslağının kodu Github'ımda bulunabilir.

Bir önceki adımda kurulan BleKeyboard kitaplığının yanı sıra tuş takımı için kitaplığı da kurmanız gerekecek, bunu Sketch -> Include Library -> Manage Libraries'e giderek kütüphane yöneticisini açarak yapabilirsiniz.

Kütüphane yöneticisinin içinde "tuş takımı" arayın ve Mark Stanley ve Alexander Brevig'e ait olanı yükleyin

TinyPICO'dan farklı bir ESP32 kullanıyorsanız yapmanız gerekebilecek bir konfigürasyon tuş takımı pinleridir, bunlar rowPins ve colPins dizisinde ayarlanır. Tuş takımının önüne bakıldığında ve soldan başlandığında ilk 4 pin sıra pinleri, ikinci 4 pin ise col pinlerdir.

Bu yapıldıktan sonra, kodu tahtaya yükleyin ve bu aşamada çalıştığını test etmelisiniz.

Adım 8: Kablosuz Yapalım

Hadi Kablosuz Yapalım!
Hadi Kablosuz Yapalım!
Hadi Kablosuz Yapalım!
Hadi Kablosuz Yapalım!
Hadi Kablosuz Yapalım!
Hadi Kablosuz Yapalım!
Hadi Kablosuz Yapalım!
Hadi Kablosuz Yapalım!

Daha önce de belirtildiği gibi, TinyPICO'nun yerleşik bir Lipo'yu işlemek için devreleri vardır, bu nedenle tek yapmamız gereken onu bağlamak. Alttan lehimlenebilen JST konektörleri ile birlikte gelir veya pinler üzerinden yapmak isterseniz Bat ve GND pinlerini kullanabilirsiniz.

JST konektörlerini kullanıyorsanız lütfen pilinizin kutuplarının TinyPICO ile eşleştiğini iki kez kontrol edin, bunların nasıl bağlanacağına dair bir standart yoktur, bu nedenle pilinizin eşleşmeme olasılığı yüksektir.

Kullanmadan önce lipo pilinizin voltajını kontrol edin, sağlıklı bir pil 3V veya daha yüksek olmalı, doğru JST konektörüyle bulduğum pil 0V okuyordu!

Bir tutucuda bir 18650 hücre kullandım ve onu bitmiş pilin JST konektörüne lehimledim.

TinyPICO, LED'lerinin hiçbirine güç vermeyerek pili bittiğinde güç tüketimini azaltır, yani yanmıyor olsa bile, umarım öyledir! Projenin gelecekteki bir iyileştirmesi, başlangıçta yalnızca gerçekten açıldığını ve belki de bağlandığında tekrar size bildirmek için yerleşik dotstar LED'inin yanıp sönmesi olabilir. Şimdilik sisteminizin Bluetooth menüsünden açık ve bağlı olduğunu kontrol edebilirsiniz.

Adım 9: Test Edin

Test Ediyoruz!
Test Ediyoruz!

Bir test edelim, OBS'nin kısayol tuşları bölümünü açarsam, onu kontrol edecek bir düğme kombinasyonunu kaydetmek için farklı eylemlere tıklayabilirim, bunun için sadece tuş takımımızdaki düğmeye tıklayabiliriz ve güncellenecektir.

Uygula'ya tıkladıktan sonra, OBS'de sahnenizi kontrol etmek için klavyenizi kullanamıyor olmalısınız.

Adım 10: Okuduğunuz için teşekkürler

Umarım bu Eğitilebilirliği faydalı bulmuşsunuzdur. Bu tür bir kurulumla ne yapacağınızı duymayı çok isterim. Lütfen aşağıdaki yorumlarda bana bildirin veya bu konuyu veya sahip olduğunuz başka herhangi bir yapımcıyı tartışabileceğimiz Discord sunucumda bana ve diğer bir grup yapımcıya katılın, insanlar orada gerçekten yardımcı oluyor, bu yüzden takılmak için harika bir yer dışarı

Ayrıca yaptıklarımı destekleyen Github Sponsorlarıma da çok teşekkür etmek istiyorum, gerçekten minnettarım. Bilmiyorsanız, Github ilk yıl için sponsorlukları eşleştiriyor, yani bir sponsorluk yaparsanız önümüzdeki birkaç ay boyunca %100 eşleştirecekler.

Okuduğunuz için teşekkürler!

Önerilen: