Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Sjekk ut videoen
- Trinn 2: [Valgfritt] Komme i gang med en ESP32
- Trinn 3: Installere ESP32 Ble -tastaturbiblioteket
- Trinn 4: Se på eksemplet
- Trinn 5: Andre tips for biblioteket
- Trinn 6: Makrotastaturet
- Trinn 7: Kode for makrotastaturet
- Trinn 8: La oss gjøre det trådløst
- Trinn 9: Test det ut
- Trinn 10: Takk for at du leste
Video: DIY Bluetooth makrotastatur: 10 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
I denne instruksen skal vi ta en titt på bruk av den innebygde Bluetooth-en til ESP32 for å etterligne et Bluetooth-tastatur.
Bluetooth HID (Human Interface Device) er protokollen som brukes av vanlig Bluetooth -tastatur og mus, og det er mulig å etterligne dette med bare en ESP32, noe som er flott!
Med noen ESP32 -utviklingstavler som starter med mindre enn $ 5* levert, er dette en veldig billig og enkel måte å lage trådløse tilpassede tastaturer som et makrotastatur. Makrotastatur kan brukes til å kontrollere forskjellige applikasjoner som videoredigerere eller Photoshop, personlig bruker jeg min til å kontrollere scener i OBS når jeg lager videoer eller streamer.
Vi skal først se på hvordan du bruker ESP32 HID -tastaturbiblioteket, og så vil jeg vise deg hvordan jeg brukte dette til å bygge et batteridrevet Bluetooth makrotastatur.
Rekvisita
- TinyPICO ESP32 Dev -bord (Alle ESP32 kan fungere)
- 4*4 Matrisetastatur*
Du trenger også et lipo -batteri, jeg brukte bare et tilfeldig batteri jeg hadde liggende, så jeg kan ikke koble til det!
Hvis din PC ikke har Bluetooth, kan du bruke en dongle som denne:
Amazon.co.uk*:
Amazon.com*:
Amazon.de*:
* = Tilknyttet
Trinn 1: Sjekk ut videoen
Jeg har laget en video som dekker det samme som denne Instructable, så hvis du er interessert, kan du sjekke den ut! Jeg lager også videoer rundt ESP8266- og ESP32 -prosjekter regelmessig, så det er kanskje andre videoer på kanalen min du synes er interessant!
Trinn 2: [Valgfritt] Komme i gang med en ESP32
ESP32 er mikrokontrollere som er kompatible med Arduino IDE og har WiFi og Bluetooth inkludert. De er også ganske billige, så de er veldig nyttige sjetonger for prosjektene dine.
Du må legge til ESP32 -kortdefinisjonen i Arduino IDE, for å følge dette kan du følge trinnene som er oppført på ESP32 Arduino -prosjektene Github -siden
Trinn 3: Installere ESP32 Ble -tastaturbiblioteket
Det er mulig å bruke Bluethooth HID på ESP32 uten eksternt bibliotek, men Github-bruker T-Vk har skrevet et bibliotek kalt ESP32-BLE-Keyboard som gjør det mer som det vanlige Arduino-tastaturbiblioteket som gjør det mye enklere å bruke.
Dette biblioteket er ikke tilgjengelig i biblioteksjefen, så du må laste det ned fra Github.
- Gå til prosjektutgivelsessiden og last ned den nyeste ESP32-BLE-Keyboard.zip
- Når den er lastet ned, kan du legge den til i Arduino IDE, men gå til Sketch-> Inkluder bibliotek og deretter Legg til zip til bibliotek og velg ESP32-BLE-Keyboard.zip fra forrige trinn.
Trinn 4: Se på eksemplet
Når det er lagt til, kan vi åpne opp eksemplet som følger med det. Det er et ganske fint eksempel, da det viser noen forskjellige ting du kan oppnå med biblioteket, men jeg vil også legge til litt mer detaljert der jeg tror det ville være nyttig.
Du får tilgang til eksemplet ved å gå til Fil -> Eksempler -> ESP32 BLE -tastatur -> SendKeyStrokes
Konfigurere en Bluetooth -tilkobling
I oppsettet starter den Bluetooth -tilkoblingen, på dette stadiet bør den være tilgjengelig for sammenkobling med på enheten din.
bleKeyboard.begin ();
Inne i sløyfen sjekker den også om den er koblet til en enhet
bleKeyboard.isConnected ()
Skriving
Det første eksemplet viser er hvordan du kan skrive ut tekst når den først er koblet til, og den vil først skrive "Hei verden" ved å bruke
bleKeyboard.print ("Hei verden");
Trykk på én knapp
Den viser deretter hvordan du kan "skrive" returtasten, dette er i utgangspunktet å etterligne et enkelt tastetrykk på denne knappen.
bleKeyboard.write (KEY_RETURN);
Du kan åpne BleKeyboard.h -filen i biblioteket for å se alle nøklene som er definert slik. Du kan også sende ascii -tegn ved å sette dem i enkle kommaer.
bleKeyboard.write ('A');
Medietaster
Det viser også hvordan du kan sende medietaster, dette ligner på hvordan du kan kontrollere volumet eller hoppe over spor med Bluetooth -hodetelefonene. Eksemplet viser play/pause -tasten, men igjen kan du åpne BleKeyboard.h for å se de andre tilgjengelige alternativene.
bleKeyboard.write (KEY_MEDIA_PLAY_PAUSE);
Trykk og slipp tastene
Det siste eksemplet viser oss er hvordan du kan trykke og holde nøkler. Dette er nyttig for å lage makrotastaturer. Eksemplet som vises her er for Ctrl + Alt + Delete
bleKeyboard.press (KEY_LEFT_CTRL);
bleKeyboard.press (KEY_LEFT_ALT);
bleKeyboard.press (KEY_DELETE);
Den kaller deretter releaseAll, som du sannsynligvis kan gjette etter navnet, slipper alle de trykte tastene.
bleKeyboard.releaseAll ();
Du kan også slippe spesifikke nøkler hvis du vil enten ved å bruke utgivelseskommandoen med nøkkelen du vil slippe
bleKeyboard.release (KEY_DELETE);
Trinn 5: Andre tips for biblioteket
Vi dekket hovedfunksjonaliteten til biblioteket i forrige trinn, men her er noen ekstra ting som jeg tror kan være nyttig å vite
Bruk en ekstern utløser
Det er alltid best å kontrollere en HID -enhet som denne ved hjelp av en ekstern utløser, for eksempel et knappetrykk. Hvis du bruker en timer og noe går galt, kan det være vanskelig å koble fra. Tenk deg å måtte prøve å slå av Bluetooth hvis du ved et uhell programmerte den til å trykke Ctrl+Alt+Del hver 100 ms!
Endre enhetsnavnet
Som standard vises enhetsnavnet som "ESP32 BLE Keyboard", dette kan endres når du oppretter en forekomst av biblioteket. Du kan angi enhetsnavn, produsent og det opprinnelige batterinivået.
BleKeyboard bleKeyboard ("Bluetooth -enhetsnavn", "Bluetooth -enhetsprodusent", 100);
Innstilling av batterinivå (fungerer ikke for meg i det minste)
Biblioteket hevder at du også kan angi batterinivået, men det fungerte ikke for meg på min Windows -PC (den holdt seg med den opprinnelige verdien) og Android -telefonen min viste ikke nivået på det hele. Her er kommandoen for det i tilfelle det fungerer for deg
bleKeyboard.setBatteryLevel (50)
Enhetskompatibilitet
Jeg kjørte eksemplet på min Windows 10 -PC, Android -telefon og Mac (men det kjører Sierra på en eller annen måte!)
Den kan også bare kobles til én enhet om gangen.
Feilsøking Paring
Hvis du har problemer med sammenkoblingen, kan du prøve å starte ESP32 på nytt mens enheten søker. Jeg måtte også slå av og på bluetoothen min på PCen en gang for å få den til å koble seg til.
Trinn 6: Makrotastaturet
Nå som vi har det grunnleggende ute av veien, la oss gjøre noe praktisk ut av det!
I en tidligere guide viste jeg hvordan du lager det enkleste makrotastaturet fra et Arduino pro Micro og billig tastatur. For hver knapp på tastaturet sender den en annen kombinasjon av knapper som kan brukes til å kontrollere applikasjoner, personlig bruker jeg den til OBS, programvaren jeg bruker til å ta opp videoer og til når jeg streamer. Dette virker som et godt prosjekt å portere over ESP32, slik at vi kan lage en trådløs versjon.
For denne bygningen kommer jeg til å bruke Unexpected Makers TinyPICO ESP32 -kort. Hovedårsaken til å velge det er et veldig energieffektivt kort og har kretser for å løpe av og lade et Lipo -batteri, så alt jeg trenger å gjøre er å koble til et batteri.
Jeg ville lyve hvis det faktum at det har samme radavstand som Pro Micro og jeg kunne bruke det allerede laget breakout -brettet jeg laget tidligere ikke også var tiltalende!
Tastaturet krever 8 GPIO -pinner for å fungere, og TinyPICO har 8 GPIO -pinner på rad, så vi bruker dem. Du kan enkelt koble tastaturet til TinyPICO som vist på bildet ovenfor.
Trinn 7: Kode for makrotastaturet
Koden for Macro -tastaturskissen finner du på min Github.
I tillegg til BleKeyboard -biblioteket som ble installert i et tidligere trinn, må du også installere biblioteket for tastaturet, du kan gjøre dette ved å åpne biblioteksjefen ved å gå til Sketch -> Include Library -> Manage Libraries
Inne i biblioteksjefen, søk etter "tastatur" og installer den av Mark Stanley og Alexander Brevig
En konfigurasjon du kanskje må gjøre hvis du bruker en annen ESP32 enn TinyPICO er tastaturpinnene, de er satt i rowPins og colPins array. Når du ser på fronten av tastaturet og starter fra venstre, er de fire første pinnene radpinnene og de andre 4 er kolpinnene.
Når det er gjort, last opp koden til tavlen og du bør teste på dette stadiet den fungerer.
Trinn 8: La oss gjøre det trådløst
Som nevnt tidligere har TinyPICO kretser for håndtering av en Lipo innebygd, så alt vi trenger å gjøre er å koble den til. Den leveres med JST -kontakter som kan loddes til bunnen, eller du kan bruke Bat- og GND -pinnene hvis du ville gjøre det via pinnene.
Hvis du bruker JST -kontaktene, vennligst dobbeltsjekk om polariteten til batteriet ditt stemmer overens med TinyPICO, det er ingen standard for hvordan disse skal kobles til, så det er en god sjanse for at batteriet ditt ikke stemmer overens.
Kontroller spenningen på lipo -batteriet før du bruker det. En sunn røre skal være 3V eller høyere, batteriet jeg fant med riktig JST -kontakt leste 0V!
Jeg endte opp med å bruke en 18650 celle i en holder og lodde den til JST -kontakten på det døde batteriet.
TinyPICO reduserer strømforbruket når batteriet går av ved å ikke slå på noen av LED -ene, så selv om det ikke ser ut, så er det forhåpentligvis det! En fremtidig forbedring av prosjektet kan være å pulsere den innebygde dotstar -LED -en ved oppstart bare for å fortelle deg at den faktisk er slått på og kanskje igjen når den kobles til. For nå kan du sjekke i systemets Bluetooth -meny at den er på og tilkoblet ok.
Trinn 9: Test det ut
La oss teste det, hvis jeg åpner hurtigtastene i OBS, kan jeg klikke på forskjellige handlinger for å spille inn en knappekombinasjon som styrer den. For dette kan vi bare klikke på knappen på tastaturet vårt, og den oppdateres.
Etter at du har klikket på bruk, bør du ikke kunne bruke tastaturet til å kontrollere scenen i OBS.
Trinn 10: Takk for at du leste
Forhåpentligvis fant du denne Instructable nyttig. Jeg vil gjerne høre om hva du vil gjøre med denne typen oppsett. Gi meg beskjed i kommentarene nedenfor, eller bli med meg og en haug med andre beslutningstakere på Discord -serveren min, hvor vi kan diskutere dette emnet eller en annen makerrelatert en du har, folk er veldig hjelpsomme der, så det er et flott sted å henge ute
Jeg vil også rette en stor takk til mine Github -sponsorer som hjelper meg med å støtte det jeg gjør, jeg setter virkelig pris på det. Hvis du ikke vet det, matcher Github sponsorater det første året, så hvis du lager et sponsing, vil de matche det 100% de neste månedene.
Takk for at du leste!
Anbefalt:
DIY makrotastatur: 5 trinn
DIY makrotastatur: Med flere og flere mennesker som gjør ganske intenst arbeid på datamaskinene og begynner å streame. Du har kanskje ønsket å forbedre arbeidsflyten på datamaskinen din, hvis du kanskje har sett på å få et slags sekundært tastatur, kanskje en Streamd
3D -trykt Arduino makrotastatur: 6 trinn (med bilder)
3D -trykt Arduino Macro Keyboard: Dette var mitt første prosjekt som jobbet med Arduino Pro Micro. Du kan bruke den i Zoom- eller Discord -chatter til å gjøre ting som å slå av lyden, bytte video eller dele skjermen. På toppen av det kan du programmere den til å åpne ofte brukte programmer på din
Slik demonterer du en datamaskin med enkle trinn og bilder: 13 trinn (med bilder)
Slik demonterer du en datamaskin med enkle trinn og bilder: Dette er en instruksjon om hvordan du demonterer en PC. De fleste grunnkomponentene er modulære og fjernes lett. Det er imidlertid viktig at du er organisert om det. Dette vil bidra til å hindre deg i å miste deler, og også i å gjøre monteringen igjen
DIY Google Home med Bluetooth -høyttaler på Raspberry Pi Zero Docking Hub: 7 trinn (med bilder)
DIY Google Home med Bluetooth -høyttaler på Raspberry Pi Zero Docking Hub: Vi har en instruks om DIY Amazon Echo Alexa - Alexa Voice Assistant på Raspberry Pi Zero Docking Hub. Denne gangen vil vi vise deg hvordan du bygger et DIY Google Home. I denne instruksjonen viser vi deg hvordan du installerer og konfigurerer Google Assistant
DIY bærbar Bluetooth -høyttaler med Powerbank .: 12 trinn (med bilder)
DIY bærbar Bluetooth -høyttaler med Powerbank .: Kompakt, men kraftig enkanals høyttaler med 3W utgang og innebygd strømbank. Bluetooth -høyttaler bygget fra Scratch !! Spesifikasjoner & Funksjoner: Bluetooth 4.0.3W full-range høyttaler. 1.8850 enkeltbatteri 2600mah. Micro USB-lading. USB ut for