Sisällysluettelo:

DIY Bluetooth -makronäppäimistö: 10 vaihetta (kuvilla)
DIY Bluetooth -makronäppäimistö: 10 vaihetta (kuvilla)

Video: DIY Bluetooth -makronäppäimistö: 10 vaihetta (kuvilla)

Video: DIY Bluetooth -makronäppäimistö: 10 vaihetta (kuvilla)
Video: Valokuvien siirtäminen Android-puhelimesta tietokoneelle bluetoothilla 2024, Marraskuu
Anonim
DIY Bluetooth -makronäppäimistö
DIY Bluetooth -makronäppäimistö

Tässä Instructable-ohjelmassa aiomme tarkastella ESP32: n sisäänrakennetun Bluetoothin käyttöä Bluetooth-näppäimistön emuloimiseksi.

Bluetooth HID (Human Interface Device) on protokolla, jota tavalliset Bluetooth -näppäimistöt ja hiiret käyttävät, ja se on mahdollista jäljitellä tätä vain ESP32: lla, mikä on hienoa!

Joidenkin ESP32 -kehityskorttien hinta on alle 5 dollaria*, joten tämä on todella edullinen ja yksinkertainen tapa luoda langattomia mukautettuja näppäimistöjä, kuten makronäppäimistöjä. Makronäppäimistöjä voidaan käyttää eri sovellusten, kuten videonmuokkausohjelmien tai Photoshopin, ohjaamiseen, henkilökohtaisesti käytän omiani OBS: n kohtausten ohjaamiseen, kun teen videoita tai suoratoistan.

Katsomme ensin, miten ESP32 HID -näppäimistökirjastoa käytetään, ja sitten näytän, kuinka käytin tätä paristokäyttöisen Bluetooth -makronäppäimistön rakentamiseen.

Tarvikkeet

  • TinyPICO ESP32 Dev -levy (mikä tahansa ESP32 voi toimia)
  • 4*4 Matrix -näppäimistö*

Tarvitset myös lipopariston, käytin vain satunnaista paristoa, joten en voi linkittää siihen!

Jos tietokoneessasi ei ole Bluetoothia, voit käyttää tällaista dongleä:

Amazon.co.uk*:

Amazon.com*:

Amazon.de*:

* = Kumppani

Vaihe 1: Katso video

Image
Image

Olen tehnyt videon, joka kattaa saman asian kuin tämä Instructable, joten jos olet kiinnostunut, tarkista se! Teen myös videoita ESP8266- ja ESP32 -projekteista säännöllisesti, joten ehkä kanavallani on muita videoita, jotka saattavat kiinnostaa sinua!

Vaihe 2: [Valinnainen] ESP32: n käytön aloittaminen

ESP32: t ovat mikro -ohjaimia, jotka ovat yhteensopivia Arduino IDE: n kanssa ja joissa on WiFi ja Bluetooth. Ne ovat myös melko halpoja, joten ne ovat erittäin hyödyllisiä siruja projekteihisi.

Sinun on lisättävä ESP32 -kortin määritelmä Arduino IDE -laitteeseesi, ja voit seurata ESP32 Arduino -projektien Github -sivulla lueteltuja vaiheita

Vaihe 3: ESP32 Ble -näppäimistökirjaston asennus

ESP32 Ble -näppäimistökirjaston asennus
ESP32 Ble -näppäimistökirjaston asennus
ESP32 Ble -näppäimistökirjaston asennus
ESP32 Ble -näppäimistökirjaston asennus

On mahdollista käyttää Bluethooth HID: tä ESP32: ssa ilman ulkoista kirjastoa, mutta Githubin käyttäjä T-Vk on kirjoittanut kirjaston nimeltä ESP32-BLE-Keyboard, joka tekee siitä enemmän kuin tavallinen Arduino-näppäimistökirjasto, mikä helpottaa käyttöä.

Tämä kirjasto ei ole käytettävissä kirjaston hallinnassa, joten sinun on ladattava se Githubista.

  • Siirry projektien julkaisusivulle ja lataa uusin ESP32-BLE-Keyboard.zip
  • Kun olet ladannut, voit lisätä sen Arduino IDE -laitteeseesi, mutta siirryt kohtaan Sketch-> Include Library ja sitten Lisää Zip to library ja valitse ESP32-BLE-Keyboard.zip edellisestä vaiheesta.

Vaihe 4: Tarkastellaan esimerkkiä

Tarkastellaan esimerkkiä
Tarkastellaan esimerkkiä
Tarkastellaan esimerkkiä
Tarkastellaan esimerkkiä
Tarkastellaan esimerkkiä
Tarkastellaan esimerkkiä

Kun se on lisätty, voimme avata mukana tulevan esimerkin. Se on aika mukava esimerkki, koska se osoittaa muutamia erilaisia asioita, joita voit saavuttaa kirjastolla, mutta lisään myös hieman yksityiskohtaisemmin, missä se olisi mielestäni hyödyllistä.

Voit käyttää esimerkkiä siirtymällä kohtaan Tiedosto -> Esimerkit -> ESP32 BLE -näppäimistö -> SendKeyStrokes

Bluetooth -yhteyden muodostaminen

Asennuksessa se aloittaa Bluetooth -yhteyden, ja tässä vaiheessa sen pitäisi olla käytettävissä laitepariksi.

bleKeyboard.begin ();

Silmukan sisällä se myös tarkistaa, onko se kytketty laitteeseen

bleKeyboard.isConnected ()

Kirjoittaminen

Ensimmäinen esimerkki osoittaa, kuinka voit kirjoittaa tekstiä, kun se on kytketty, se kirjoittaa ensin "Hello world"

bleKeyboard.print ("Hei maailma");

Yhden painikkeen painallukset

Se näyttää sitten, kuinka voit "kirjoittaa" paluunäppäimen, tämä pohjimmiltaan jäljittelee yhden painikkeen painallusta tästä painikkeesta.

bleKeyboard.write (KEY_RETURN);

Voit avata kirjaston BleKeyboard.h -tiedoston nähdäksesi kaikki näin määritellyt avaimet. Voit myös lähettää ascii -merkkejä laittamalla ne pilkuiksi.

bleKeyboard.write ('A');

Media -näppäimet

Se osoittaa myös, kuinka voit lähettää mediaavaimia. Tämä on samanlainen tapa hallita äänenvoimakkuutta tai ohittaa kappaleita Bluetooth -kuulokkeilla. Esimerkki näyttää toisto-/taukonäppäimen, mutta voit jälleen avata BleKeyboard.h nähdäksesi muut käytettävissä olevat vaihtoehdot.

bleKeyboard.write (KEY_MEDIA_PLAY_PAUSE);

Näppäinten painaminen ja vapauttaminen

Viimeinen esimerkki näyttää meille, kuinka voit painaa ja pitää näppäimiä painettuna, tämä on hyödyllistä makronäppäimistöjen luomisessa. Tässä esitetty esimerkki on Ctrl + Alt + Delete

bleKeyboard.press (KEY_LEFT_CTRL);

bleKeyboard.press (KEY_LEFT_ALT);

bleKeyboard.press (KEY_DELETE);

Se kutsuu sitten releaseAll, joka kuten luultavasti voi arvata nimellä, vapauttaa kaikki painetut näppäimet.

bleKeyboard.releaseAll ();

Voit myös vapauttaa tiettyjä näppäimiä halutessasi joko käyttämällä vapautuskomentoa vapautettavan avaimen kanssa

bleKeyboard.release (KEY_DELETE);

Vaihe 5: Muita vinkkejä kirjastoon

Muita vinkkejä kirjastoon
Muita vinkkejä kirjastoon
Muita vinkkejä kirjastoon
Muita vinkkejä kirjastoon
Muita vinkkejä kirjastoon
Muita vinkkejä kirjastoon

Käsittelimme kirjaston päätoimintoja edellisessä vaiheessa, mutta tässä on joitain ylimääräisiä asioita, jotka saattavat mielestäni olla hyödyllisiä tietää

Käytä ulkoista liipaisinta

On aina parasta hallita tällaista HID -laitetta ulkoisella liipaisimella, kuten painikkeen painalluksella. Jos käytät ajastinta ja jotain menee pieleen, yhteyden katkaiseminen voi olla hankalaa. Kuvittele, että sinun on yritettävä sammuttaa Bluetooth, jos olet vahingossa ohjelmoinut sen painamaan Ctrl+Alt+Del 100 ms: n välein!

Laitteen nimen muuttaminen

Laitteen nimi näkyy oletuksena nimellä”ESP32 BLE -näppäimistö”. Tätä voidaan muuttaa, kun luot kirjaston ilmentymän. Voit asettaa laitteen nimen, valmistajan ja akun alkutason.

BleKeyboard bleKeyboard ("Bluetooth -laitteen nimi", "Bluetooth -laitteen valmistaja", 100);

Akun varaustason säätäminen (ei toimi ainakaan minulla)

Kirjasto väittää, että voit myös asettaa akun varaustason, mutta se ei toiminut minulle Windows -tietokoneessani (se pysyi alkuperäisessä arvossa) ja Android -puhelimeni ei näyttänyt kaiken tasoa. Tässä on komento sille, jos se toimii sinulle

bleKeyboard.setBatteryLevel (50)

Laitteiden yhteensopivuus

Suoritin onnistuneesti suoritin esimerkin Windows 10 -tietokoneessani, Android -puhelimessani ja Macissani (vaikka se käyttää edelleen Sierraa jotenkin!)

Se voidaan myös yhdistää vain yhteen laitteeseen kerrallaan.

Pariliitoksen vianmääritys

Jos laiteparin muodostamisessa on ongelmia, yritä käynnistää ESP32 uudelleen, kun laite etsii. Minun piti myös kerran kytkeä Bluetooth päälle ja pois päältä tietokoneessani, jotta se muodostaisi pariliitoksen.

Vaihe 6: Makronäppäimistö

Makronäppäimistö
Makronäppäimistö
Makronäppäimistö
Makronäppäimistö
Makronäppäimistö
Makronäppäimistö
Makronäppäimistö
Makronäppäimistö

Nyt kun perusasiat ovat poissa tieltä, tehdään siitä jotain käytännöllistä!

Edellisessä oppaassa esittelin, kuinka tehdä yksinkertaisin makronäppäimistö Arduino pro Micro -laitteesta ja halvasta näppäimistöstä. Jokaiselle näppäimistön painikkeelle se lähettää eri painikeyhdistelmän, jota voitaisiin käyttää sovellusten ohjaamiseen, henkilökohtaisesti käytän sitä OBS: ssä, ohjelmistossa, jota käytän videoiden tallentamiseen ja suoratoistoon. Tämä vaikuttaa hyvältä projektilta ESP32: n siirtämiseksi, jotta voimme tehdä langattoman version.

Tätä rakennetta varten käytän Unexpected Makerin TinyPICO ESP32 -levyä. Tärkein syy sen valintaan on erittäin energiatehokas levy ja siinä on sisäänrakennettu piiri Lipo -akun tyhjentämiseksi ja lataamiseksi, joten minun tarvitsee vain kytkeä akku.

Valehtelisin, jos se, että sillä on sama riviväli kuin Pro Micro ja voisin hyödyntää aiemmin tehtyä jo tehtyä katkaisulautaa, ei olisi myöskään houkutteleva!

Näppäimistö vaatii 8 GPIO -nastaa toimiakseen, ja TinyPICO -laitteessa on 8 GPIO -nastaa peräkkäin, joten käytämme niitä. Voit yksinkertaisesti liittää näppäimistön TinyPICO -laitteeseen yllä olevan kuvan mukaisesti.

Vaihe 7: Makronäppäimistön koodi

Makronäppäimistön koodi
Makronäppäimistön koodi
Makronäppäimistön koodi
Makronäppäimistön koodi

Makronäppäimistön luonnoksen koodi löytyy Githubistani.

Edellisessä vaiheessa asennetun BleKeyboard -kirjaston lisäksi sinun on asennettava myös näppäimistön kirjasto. Voit tehdä tämän avaamalla kirjastonhallinnan siirtymällä Sketch -> Include Library -> Manage Libraries

Hae kirjastonhoitajan sisällä "näppäimistö" ja asenna Mark Stanleyn ja Alexander Brevigin näppäimistö

Yksi kokoonpano, joka sinun on ehkä tehtävä, jos käytät eri ESP32: ta kuin TinyPICO, on näppäimistön nastat, ne asetetaan rivipinojen ja colPins -taulukkoon. Kun katsot näppäimistön etuosaa ja aloitat vasemmalta, ensimmäiset 4 nastaa ovat rivitappeja ja toiset 4 ovat saranatappeja.

Kun olet valmis, lataa koodi taululle ja sinun on testattava tässä vaiheessa, että se toimii.

Vaihe 8: Tehdään siitä langaton

Tehdään siitä langaton!
Tehdään siitä langaton!
Tehdään siitä langaton!
Tehdään siitä langaton!
Tehdään siitä langaton!
Tehdään siitä langaton!
Tehdään siitä langaton!
Tehdään siitä langaton!

Kuten aiemmin mainittiin, TinyPICO: ssa on sisäänrakennettu piiri Lipon käsittelyyn, joten meidän tarvitsee vain yhdistää se. Sen mukana tulee JST -liittimet, jotka voidaan juottaa pohjaan, tai voit käyttää Bat- ja GND -nastoja, jos haluat tehdä sen nastojen kautta.

Jos käytät JST -liittimiä, tarkista paristosi napaisuus vastaavasti TinyPICO -liitännän kanssa, ei ole olemassa standardia niiden kytkentöille, joten akku ei välttämättä vastaa sitä.

Tarkista lipo -akun jännite ennen käyttöä, terveen taikinan tulee olla 3 V tai korkeampi, oikean JST -liittimen kanssa löytämäni akku oli 0 V!

Päädyin käyttämään pidikkeessä olevaa 18650 -kennoa ja juottamaan sen kuolleen akun JST -liittimeen.

TinyPICO vähentää virrankulutustaan, kun se käyttää akkua pois päältä, koska se ei käytä mitään sen LED -valoista, joten vaikka se ei näy, toivottavasti se on! Projektin tuleva parannus saattaa olla pulssitukin tähti -LED -valo käynnistyksen yhteydessä vain kertoakseen, että se on todella päällä ja ehkä uudelleen, kun se muodostaa yhteyden. Tällä hetkellä voit tarkistaa järjestelmien Bluetooth -valikosta, että se on päällä ja kytketty oikein.

Vaihe 9: Testaa se

Testataan!
Testataan!

Testaa se, jos avaan OBS: n pikanäppäinosan, voin napsauttaa erilaisia toimintoja tallentaaksesi painikeyhdistelmän, joka hallitsee sitä, tätä varten voimme vain napsauttaa näppäimistön painiketta ja se päivittyy.

Kun olet napsauttanut Käytä, sinun ei pitäisi pystyä ohjaamaan otosta OBS: ssä näppäimistöllä.

Vaihe 10: Kiitos, että luit

Toivottavasti pidit tätä Instructablea hyödyllisenä. Haluaisin kuulla, mitä tekisit tällä kokoonpanolla. Kerro minulle alla olevissa kommenteissa tai liity minuun ja joukkoon muita tekijöitä Discord -palvelimellani, jossa voimme keskustella tästä aiheesta tai mistä tahansa muusta valmistajaan liittyvästä aiheesta, ihmiset ovat todella avuliaita siellä, joten se on hyvä paikka ripustaa ulos

Haluan myös kiittää suuresti Github -sponsoreitani, jotka auttavat tukemaan tekemääni, arvostan sitä todella. Jos et tiedä, Github vastaa sponsorointeja ensimmäisen vuoden ajan, joten jos teet sponsoroinnin, he vastaavat sitä 100% seuraavien kuukausien aikana.

Kiitos lukemisesta!

Suositeltava: