Mundarija:

DIY Bluetooth makro klaviaturasi: 10 qadam (rasmlar bilan)
DIY Bluetooth makro klaviaturasi: 10 qadam (rasmlar bilan)

Video: DIY Bluetooth makro klaviaturasi: 10 qadam (rasmlar bilan)

Video: DIY Bluetooth makro klaviaturasi: 10 qadam (rasmlar bilan)
Video: 32 Секретные Комбинации Для Вашей Клавиатуры 2024, Noyabr
Anonim
DIY Bluetooth makro klaviaturasi
DIY Bluetooth makro klaviaturasi

Ushbu qo'llanmada biz Bluetooth klaviaturasini taqlid qilish uchun ESP32 o'rnatilgan Bluetooth-dan foydalanishni ko'rib chiqamiz.

Bluetooth HID (Inson interfeysi qurilmasi) - bu oddiy Bluetooth klaviatura va sichqonlar tomonidan ishlatiladigan protokoldir va buni faqat ESP32 yordamida taqlid qilish mumkin, bu juda zo'r!

Ba'zi ESP32 ishlab chiqish platalari 5 dollardan kam bo'lgan* etkazib berilsa, bu makro klaviatura kabi simsiz maxsus klaviatura yaratishning chindan ham arzon va oddiy usulidir. Ibratli klaviatura video muharrirlari yoki Photoshop kabi turli xil dasturlarni boshqarish uchun ishlatilishi mumkin, men shaxsan men OBS -dagi sahnalarni boshqarish uchun video yoki translyatsiya paytida foydalanaman.

Biz birinchi navbatda ESP32 HID klaviatura kutubxonasidan qanday foydalanishni ko'rib chiqamiz, keyin men sizga batareyadan ishlaydigan Bluetooth makro klaviaturasini qanday ishlatganimni ko'rsataman.

Ta'minotlar

  • TinyPICO ESP32 Dev platasi (har qanday ESP32 ishlashi mumkin)
  • 4*4 matritsali klaviatura*

Sizga ham lipo batareyasi kerak bo'ladi, men tasodifiy batareyani ishlatardim, shuning uchun uni bog'lay olmayman!

Agar sizning kompyuteringizda Bluetooth bo'lmasa, siz shunga o'xshash tugmachani ishlatishingiz mumkin:

Amazon.co.uk*:

Amazon.com*:

Amazon.de*:

* = Hamkor

1 -qadam: Videoni ko'rib chiqing

Image
Image

Men ushbu ko'rsatma bilan bir xil narsani o'z ichiga olgan video tayyorladim, shuning uchun agar sizni qiziqtirsa, uni ko'rib chiqing! Men muntazam ravishda ESP8266 va ESP32 loyihalari atrofida video tayyorlayman, shuning uchun kanalimda sizga qiziq bo'lishi mumkin bo'lgan boshqa videolar ham bo'lishi mumkin!

2 -qadam: [Ixtiyoriy] ESP32 bilan ishlashni boshlash

ESP32 - bu Arduino IDE -ga mos keladigan, Wi -Fi va Bluetooth bilan ta'minlangan mikrokontrollerlar. Ular juda arzon, shuning uchun ular sizning loyihalaringiz uchun juda foydali chiplardir.

Siz Arduino IDE -ga ESP32 karta ta'rifini qo'shishingiz kerak bo'ladi, buning uchun siz ESP32 Arduino loyihalarida ko'rsatilgan qadamlarni bajarishingiz mumkin Github Page

3 -qadam: ESP32 Ble klaviatura kutubxonasini o'rnatish

ESP32 Ble klaviatura kutubxonasini o'rnatish
ESP32 Ble klaviatura kutubxonasini o'rnatish
ESP32 Ble klaviatura kutubxonasini o'rnatish
ESP32 Ble klaviatura kutubxonasini o'rnatish

Tashqi kutubxonasiz ESP32-da Bluethooth HID-dan foydalanish mumkin, lekin Github foydalanuvchisi T-Vk ESP32-BLE-klaviatura deb nomlangan kutubxonani yozdi, bu uni standart Arduino klaviatura kutubxonasiga o'xshatadi, bu esa undan foydalanishni ancha osonlashtiradi.

Bu kutubxona kutubxona menejerida mavjud emas, shuning uchun uni Github -dan yuklab olishingiz kerak bo'ladi.

  • Loyihalar nashrlari sahifasiga o'ting va eng yangi ESP32-BLE-Keyboard.zip-ni yuklab oling
  • Yuklab olingandan so'ng, siz uni Arduino IDE-ga qo'shishingiz mumkin, lekin "Sketch-> Kutubxonani qo'shish" bo'limiga o'ting, so'ng kutubxonaga Zip-ni qo'shing va oldingi bosqichdan ESP32-BLE-Keyboard.zip-ni tanlang.

4 -qadam: misolni ko'rib chiqish

Misolga qarab
Misolga qarab
Misolga qarab
Misolga qarab
Misolga qarab
Misolga qarab

Bu qo'shilgandan so'ng, biz unga tegishli bo'lgan misolni ochishimiz mumkin. Bu juda yaxshi misol, chunki u kutubxonada erishishingiz mumkin bo'lgan turli xil narsalarni ko'rsatadi, lekin men bu erda foydali deb o'ylayman.

Siz misolga Fayl -> Misollar -> ESP32 BLE klaviaturasi -> SendKeyStrokes -ga o'tish orqali kirishingiz mumkin.

Bluetooth ulanishini sozlash

O'rnatishda u Bluetooth ulanishini boshlaydi, bu bosqichda uni qurilmangizda ulash mumkin.

bleKeyboard.begin ();

Loop ichida u qurilmaga ulanganligini ham tekshiradi

bleKeyboard.isConnected ()

Yozish

Misol ko'rsatadigan birinchi narsa - bu matnni ulangandan keyin qanday yozish mumkin, u birinchi bo'lib "Salom dunyo" ni yozadi

bleKeyboard.print ("Salom dunyo");

Bitta tugmani bosish

Qaytish tugmachasini qanday "yozish" mumkinligini ko'rsatadi, bu asosan bitta tugmachani bosishni taqlid qiladi.

bleKeyboard.write (KEY_RETURN);

Siz shunday aniqlangan barcha kalitlarni ko'rish uchun kutubxonaning BleKeyboard.h faylini ochishingiz mumkin. Siz ascii belgilarini bitta vergul qo'yib yuborishingiz mumkin.

bleKeyboard.write ("A");

Media kalitlari

Shuningdek, u qanday qilib media tugmachalarini yuborish mumkinligini ko'rsatadi, bu sizning Bluetooth minigarnituralaringiz yordamida ovoz balandligini boshqarishga yoki treklarni o'tkazib yuborishga o'xshaydi. Misolda ijro etish/to'xtatib turish tugmasi ko'rsatilgan, lekin siz boshqa variantlarni ko'rish uchun BleKeyboard.h -ni ochishingiz mumkin.

bleKeyboard.write (KEY_MEDIA_PLAY_PAUSE);

Kalitlarni bosish va bo'shatish

Misol bizga ko'rsatadigan oxirgi narsa - bu tugmachalarni qanday bosib ushlab turish mumkin, bu makro klaviaturalarni yaratish uchun foydalidir. Bu erda ko'rsatilgan misol Ctrl + Alt + Delete uchun

bleKeyboard.press (KEY_LEFT_CTRL);

bleKeyboard.press (KEY_LEFT_ALT);

bleKeyboard.press (KEY_DELETE);

Keyin relizni chaqiradi, siz taxmin qilganingizdek, barcha bosilgan tugmachalarni chiqaradi.

bleKeyboard.releaseAll ();

Agar xohlasangiz, qo'yib yuborish tugmachasini qo'yib yuborish buyrug'ini ishlatib, ma'lum kalitlarni qo'yib yuborishingiz mumkin

bleKeyboard.release (KEY_DELETE);

5 -qadam: Kutubxona uchun boshqa maslahatlar

Kutubxona uchun boshqa maslahatlar
Kutubxona uchun boshqa maslahatlar
Kutubxona uchun boshqa maslahatlar
Kutubxona uchun boshqa maslahatlar
Kutubxona uchun boshqa maslahatlar
Kutubxona uchun boshqa maslahatlar

Biz oldingi bosqichda kutubxonaning asosiy funksiyalarini ko'rib chiqdik, lekin bu erda menimcha foydali bo'lishi mumkin bo'lgan qo'shimcha narsalar bor.

Tashqi triggerdan foydalaning

Bunday HID qurilmasini tugmachani bosish kabi tashqi tetik yordamida boshqarish har doim yaxshidir. Agar siz taymerdan foydalansangiz va biror narsa noto'g'ri ketsa, uni uzib qo'yish noqulay bo'lishi mumkin. Tasavvur qiling, agar siz tasodifan har 100mS da Ctrl+Alt+Del tugmachalarini bosishni rejalashtirgan bo'lsangiz, Bluetooth -ni o'chirib qo'yishga urinib ko'ring!

Qurilma nomini o'zgartirish

Odatiy bo'lib, qurilma nomi "ESP32 BLE klaviaturasi" sifatida ko'rsatiladi, uni kutubxona namunasini yaratishda o'zgartirish mumkin. Siz qurilma nomini, ishlab chiqaruvchini va batareyaning boshlang'ich darajasini belgilashingiz mumkin.

BleKeyboard bleKeyboard ("Bluetooth qurilmasi nomi", "Bluetooth qurilmasi ishlab chiqaruvchisi", 100);

Batareya darajasini sozlash (hech bo'lmaganda men uchun ishlamaydi)

Kutubxonaning ta'kidlashicha, siz batareya quvvatini ham sozlashingiz mumkin, lekin u mening Windows kompyuterimda ishlamadi (u boshlang'ich qiymati qanday bo'lsa ham shunday qoldi) va mening Android telefonim hammasini ko'rsatmadi. Bu siz uchun ishlayotgan bo'lsa, bu buyruq

bleKeyboard.setBatteryLevel (50)

Qurilmaning mosligi

Men misolni Windows 10 kompyuterimda, Android telefonimda va Mac -da muvaffaqiyatli ishga tushirdim (garchi u hali ham Sierra bilan ishlayotgan bo'lsa ham!)

Bundan tashqari, uni faqat bitta qurilmaga ulash mumkin.

Nosozliklarni tuzatish

Agar siz juftlashtirishda muammolarga duch kelsangiz, qurilmangiz qidirayotgan paytda ESP32 -ni qayta ishga tushiring. Men ham bir marta shaxsiy kompyuterimda bluetooth -ni yoqish va o'chirishim kerak edi.

6 -qadam: Ibratli klaviatura

Ibratli klaviatura
Ibratli klaviatura
Ibratli klaviatura
Ibratli klaviatura
Ibratli klaviatura
Ibratli klaviatura
Ibratli klaviatura
Ibratli klaviatura

Endi bizda asosiy narsalar yo'q, keling, undan amaliy narsa qilaylik!

Oldingi qo'llanmada men Arduino pro Micro va arzon klaviaturadan qanday oddiy makro klaviaturani yasashni ko'rsatdim. Klaviaturadagi har bir tugma uchun u ilovalarni boshqarish uchun ishlatilishi mumkin bo'lgan boshqa tugmalar birikmasini yuboradi, men shaxsan uni OBS, video yozish uchun dastur va oqim paytida ishlataman. Bu ESP32 orqali ulanish uchun yaxshi loyihadir, shuning uchun biz simsiz versiyani yaratamiz.

Ushbu qurilish uchun men kutilmagan ishlab chiqaruvchining TinyPICO ESP32 kartasidan foydalanmoqchiman. Uni tanlashning asosiy sababi - bu juda tejamkor karta va o'rnatilgan Lipo batareyasini zaryadlash va o'chirish sxemasi, shuning uchun men batareyani ulashim kerak.

Agar men qatorlar oralig'ini Pro Micro bilan bir xil qilib qo'ygan bo'lsam va men ilgari yasagan taxtadan foydalana olsam, bu ham jozibali bo'lmasa, men yolg'on gapirgan bo'lardim!

Klaviatura ishlashi uchun 8 ta GPIO pinini talab qiladi va TinyPICO -da ketma -ket 8 ta GPIO pin bor, shuning uchun biz ulardan foydalanamiz. Yuqoridagi rasmda ko'rsatilgandek, klaviaturani TinyPICO ga oddiy ulashingiz mumkin.

7 -qadam: Ibratli klaviatura uchun kod

Ibratli klaviatura uchun kod
Ibratli klaviatura uchun kod
Ibratli klaviatura uchun kod
Ibratli klaviatura uchun kod

Ibratli klaviatura eskizining kodini mening Github -da topish mumkin.

Oldingi bosqichda o'rnatilgan BleKeyboard kutubxonasi bilan bir qatorda, klaviatura uchun kutubxonani o'rnatishingiz kerak bo'ladi, buni Sketch -> Kutubxonani qo'shish -> Kutubxonalarni boshqarish bo'limiga o'tish orqali kutubxona menejerini ochish orqali qilishingiz mumkin.

Kutubxona menejeri ichida "klaviatura" ni toping va Mark Stenli va Aleksandr Brevigni o'rnating

Agar siz TinyPICO klaviatura pinlaridan farqli o'laroq boshqa ESP32 dan foydalanayotgan bo'lsangiz, ular konfiguratsiya qilishlari kerak bo'lishi mumkin, ular rowPins va colPins qatoriga o'rnatiladi. Klaviatura old tomoniga qaraganingizda va chapdan boshlaganingizda, birinchi 4 pin qatorli pin, ikkinchisi esa 4 pinli.

Bu bajarilgandan so'ng, kodni taxtaga yuklang va siz bu bosqichda ishlashini sinab ko'rishingiz kerak.

8 -qadam: Keling, uni simsiz qilaylik

Keling, uni simsiz qilaylik!
Keling, uni simsiz qilaylik!
Keling, uni simsiz qilaylik!
Keling, uni simsiz qilaylik!
Keling, uni simsiz qilaylik!
Keling, uni simsiz qilaylik!
Keling, uni simsiz qilaylik!
Keling, uni simsiz qilaylik!

Yuqorida aytib o'tganimizdek, TinyPICO -da Lipo -ni boshqarish sxemasi mavjud, shuning uchun biz uni ulashimiz kerak. U pastki qismga lehimlanadigan JST ulagichlari bilan birga keladi yoki agar siz uni pinlar orqali bajarishni xohlasangiz, Bat va GND pinlarini ishlatishingiz mumkin.

Agar siz JST ulagichlaridan foydalanayotgan bo'lsangiz, iltimos, batareyangiz polaritesini TinyPICO bilan mos kelishini ikki marta tekshiring, ularni qanday ulash kerakligi haqida standart yo'q, shuning uchun batareyangiz mos kelmasligi ehtimoli katta.

Lipo batareyasini ishlatishdan oldin uning kuchlanishini tekshirib ko'ring, sog'lom xamir 3V yoki undan yuqori bo'lishi kerak, men topgan batareya to'g'ri JST ulagichi 0V o'qiydi!

Men 18650 yacheykasini ushlagichda ishlatib, o'lik batareyaning JST ulagichiga lehimladim.

TinyPICO hech qanday LEDni yoqmasdan batareyani o'chirganda quvvat sarfini kamaytiradi, shuning uchun u yoqilmasa ham, umid qilamanki! Loyihaning kelgusida yaxshilanishi dotstar bortidagi svetodiodli LED -ni ishga tushganda, uni yoqilganligini va u yana ulanganda, yana xabar berish uchun bo'lishi mumkin. Hozircha siz Bluetooth -ning tizim menyusida u yoqilgan va ulanganligini tekshirishingiz mumkin.

9 -qadam: Sinab ko'ring

Buni sinovdan o'tkazish!
Buni sinovdan o'tkazish!

Buni sinab ko'raylik, agar men OBS -ning tezkor tugmachalarini ochsam, uni boshqaradigan tugmalar birikmasini yozish uchun har xil amallarni bosishim mumkin, buning uchun biz klaviaturadagi tugmani bosishimiz mumkin va u yangilanadi.

Qo'llash tugmachasini bosgandan so'ng, siz OBS -dagi sahnangizni boshqarish uchun klaviaturadan foydalana olmasligingiz kerak.

10 -qadam: O'qiganingiz uchun tashakkur

Umid qilamizki, siz ushbu ko'rsatmalarni foydali deb topdingiz. Siz bunday o'rnatish bilan nima qilishingiz haqida eshitishni istardim. Iltimos, menga quyidagi izohlarda xabar bering, yoki menga va Discord serverimdagi boshqa ishlab chiqaruvchilarga qo'shiling, u erda biz bu mavzuni yoki sizga tegishli bo'lgan boshqa ishlab chiqaruvchilarni muhokama qila olamiz, odamlar u erda haqiqatan ham yordam berishadi, shuning uchun bu osish uchun ajoyib joy tashqariga

Men ham Github homiylarimga katta rahmat aytmoqchiman, ular mening ishimni qo'llab -quvvatlaydilar, men buni juda qadrlayman. Agar bilmasangiz, Github birinchi yil homiylik yordamiga mos keladi, shuning uchun agar siz homiylik qilsangiz, ular keyingi bir necha oy davomida unga 100% mos keladi.

O'qiganingiz uchun tashakkur!

Tavsiya: