Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: Suriin ang Video
- Hakbang 2: [Opsyonal] Pagsisimula Sa isang ESP32
- Hakbang 3: Pag-install ng ESP32 Ble Keyboard Library
- Hakbang 4: Pagtingin sa Halimbawa
- Hakbang 5: Iba Pang Mga Tip para sa Library
- Hakbang 6: Ang Macro Keypad
- Hakbang 7: Code para sa Macro Keypad
- Hakbang 8: Gawin Natin Ito nang Wireless
- Hakbang 9: Pagsubok Ito
- Hakbang 10: Salamat sa Pagbasa
Video: DIY Bluetooth Macro Keypad: 10 Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:11
Sa Instructable na ito ay titingnan namin ang paggamit ng built-in na Bluetooth ng ESP32 upang tularan ang isang Bluetooth Keyboard.
Ang Bluetooth HID (Human Interface Device) ay ang protokol na ginamit ng regular na Bluetooth keyboard at mice at posible na gayahin ito sa isang ESP32 lamang, na mahusay!
Sa ilang mga ESP32 development board na nagsisimula sa mas mababa sa $ 5 * naihatid, ito ay isang talagang mura at simpleng paraan upang lumikha ng mga wireless na pasadyang keyboard tulad ng isang mga Macro keypad. Maaaring gamitin ang mga Macro keypad para sa pagkontrol ng iba't ibang application tulad ng mga editor ng Video o Photoshop, personal na ginagamit ko ang aking para sa pagkontrol ng mga eksena sa OBS kapag gumagawa ako ng mga video o streaming.
Titingnan muna namin kung paano gamitin ang ESP32 HID keyboard library at pagkatapos ay ipapakita ko sa iyo kung paano ko ito ginamit upang bumuo ng isang bateryang Bluetooth Macro Keypad.
Mga gamit
- TinyPICO ESP32 Dev board (Anumang ESP32 ay maaaring gumana)
- 4 * 4 Matrix Keypad *
Kakailanganin mo rin ang isang baterya ng lipo, gumamit lamang ako ng isang random na inilalagay ko sa paligid upang hindi ako makakonekta dito!
Kung ang iyong PC ay walang Bluetooth maaari kang gumamit ng dongle na tulad nito:
Amazon.co.uk *:
Amazon.com *:
Amazon.de *:
* = Kaakibat
Hakbang 1: Suriin ang Video
Gumawa ako ng isang video na sumasaklaw sa parehong bagay tulad ng Instructable na ito, kaya kung interesado ka, mangyaring suriin ito! Gumagawa rin ako ng mga video sa paligid ng mga proyekto ng ESP8266 at ESP32 nang regular kaya marahil may iba pang mga video sa aking channel na maaari mong makita na kawili-wili!
Hakbang 2: [Opsyonal] Pagsisimula Sa isang ESP32
Ang mga ESP32 ay mga microcontroller na katugma sa Arduino IDE at may kasamang WiFi at Bluetooth. Medyo mura din ang mga ito kaya't napaka kapaki-pakinabang ng mga chips para sa iyong mga proyekto.
Kakailanganin mong idagdag ang kahulugan ng board ng ESP32 sa iyong Arduino IDE, dito maaari mong sundin ang mga hakbang na nakalista sa mga proyekto ng ESP32 Arduino na Pahina ng Github
Hakbang 3: Pag-install ng ESP32 Ble Keyboard Library
Posibleng gamitin ang Bluethooth HID sa ESP32 na walang panlabas na library, ngunit ang gumagamit ng Github na T-Vk ay nagsulat ng isang silid-aklatan na tinatawag na ESP32-BLE-Keyboard na ginagawang mas katulad ng karaniwang Arduino keyboard library na ginagawang mas madaling gamitin.
Hindi magagamit ang library na ito sa manager ng library kaya kakailanganin mong i-download ito mula sa Github.
- Pumunta sa pahina ng paglabas ng mga proyekto at i-download ang pinakabagong ESP32-BLE-Keyboard.zip
- Kapag na-download na, maaari mo itong idagdag sa iyong Arduino IDE ngunit pagpunta sa Sketch -> Isama ang Library at pagkatapos ay Idagdag ang Zip sa library at piliin ang ESP32-BLE-Keyboard.zip mula sa nakaraang hakbang.
Hakbang 4: Pagtingin sa Halimbawa
Kapag naidagdag na, maaari nating buksan ang halimbawang kasama nito. Ito ay isang magandang magandang halimbawa dahil nagpapakita ito ng ilang iba't ibang mga bagay na maaari mong makamit sa silid-aklatan ngunit magdaragdag din ako ng kaunti pang detalye kung saan sa palagay ko ito ay magiging kapaki-pakinabang.
Maaari mong ma-access ang halimbawa sa pamamagitan ng pagpunta sa File -> Mga Halimbawa -> ESP32 BLE Keyboard -> SendKeyStrokes
Pagse-set up ng isang koneksyon sa Bluetooth
Sa pag-setup nagsisimula ito ng koneksyon sa Bluetooth, sa yugtong ito dapat itong maging magagamit upang ipares sa iyong aparato.
bleKeyboard.begin ();
Sa loob ng loop sinusuri din nito kung nakakonekta ito sa isang aparato
bleKeyboard.isConnected ()
Nagta-type
Ang unang ipinapakita ng halimbawa ay kung paano mo mai-type ang teksto sa sandaling nakakonekta ito ay unang i-type ang "Kumusta mundo" gamit
bleKeyboard.print ("Kumusta mundo");
Ang pagpindot ng solong pindutan
Ipinapakita nito kung paano mo "maisusulat" ang return key, ito ay karaniwang gumagaya ng isang solong pindutin ang key ng pindutan na ito.
bleKeyboard.write (KEY_RETURN);
Maaari mong buksan ang BleKeyboard.h file ng library upang makita ang lahat ng mga key na tinukoy tulad nito. Maaari ka ring magpadala ng mga character sa TripAdvisor sa pamamagitan ng paglalagay sa kanila sa iisang mga kuwit.
bleKeyboard.write ('A');
Mga Susi ng Media
Ipinapakita rin nito kung paano ka maaaring magpadala ng mga key ng media, katulad ito ng kung paano mo makokontrol ang dami o laktawan ang mga track gamit ang iyong mga headphone ng Bluetooth. Ipinapakita ng halimbawa ang play / pause key, ngunit muli ay maaari mong buksan ang BleKeyboard.h upang makita ang iba pang mga pagpipilian na magagamit.
bleKeyboard.write (KEY_MEDIA_PLAY_PAUSE);
Pagpindot at paglabas ng mga susi
Ang pangwakas na bagay na ipinakita sa amin ng halimbawa ay kung paano mo maaaring pindutin nang matagal ang mga key, kapaki-pakinabang ito para sa paglikha ng mga keyboard ng Macro. Ang halimbawang ipinakita dito ay para sa Ctrl + Alt + Delete
bleKeyboard.press (KEY_LEFT_CTRL);
bleKeyboard.press (KEY_LEFT_ALT);
bleKeyboard.press (KEY_DELETE);
Tinawag nito pagkatapos ang releaseAll, na kung maaari mong hulaan sa pamamagitan ng pangalan ay naglalabas ng lahat ng mga pinindot na key.
bleKeyboard.releaseAll ();
Maaari mo ring palabasin ang mga tukoy na key kung nais mo alinman sa pamamagitan ng paggamit ng release command gamit ang susi na nais mong palabasin
bleKeyboard.release (KEY_DELETE);
Hakbang 5: Iba Pang Mga Tip para sa Library
Sinakop namin ang pangunahing pagpapaandar ng library sa nakaraang hakbang, ngunit narito ang ilang mga sobrang bagay na sa palagay ko ay maaaring maging kapaki-pakinabang na malaman
Gumamit ng isang Panlabas na Trigger
Palaging pinakamahusay na kontrolin ang isang HID aparato tulad nito gamit ang isang panlabas na gatilyo tulad ng isang pindutin ang. Kung gumagamit ka ng isang timer at may mali na maaaring gawin itong mahirap upang idiskonekta. Pag-isipan ang pagkakaroon upang subukang patayin ang iyong Bluetooth kung hindi mo sinasadyang naprograma ito upang pindutin ang Ctrl + Alt + Del bawat 100mS!
Ang pagpapalit ng pangalan ng aparato
Bilang default ang lalabas na pangalan ng aparato bilang "ESP32 BLE Keyboard", mababago ito kapag lumilikha ka ng isang halimbawa ng library. Maaari mong itakda ang pangalan ng aparato, tagagawa at ang paunang antas ng baterya.
BleKeyboard bleKeyboard ("Pangalan ng Device ng Bluetooth", "Gumagawa ng Bluetooth Device", 100);
Itinatakda ang antas ng baterya (hindi gumagana para sa akin kahit papaano)
Sinasabi ng library na maaari mo ring itakda ang antas ng baterya ngunit hindi ito gumana para sa akin sa aking Windows PC (nanatili ito sa kung ano man ang paunang halaga) at hindi ipinakita ng aking android phone ang antas ng lahat ng ito. Narito ang utos para dito kung sakaling gagana ito para sa iyo
bleKeyboard.setBatteryLevel (50)
Pagkatugma sa Device
Matagumpay kong pinatakbo ang halimbawa sa aking Windows 10 PC, Android phone at aking Mac (kahit na tumatakbo pa rin ang Sierra kahit papaano!)
Maaari din itong maiugnay sa isang aparato nang paisa-isa.
Pag-troubleshoot sa Pagpares
Kung nagkakaroon ka ng ilang mga isyu sa pagpapares, subukang i-restart ang ESP32 habang naghahanap ang iyong aparato. Minsan din ay kinailangan kong i-on at i-off ang aking Bluetooth sa aking PC upang makuha ito upang ipares.
Hakbang 6: Ang Macro Keypad
Ngayon na wala tayong daan sa mga pangunahing kaalaman, gumawa tayo ng isang praktikal na bagay dito!
Sa isang nakaraang gabay ay ipinakita ko kung paano gawin ang pinakasimpleng Macro keypad mula sa isang Arduino pro Micro at murang keypad. Para sa bawat pindutan sa keypad nagpapadala ito ng iba't ibang kumbinasyon ng pindutan na maaaring magamit upang makontrol ang mga application, personal kong ginagamit ito para sa OBS, ang software na ginagamit ko para sa pag-record ng mga video at para sa pag-stream ko. Tila isang magandang proyekto ito upang mai-port ang ESP32 upang makagawa kami ng isang wireless na bersyon.
Para sa build na ito, gagamitin ko ang TinyPICO ESP32 board ng Hindi Inaasahang Maker. Ang pangunahing dahilan para sa pagpili nito ay isang napakahusay na board na may kuryente at mayroong circuitry para sa pagpapatakbo at pagsingil ng built-in na baterya ng Lipo, kaya ang kailangan ko lang gawin ay isaksak ang isang baterya.
Magsisinungaling ako kung ang katotohanang mayroon itong parehong hilera ng spacing tulad ng Pro Micro at maaari kong magamit ang nagawang breakout board na ginawa ko dati ay hindi rin nakakaakit!
Nangangailangan ang keypad ng 8 GPIO pin upang mapatakbo, at ang TinyPICO ay mayroong 8 GPIO na magkakasunod upang magagamit namin ito. Maaari mong simpleng ikonekta ang keypad sa TinyPICO tulad ng ipinakita sa imahe sa itaas.
Hakbang 7: Code para sa Macro Keypad
Ang code para sa sketch ng Macro Keypad ay matatagpuan sa aking Github.
Pati na rin ang BleKeyboard library na na-install sa isang nakaraang hakbang, kakailanganin mo ring i-install ang library para sa keypad, magagawa mo ito sa pamamagitan ng pagbubukas ng manager ng library sa pamamagitan ng pagpunta sa Sketch -> Isama ang Library -> Pamahalaan ang Mga Aklatan
Sa loob ng library manager, hanapin ang "keypad" at i-install ang isa nina Mark Stanley at Alexander Brevig
Ang isang pagsasaayos na maaaring kailangan mong gawin kung gumagamit ka ng ibang ESP32 kaysa sa TinyPICO ay ang mga keypad pin, itinakda ang mga ito sa rowPins at colPins array. Kapag tumitingin sa harap ng keypad at nagsisimula sa kaliwa, ang unang 4 na pin ay ang mga row pin at ang pangalawang 4 ay ang col pin.
Kapag tapos na iyon, i-upload ang code sa board at dapat subukan sa yugtong ito gumagana ito.
Hakbang 8: Gawin Natin Ito nang Wireless
Tulad ng nabanggit kanina, ang TinyPICO ay mayroong circuitry para sa paghawak ng isang built-in na Lipo kaya't ang kailangan lang nating gawin ay ikonekta ito. Dumarating ito sa mga konektor ng JST na maaaring solder sa ilalim, o maaari mong gamitin ang Bat at GND pin kung nais mong gawin ito sa pamamagitan ng mga pin.
Kung gumagamit ka ng mga konektor ng JST mangyaring i-double check ang polarity ng iyong baterya na tumutugma sa TinyPICO, walang pamantayan para sa kung paano dapat i-wire ang mga ito upang may magandang pagkakataon na hindi tumugma ang iyong baterya.
Suriin ang boltahe ng iyong baterya ng lipo bago gamitin ito, ang isang malusog na batter ay dapat na 3V o mas mataas, ang baterya na nakita ko na may tamang konektor ng JST ay nagbabasa ng 0V!
Natapos ako gamit ang isang 18650 na cell sa isang may-ari at hinihinang ito sa konektor ng JST ng patay na baterya.
Binabawasan ng TinyPICO ang pagkonsumo ng kuryente nito kapag tumatakbo sa baterya sa pamamagitan ng hindi pag-power ng alinman sa mga LEDs, kaya kahit na hindi ito tumingin, sana ay ito! Ang isang pagpapabuti sa hinaharap ng proyekto ay maaaring upang pulso ang onboard dotstar LED sa pagsisimula lamang upang ipaalam sa iyo na ito ay talagang naka-on at marahil muli kapag kumonekta ito. Sa ngayon maaari mong suriin sa iyong system ang menu ng Bluetooth na ito ay nasa at konektado ok.
Hakbang 9: Pagsubok Ito
Subukan natin ito, kung bubuksan ko ang bahagi ng mga hotkey ng OBS maaari akong mag-click sa iba't ibang mga aksyon upang maitala ang isang kumbinasyon ng pindutan na makokontrol ito, para dito maaari lamang kaming mag-click sa pindutan sa aming keypad at mag-a-update ito.
Matapos mong i-click ang mag-apply, hindi mo dapat magagamit ang iyong keypad upang makontrol ang iyong eksena sa OBS.
Hakbang 10: Salamat sa Pagbasa
Inaasahan kong nahanap mong kapaki-pakinabang ang Tagubilin na ito. Gusto kong marinig ang tungkol sa kung ano ang gagawin mo sa ganitong uri ng pag-setup. Mangyaring ipaalam sa akin sa mga komento sa ibaba, o sumali sa akin at ng maraming iba pang mga tagagawa sa aking server ng Discord, kung saan maaari naming pag-usapan ang paksang ito o anumang iba pang kaugnay na tagagawa na mayroon ka, ang mga tao ay talagang kapaki-pakinabang doon kaya't isang magandang lugar na mag-hang palabas
Nais ko ring magbigay ng isang malaking salamat sa aking mga Sponsor ng Github na tumutulong na suportahan ang aking ginagawa, talagang pinahahalagahan ko ito. Kung hindi mo alam, ang Github ay tumutugma sa mga sponsorship para sa unang taon, kaya kung gumawa ka ng isang sponsorship itutugma nila ito ng 100% sa mga susunod na buwan.
Salamat sa pagbabasa!
Inirerekumendang:
Diy Macro Lens Sa AF (Iba't Ibang sa Lahat ng Iba Pang Mga DIY Macro Lensa): 4 na Hakbang (na may Mga Larawan)
Diy Macro Lens With AF (Iba Pa Sa Lahat ng Iba Pang DIY Macro Lensa): Nakita ko ang maraming tao na gumagawa ng mga macro lens na may karaniwang kit lens (Karaniwan isang 18-55mm). Karamihan sa kanila ay isang lens na dumidikit lamang sa camera paatras o inalis ang pang-una na elemento. Mayroong mga downside para sa pareho sa mga pagpipiliang ito. Para sa pag-mount ng lens
Ang Pinakasimpleng DIY Macro Keypad: 10 Hakbang (na may Mga Larawan)
Ang Pinakasimpleng DIY Macro Keypad: Ang isang Macro keypad ay maaaring magamit upang maisagawa ang ilang mga pagkilos o pag-andar sa iyong computer at maaaring maging kapaki-pakinabang sa ilang mga application, tulad ng mga editor ng video o laro. Maraming mga application ang may maiinit na mga key para sa mabilis na pagganap ng mga pagkilos, ngunit kung minsan
Pasadyang Macro Mechanical Keypad: 12 Hakbang (na may Mga Larawan)
Pasadyang Macro Mechanical Keypad: Sa Maituturo na ito ihahatid ka namin sa mga pangunahing kaalaman sa paglikha ng iyong sariling 6 keyed macropad, kinokontrol ng isang Arduino. Dadalhin kita sa kung ano ang kailangan mo, kung paano ito tipunin, paano i-program ito, at kung paano ito mapahusay o gawing iyo
Keypad Interface Sa 8051 at Pagpapakita ng Mga Numero ng Keypad sa 7 Segment: 4 na Hakbang (na may Mga Larawan)
Keypad Interface Sa 8051 at Pagpapakita ng Mga Numero ng Keypad sa 7 Segment: Sa tutorial na ito sasabihin ko sa iyo ang tungkol sa kung paano namin mai-interface ang keypad sa 8051 at ipinapakita ang mga numero ng keypad sa 7 segment na pagpapakita
Mapagkukunang Magaan ng Macro Photography Gamit ang Mga Malamig na Cathode Lights: 9 Mga Hakbang (na may Mga Larawan)
Mapagmulan ng Liwanag ng Macro Photography Gamit ang Mga Malamig na Cathode Lights: Kapag nag-shoot gamit ang isang light tent isang mapagkukunan ng ilaw na may mababang intensidad ay lubos na kapaki-pakinabang. Ang CCFL (malamig na katod na fluorescent light) na matatagpuan sa mga LCD screen ay perpekto para sa hangaring ito. Ang CCFL at ang nauugnay na mga light dispersing panel ay matatagpuan sa sirang lapto