Cuprins:
- Provizii
- Pasul 1: Verificați videoclipul
- Pasul 2: [Opțional] Noțiuni introductive despre un ESP32
- Pasul 3: Instalarea Bibliotecii de tastatură ESP32 Ble
- Pasul 4: Privind exemplul
- Pasul 5: Alte sfaturi pentru bibliotecă
- Pasul 6: Tastatura Macro
- Pasul 7: Cod pentru tastatura macro
- Pasul 8: Să-l facem wireless
- Pasul 9: Testați-l
- Pasul 10: Vă mulțumim pentru lectură
Video: Tastatură macro Bluetooth DIY: 10 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
În acest Instructable vom analiza utilizarea Bluetooth-ului încorporat al ESP32 pentru a emula o tastatură Bluetooth.
Bluetooth HID (Human Interface Device) este protocolul folosit de tastatura și șoareci Bluetooth obișnuiți și este posibil să îl imitați doar cu un ESP32, ceea ce este minunat!
Cu unele plăci de dezvoltare ESP32 începând de la mai puțin de 5 USD * livrate, acesta este un mod foarte ieftin și simplu de a crea tastaturi personalizate fără fir, cum ar fi tastaturile Macro. Tastaturile macro pot fi utilizate pentru controlul diferitelor aplicații, cum ar fi editori video sau Photoshop, personal le folosesc pe ale mele pentru controlul scenelor în OBS atunci când fac videoclipuri sau streaming.
Mai întâi ne vom uita la modul de utilizare a bibliotecii de tastatură ESP32 HID și apoi vă voi arăta cum am folosit acest lucru pentru a construi o tastatură Macro Bluetooth cu baterie.
Provizii
- TinyPICO ESP32 Dev board (Orice ESP32 poate funcționa)
- Tastatură matricială 4 * 4 *
De asemenea, veți avea nevoie de o baterie lipo, tocmai am folosit una aleatorie pe care o aveam așezată, așa că nu pot face legătura cu ea!
Dacă PC-ul dvs. nu are Bluetooth, puteți utiliza un dongle ca acesta:
Amazon.co.uk *:
Amazon.com *:
Amazon.de *:
* = Afiliat
Pasul 1: Verificați videoclipul
Am realizat un videoclip care acoperă același lucru cu acest instructabil, așa că, dacă sunteți interesat, vă rugăm să îl verificați! De asemenea, fac videoclipuri în jurul proiectelor ESP8266 și ESP32 în mod regulat, așa că poate există și alte videoclipuri pe canalul meu, pe care le-ați putea găsi interesante!
Pasul 2: [Opțional] Noțiuni introductive despre un ESP32
ESP32-urile sunt microcontrolere care sunt compatibile cu Arduino IDE și vin cu WiFi și Bluetooth incluse. De asemenea, sunt destul de ieftine, deci sunt cipuri foarte utile pentru proiectele dvs.
Va trebui să adăugați definiția plăcii ESP32 la IDE-ul dvs. Arduino, la aceasta puteți urma pașii enumerați în pagina Github a proiectelor ESP32 Arduino
Pasul 3: Instalarea Bibliotecii de tastatură ESP32 Ble
Este posibil să utilizați Bluethooth HID pe ESP32 fără bibliotecă externă, dar utilizatorul Github T-Vk a scris o bibliotecă numită ESP32-BLE-Keyboard care o face mai asemănătoare cu biblioteca standard de tastatură Arduino, care o face mult mai ușor de utilizat.
Această bibliotecă nu este disponibilă în managerul de bibliotecă, așa că va trebui să o descărcați de pe Github.
- Accesați pagina lansărilor proiectelor și descărcați cea mai recentă ESP32-BLE-Keyboard.zip
- Odată descărcat, îl puteți adăuga la IDE-ul dvs. Arduino, dar accesând Sketch -> Include Library și apoi Add Zip in library și selectați ESP32-BLE-Keyboard.zip din pasul anterior.
Pasul 4: Privind exemplul
Odată adăugat acest lucru, putem deschide exemplul care vine cu acesta. Este un exemplu destul de frumos, deoarece demonstrează câteva lucruri diferite pe care le puteți realiza cu biblioteca, dar voi adăuga, de asemenea, un pic mai multe detalii unde cred că ar fi util.
Puteți accesa exemplul accesând Fișier -> Exemple -> Tastatură ESP32 BLE -> SendKeyStrokes
Configurarea unei conexiuni Bluetooth
În configurare începe conexiunea Bluetooth, în acest stadiu ar trebui să fie disponibil pentru a se asocia cu dispozitivul.
bleKeyboard.begin ();
În interiorul buclei verifică, de asemenea, dacă este conectat la un dispozitiv
bleKeyboard.isConnected ()
Tastare
Primul lucru pe care îl arată exemplul este modul în care puteți scrie text după conectare, acesta va tasta mai întâi „Hello world” folosind
bleKeyboard.print („Bună ziua lume”);
Un singur buton apasă
Apoi arată cum puteți „scrie” tasta de returnare, aceasta este practic emularea unei singure taste apăsând acest buton.
bleKeyboard.write (KEY_RETURN);
Puteți deschide fișierul BleKeyboard.h al bibliotecii pentru a vedea toate cheile definite astfel. De asemenea, puteți trimite caractere ascii plasându-le în virgule simple.
bleKeyboard.write („A”);
Taste media
De asemenea, demonstrează modul în care puteți trimite chei media, acest lucru este similar cu modul în care puteți controla volumul sau sări peste piese cu căștile dvs. Bluetooth. Exemplul arată tasta de redare / pauză, dar din nou puteți deschide BleKeyboard.h pentru a vedea celelalte opțiuni disponibile.
bleKeyboard.write (KEY_MEDIA_PLAY_PAUSE);
Apăsarea și eliberarea tastelor
Ultimul lucru pe care ni-l arată exemplul este modul în care puteți apăsa și ține apăsate tastele, acest lucru este util pentru crearea tastaturilor macro. Exemplul prezentat aici este pentru Ctrl + Alt + Ștergere
bleKeyboard.press (KEY_LEFT_CTRL);
bleKeyboard.press (KEY_LEFT_ALT);
bleKeyboard.press (KEY_DELETE);
Apelează apoi releaseAll, care după cum probabil puteți ghici după nume, eliberează toate tastele apăsate.
bleKeyboard.releaseAll ();
De asemenea, puteți elibera anumite taste dacă doriți fie folosind comanda de eliberare cu cheia pe care doriți să o eliberați
bleKeyboard.release (KEY_DELETE);
Pasul 5: Alte sfaturi pentru bibliotecă
Am acoperit funcționalitatea principală a bibliotecii în pasul anterior, dar iată câteva lucruri suplimentare pe care cred că ar putea fi utile să le cunoaștem
Utilizați un declanșator extern
Este întotdeauna mai bine să controlați un astfel de dispozitiv HID folosind un declanșator extern, cum ar fi apăsarea unui buton. Dacă utilizați un cronometru și ceva nu merge bine, s-ar putea să vă faceți ciudat să vă deconectați. Imaginați-vă că trebuie să încercați să vă opriți Bluetooth-ul dacă l-ați programat din greșeală pentru a apăsa Ctrl + Alt + Del la fiecare 100mS!
Schimbarea numelui dispozitivului
În mod implicit, numele dispozitivului va apărea ca „Tastatură ESP32 BLE”, aceasta poate fi modificată atunci când creați o instanță a bibliotecii. Puteți seta numele dispozitivului, producătorul și nivelul inițial al bateriei.
BleKeyboard bleKeyboard („Numele dispozitivului Bluetooth”, „Producătorul dispozitivului Bluetooth”, 100);
Setarea nivelului bateriei (cel puțin nu funcționează pentru mine)
Biblioteca susține că puteți seta și nivelul bateriei, dar nu a funcționat pentru mine pe computerul meu Windows (a rămas cu orice valoare inițială a fost), iar telefonul meu Android nu a arătat nivelul tuturor. Iată comanda pentru aceasta în cazul în care funcționează pentru dvs.
bleKeyboard.setBatteryLevel (50)
Compatibilitatea dispozitivului
Am alergat cu succes, am rulat exemplul pe computerul meu Windows 10, pe telefonul Android și pe computerul Mac (deși rulează Sierra cumva!)
De asemenea, poate fi conectat doar la un singur dispozitiv odată.
Depanarea asocierii
Dacă aveți probleme de asociere, încercați să reporniți ESP32 în timp ce dispozitivul dvs. este în căutare. De asemenea, a trebuit să pornesc și să opresc Bluetooth-ul de pe computer pentru a-l împerechea.
Pasul 6: Tastatura Macro
Acum, că avem elementele de bază înlăturate, să facem ceva practic din asta!
Într-un ghid anterior am arătat cum să fac cea mai simplă tastatură Macro dintr-un Arduino pro Micro și tastatură ieftină. Pentru fiecare buton de pe tastatură trimite o combinație diferită de butoane care ar putea fi folosite pentru a controla aplicațiile, personal îl folosesc pentru OBS, software-ul pe care îl folosesc pentru înregistrarea videoclipurilor și pentru momentul în care transmit. Acesta pare a fi un proiect bun de port pe ESP32, astfel încât să putem realiza o versiune wireless.
Pentru această versiune voi folosi placa TinyPICO ESP32 a Unexpected Maker. Motivul principal pentru alegerea sa este o placă foarte eficientă din punct de vedere al consumului de energie și are circuitele pentru funcționarea și încărcarea unei baterii Lipo încorporate, așa că tot ce trebuie să fac este să conectez o baterie.
Aș minți dacă faptul că are aceeași distanță între rânduri ca Pro Micro și aș putea folosi placa de rupere deja realizată pe care am realizat-o anterior nu ar fi, de asemenea, atrăgătoare!
Tastatura necesită 8 pini GPIO pentru a funcționa, iar TinyPICO are 8 pini GPIO la rând, așa că îi vom folosi. Puteți conecta tastatura simplu la TinyPICO așa cum se arată în imaginea de mai sus.
Pasul 7: Cod pentru tastatura macro
Codul pentru schița tastaturii macro poate fi găsit pe Github.
Pe lângă biblioteca BleKeyboard care a fost instalată într-un pas anterior, va trebui să instalați biblioteca pentru tastatură, puteți face acest lucru deschizând managerul bibliotecii accesând Sketch -> Include Library -> Manage Libraries
În interiorul managerului de bibliotecă, căutați „tastatura” și instalați-o pe cea de Mark Stanley și Alexander Brevig
Este posibil să aveți nevoie de o configurație dacă utilizați un ESP32 diferit de TinyPICO, sunt pinii tastaturii, aceștia sunt setați în matricele rowPins și colPins. Când priviți partea din față a tastaturii și începeți din stânga, primii 4 pini sunt pinii rândului și al doilea 4 sunt pinii col.
Odată ce ați terminat, încărcați codul pe tablă și ar trebui să testați în această etapă că funcționează.
Pasul 8: Să-l facem wireless
După cum sa menționat mai devreme, TinyPICO are circuite pentru manipularea unui Lipo încorporat, așa că tot ce trebuie să facem este să îl conectăm. Vine cu conectori JST care pot fi lipiți în partea de jos sau puteți utiliza pinii Bat și GND dacă doriți să o faceți prin intermediul pinilor.
Dacă utilizați conectorii JST, vă rugăm să verificați polaritatea bateriei cu TinyPICO, nu există un standard pentru modul în care acestea ar trebui să fie conectate, deci există șanse mari ca bateria dvs. să nu se potrivească.
Verificați tensiunea bateriei dvs. lipo înainte de a o utiliza, o baterie sănătoasă ar trebui să fie de 3V sau mai mare, bateria pe care am găsit-o cu conectorul JST corect citea 0V!
Am ajuns să folosesc o celulă 18650 într-un suport și să o lipesc la conectorul JST al bateriei moarte.
TinyPICO își reduce consumul de energie atunci când se descarcă bateria prin faptul că nu alimentează niciunul dintre LED-urile sale, deci chiar dacă nu se aprinde, sperăm că este! O îmbunătățire viitoare a proiectului ar putea fi impulsionarea LED-ului dotstar integrat la pornire doar pentru a vă informa că s-a aprins efectiv și poate din nou când se conectează. Deocamdată puteți verifica în meniul Bluetooth al sistemelor că este activat și conectat ok.
Pasul 9: Testați-l
Să testăm, dacă deschid porțiunea de taste rapide din OBS, pot face clic pe diferite acțiuni pentru a înregistra o combinație de butoane care o va controla, pentru aceasta putem face doar clic pe butonul de pe tastatura noastră și se va actualiza.
După ce faceți clic pe aplicați, nu ar trebui să vă puteți folosi tastatura pentru a vă controla scena în OBS.
Pasul 10: Vă mulțumim pentru lectură
Sperăm că ați găsit util acest instructabil. Mi-ar plăcea să aud despre ce ați face cu acest tip de configurare. Vă rog să-mi spuneți în comentariile de mai jos sau să vă alăturați mie și o grămadă de alți producători pe serverul meu Discord, unde putem discuta despre acest subiect sau despre orice alt producător legat de dvs., oamenii sunt cu adevărat de ajutor acolo, așa că este un loc minunat de agățat afară
Aș dori, de asemenea, să mulțumesc enorm sponsorilor mei Github care mă ajută să susțin ceea ce fac, chiar îl apreciez. Dacă nu știți, Github corespunde sponsorizărilor pentru primul an, așa că, dacă faceți o sponsorizare, acestea se vor potrivi 100% pentru următoarele luni.
Mulțumesc pentru lectură!
Recomandat:
Lentilă macro DIY cu AF (diferită de toate celelalte obiective macro DIY): 4 pași (cu imagini)
Obiectiv macro Diy cu AF (diferit decât toate celelalte obiective macro DIY): am văzut o mulțime de oameni care fabrică obiective macro cu un obiectiv standard (de obicei, un diametru de 18-55 mm). Cele mai multe dintre ele sunt un obiectiv care se lipeste de camera în spate sau elementul frontal îndepărtat. Există dezavantaje pentru ambele opțiuni. Pentru montarea obiectivului
Tastatură macro DIY: 5 pași
Tastatură Macro DIY: Cu tot mai mulți oameni care lucrează destul de intens pe computerele lor și intră în streaming. S-ar putea să fi dorit să vă îmbunătățiți fluxul de lucru pe computer dacă ar fi așa că v-ați fi gândit să obțineți un fel de tastatură secundară, poate un Streamd
Tastatură Macro Arduino imprimată 3D: 6 pași (cu imagini)
Tastatură Macro imprimată 3D Arduino: Acesta a fost primul meu proiect de lucru cu Arduino Pro Micro. Puteți să-l utilizați în chaturile Zoom sau Discord pentru a face lucruri cum ar fi să comutați sunetul, să comutați videoclipul sau să partajați ecranul. În plus, îl puteți programa pentru a deschide programe utilizate frecvent pe
Cea mai simplă tastatură macro DIY: 10 pași (cu imagini)
Cea mai simplă tastatură macro DIY: o tastatură macro poate fi utilizată pentru a efectua anumite acțiuni sau funcții pe computerul dvs. și poate fi cu adevărat utilă cu anumite aplicații, cum ar fi editori video sau jocuri. Multe aplicații au taste rapide pentru acțiuni rapide, dar uneori
Tastatură mecanică macro personalizată: 12 pași (cu imagini)
Tastatură mecanică macro personalizată: În acest instructabil vă voi prezenta elementele de bază pentru crearea propriului dvs. macropad cu 6 taste, controlat de un Arduino. Vă voi trece prin ceea ce aveți nevoie, cum să-l asamblați, cum să-l programați și cum să-l îmbunătățiți sau să-l faceți dator