Cov txheej txheem:

Arduino Keyboard Joystick Extender Box thiab Sound Controller Thing Siv Deej: 8 Kauj Ruam
Arduino Keyboard Joystick Extender Box thiab Sound Controller Thing Siv Deej: 8 Kauj Ruam

Video: Arduino Keyboard Joystick Extender Box thiab Sound Controller Thing Siv Deej: 8 Kauj Ruam

Video: Arduino Keyboard Joystick Extender Box thiab Sound Controller Thing Siv Deej: 8 Kauj Ruam
Video: How To Turn An Arduino Into A USB Keyboard Or Mouse! | ATMega32U4 2024, Hlis ntuj nqeg
Anonim
Arduino Keyboard Joystick Extender Box thiab Sound Controller Thing Siv Deej
Arduino Keyboard Joystick Extender Box thiab Sound Controller Thing Siv Deej

Tinkercad Cov Haujlwm »

Vim li cas

Ib pliag kuv tau xav ntxiv me me joystick rau kuv cov keyboard los tswj cov ntsiab lus cuam tshuam, lossis lwm yam haujlwm me hauv kev ua si thiab simulators (MS Flight Sim, Cov neeg tseem ceeb: txaus ntshai, Star Wars: Squadrons, thiab lwm yam).

Tsis tas li, rau cov neeg tseem ceeb: Txaus ntshai, Kuv tau tawm tsam nrog kev sib xyaw ntim ntau los ntawm cov suab sab nraud (ua suab paj nruag, thaum zoo, tau rov ua dua tom qab ntau teev nyob rau hauv cov xim dub), hauv-game suab, thiab sab nrauv lub suab txhawb nqa.

Windows ua-hauv qhov sib tov sib xyaw yog 'tau', tab sis qhov mob los hloov cov ntxaij vab tshaus thiab nas tswj kev swb nyob nruab nrab ntawm kev ua si. Muaj lub thawv keyboard txuas ntxiv zoo li txoj hauv kev mus. Deej is the solution I found.

Yuav ua li cas

Tsis ntev los no kuv tau kawm txog Arduino, thiab tau hla txoj haujlwm deej ntawm reddit. Nws zoo li qhov no yuav daws ob qho ntawm cov teeb meem hauv ib pob uas yooj yim. Thiab nws yuav cia kuv tsim thiab luam tawm cov ntaub ntawv zoo 3d.

Deej yog dab tsi?

(los ntawm lub xaib) deej yog ** qhib-qhov khoom kho vajtse ntim khoom sib xyaw ** rau Windows thiab Linux PCs. Nws tso cai rau koj siv lub neej sliders tiag tiag (zoo li DJ!) Rau ** tswj tau qhov sib txawv ntawm cov apps sib txawv ** (xws li koj lub tshuab ntaus nkauj, game koj tab tom ua si thiab koj lub suab sib tham) tsis tas yuav tsum nres dab tsi koj ua.

Kuv version

Txhawm rau kom lub thawv me me, kuv tau xaiv rau pob qhov rooj (cov kab hluav taws xob hloov pauv lub zog (cov lauj kaub = cov neeg tiv thaiv)) ntau dua li cov kab zauv. Muaj nuj nqi lawv ua haujlwm ib yam. Tam sim no thiab nrov deej tsim tsis suav nrog tus joystick, yog li qhov no yuav yog qhov tsim me me. Txwv tsis pub, nws yog qhov tsim ncaj ncaj rau pem hauv ntej.

Deej yuav ua haujlwm nrog Arduino Nano, Pro Micro lossis Uno, tab sis Nano thiab Pro Micro yog 'raug pom zoo' los ntawm tus tsim tawm. Kuv xaiv Arduino Pro Micro vim kuv xav tau lub joystick, thiab Arduino Joystick Library txhawb nws. Kuv kuj tseem tuaj yeem siv Arduino Keyboard Library thaum kuv xav siv xov xwm keyboard mute muaj nuj nqi (ntau dua li 'hais tsis tau lus') nrog lub joystick khawm, tab sis qhov ntawd txuas ntxiv mus.

Kauj Ruam 1: Cov khoom siv

Khoom siv
Khoom siv
Khoom siv
Khoom siv
Khoom siv
Khoom siv

Lub thawv

Rub tawm STL cov ntaub ntawv (tsim hauv Tinkercad):

  • Cov ntaub ntawv kaw ntawm Prusa (https://www.prusaprinters.org/)
  • Thingiverse (yuav los sai sai)

Kho vajtse (chav tsim khoom)

  • 1 x Arduino Pro Micro
  • 4 x 10k teb (pob qhov rooj) Potentiometers (tsis yog Cov Tswj Lub Vev Xaib, siv lub lauj kaub)
  • 1x Arduino KY-023 Joystick
  • 5ft seem cat5 network cable
  • 1x USB A rau USB B micro cable (USB A yog qhov txuas loj loj, USB B micro yog dab tsi ntawm Arduino Pro Micro)
  • 1x 5mm liab LED
  • 1 x 220 ohm resistor

Kuv muaj qee qhov ntxiv ib puag ncig yog li kuv xav tias kuv yuav tsim chav txhim kho txhawm rau sim cov khoom tawm ntawm. Tsuas yog txuas cov khoom rau ntawm lub rooj ua mov ci ua kom yooj yim dua kom pom qhov kawg.

  • 1 x Arduino Pro Micro
  • 4 x 10k teb (pob qhov rooj) Potentiometers (tsis yog Cov Tswj Lub Vev Xaib, siv lub lauj kaub)
  • 1x momentary laub khawm hloov (nyuaj rov pib dua)
  • 1x USB A rau USB B micro cable (USB A yog qhov txuas loj loj, USB B micro yog dab tsi ntawm Arduino Pro Micro)
  • assorted jumper xov hlau
  • daim ntawv qhia zaub mov
  • 1x 5mm liab LED
  • 1 x 220 ohm resistor

Kauj Ruam 2: Cov ntaub ntawv kaw

Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw

Tus tsim

Kuv nyiam qee qhov ntawm lwm cov qauv tsim tawm hauv deej zej zog chav ua yeeb yam, yog li ua raws li cov yam ntxwv uas kuv nyiam:

  • Yooj yim rau tsim thiab luam tawm
  • Tsis tau txais txoj hauv kev ntawm kuv lwm lub desktop khoom siv
  • Tsis txhob siv cov ntsia hlau los yog cov ntsia hlau los tiv thaiv lub thaiv
  • Zoo sib xws tsim kom zoo nkauj rau cov keyboard

Kuv tsim thiab luam tawm ob tsab ntawv ua ntej txiav txim siab txog qhov tsim qauv zaum kawg no. Kuv nyiam kom muaj lub cev ua si los ua si hauv qhov chaw kuv siv nws vim nws ua rau kuv nkag siab zoo tias qhov khoom kawg yuav ua haujlwm li cas.

Kuv luv luv pib tsim hauv Fusion360, tab sis tsis paub nws zoo li Tinkercad thiaj li hloov pauv thiab ua haujlwm nyob ntawd.

Txij li thaum kuv xav tau tus qauv tsis muaj hau ntswj, kuv tsim lub thawv zes. Thawj tsab ntawv muaj lub hau nyias thiab lub thawv sib sib zog nqus rau txhua yam. Qhov kev tsim thib ob hloov pauv nrog lub hau tob thiab lub thawv ntiav hauv qab. Nws tsuas yog yuav tsum tuav lub Arduino Pro Mini thiaj li tsis tas yuav tsum loj. Kuj suav nrog cov cim embossed.

Qhov kev tsim thib peb tau hloov kho kom haum rau qhov chaw nyob ib sab ntawm kuv cov keyboard.

Luam tawm

Kuv luam lub thawv hauv PLA, teeb tsa lub ntsiab lus / txheej sib pauv los ntawm Dub rau Liab rau lub hau uas cov cim yuav cia li pib pom, thiab rov qab mus rau Dub rau qhov seem ntawm lub hau.

Teeb meem

Txhua qhov dhau los ntawm qhov no, lub joystick mount tau teeb meem. Txawm tias nyob hauv tus qauv thib peb, tus pas ua los tiv thaiv cov ntoo nyob hauv ib qho. Kev rov ua dua tom ntej yuav muaj kev pom zoo dua. Kuv tuaj yeem ua haujlwm ntau ntxiv ntawm qhov tsim tab sis xav tau mus rau theem tom ntej, teeb tsa.

Kauj ruam 3: Circuit Court

Qhov Circuit
Qhov Circuit
Qhov Circuit
Qhov Circuit
Qhov Circuit
Qhov Circuit

Kev ua haujlwm tsis zoo tshaj plaws puas tau

Ok, qhov no yog kuv thawj qhov kev ua tiav Arduino. Yog lawm, Kuv tau ua txhua yam ntawm daim ntawv tais ua ntej thiab kuv tab tom siv ib qho los txhim kho Kev Txhim Kho ntawm qhov no, tab sis raws li qhov tsim tau thiab sib sau ua ke, qhov no yog kuv thawj zaug. Yog li kuv lub xov tooj zoo li tsis zoo. Muaj, qhov ntawd tawm ntawm txoj kev:)

Hloov kho: Kuv tau tsim txij li ib qho ntxiv thiab cov hlua txuas tau zoo dua nyob ntawd. Saib cov duab:)

Chav tsev tsim khoom - Dab tsi mus qhov twg

Arduino Pro Micro yog lub rooj tsav xwm me me thiab yuav haum rau hauv ntu ntu hauv qab. Cov pob qhov rooj thiab cov joystick haum rau hauv lawv lub qhov hauv lub hau. Tab sis tsis txhob nce ib yam dab tsi kom txog thaum koj tau txais kev sib tw soldering.

Thaiv

Kuv tsis muaj cov xov tooj hluav taws xob tsim nyog, tab sis tau muaj cov ntawv yob ntawm cov khoom siv tseem ceeb cat5 network cable, yog li kuv tau siv. Nws nyuab me ntsis thiab tej zaum nkig ntau dua li cov kab hluav taws xob tso tseg, tab sis nws ua haujlwm.

Teem tawm cov khoom siv hauv kev kwv yees ntawm lawv txoj haujlwm zaum kawg, Kuv kwv yees qhov nrug, rau txhua lub xaim, ntxiv me ntsis ntxiv rau qhov ua kom qeeb, thiab lwm yam, tom qab ntawd txiav thiab txiav cov hlau. Kuv tshuav ntau slack.

Hais txog daim duab thaiv kab thaiv, kuv tau khiav hauv av (Dub) thiab VCC (Liab) mus rau pob qhov rooj thiab joystick qhov uas qhia. Txij li lub network cable tsis tuaj rau hauv cov xim no, Kuv tsuas yog khaws cov xim thiab khaws kuv cov xov txuas zoo ib yam rau txoj haujlwm.

Tus kheej lauj kaub. cov kab sib piv (Daj) tau khiav mus rau tus pin A0 - A3. Cov kab Joystick (Txiv kab ntxwv), kuj zoo ib yam, khiav mus rau I/O pins 8 thiab 9. Cov no yuav tsum raug xaiv los ua Analog hauv Arduino code li A8 thiab A9.

Tus joystick hloov tus pin (Xiav) khiav mus rau tus pin 7. Qhov no yuav yog tus lej digital hauv tus lej.

Rwb thaiv tsev

Txij li qhov xaim xaim no yuav raug muab ntim rau hauv qhov chaw me me, Kuv tau xaiv los tiv thaiv kuv cov kab txuas txuas nrog kev noj qab haus huv dollop ntawm cov kua nplaum kub yaj. Tom qab ntawd muab txhua yam tso rau hauv qhov chaw thiab ua qhov ntsuas yooj yim ntawm lub rooj tsavxwm thiab cov lauj kaub siv cov qauv ntawm Arduino Piv Txwv Piv Txwv Cov lej code - hloov kho kom nyeem tag nrho cov lauj kaub.

Qhov thib ob version

Ob daim duab kawg saum toj no qhia lub npov tom ntej kuv tab tom tsim. Qhov no yuav muaj 5 pob qhov rooj thiab ib lub sijhawm thawb lub pob rau lub pob ntseg. Tsis muaj joystick. Lub thawv loj tib yam.

Kauj Ruam 4: Tiav Cov Khoos Phis Tawj

Tiav Cov Khoos Phis Tawj
Tiav Cov Khoos Phis Tawj

Txog lub sijhawm kuv tau teeb tsa Joystick, Kuv paub tias tsis muaj ntau qhov kev tshem tawm ntawm nws lub rooj tsavxwm thiab tus lej tus pin sab laug ntawm Pro Micro.

Tom qab me ntsis ceev faj khoov ntawm tus pin lub taub hau, thiab rov thov dua ntawm cov kua nplaum kub yaj (rau rwb thaiv tsev), lub qhov rooj kaw kom raug.

Txhim kho lub lauj kaub mus yam tsis muaj qhov cuam tshuam.

Ib zaug ntxiv nrog cov xov hlau

Cov xov hlau tseem ceeb yog tawv me ntsis, thiab tuaj yeem tawg tau yog tias yoog tau ntau zaus, yog li ua tib zoo quav lawv (tsis muaj kaum ntse ntse) rau hauv qhov chaw muaj. Qee qhov kuv tau ntev dhau thiab xav tau me ntsis ntxiv.

Thaum txhua yam yog txhua yam ntsaws rau hauv qhov chaw, tsuas yog haum lub hauv paus rau saum thiab koj yuav tsum tau ua tiav nrog kho vajtse….

Tab sis tos, muaj ntau ntxiv

Tau kawg, tom qab ob peb lub lis piam ntawm kev siv, Kuv txiav txim siab tias kuv xav tau qhov ntsuas qhia rau kuv paub tias cov xwm txheej ntawm cov lus mos-mos MUTE muaj nuj nqi yog dab tsi.

Tom qab kho qhov chaws txhawm rau ntxiv rau hauv LED kev ua haujlwm (saib ntu tom ntej), Kuv sai sai txuas cov LED / xov hlau / tus tiv thaiv thiab txuas lawv rau hauv pawg thawj coj.

Kuv siv sijhawm ntau dua los laum lub qhov los ntawm sab saum toj ntawm rooj plaub vim kuv tsis xav ua kom tiav qhov kawg. Kuv cim qhov chaw nruab nrab, dented nws, tom qab ntawd muab tes sib tsoo me ntsis los ua lub qhov.

Kev ua tib zoo ntxiv ua kom huv huv lub qhov thiab ua kom zoo nruj nruj-haum kom ntseeg tau tias LED tsis tawm mus deb dhau saum toj saum toj.

Kauj ruam 5: Software

Lub Software
Lub Software
Lub Software
Lub Software
Lub Software
Lub Software

Txheej txheem cej luam

Yog li, qhov no yog ob ntu txheej txheem.

  1. Tau txais thiab nkag siab tias Deej ua haujlwm li cas thiab kho cov ntaub ntawv Config.yaml
  2. Kho cov cai Arduino kom haum cov kho vajtse thiab cov yam ntxwv xav tau
  3. Tau txais lub tsev qiv ntawv Arduino Joystick

Hauv kuv qhov xwm txheej, kuv xav tau cov yam ntxwv no:

  • Pob qhov rooj uas tswj qib (Mic thiab tso zis)
  • Mute hloov
  • 2 axis joystick lees paub los ntawm Windows rau daim ntawv thov siv

Qib

Deej zoo nkauj heev saib xyuas thawj lub ntsiab lus thaum nws los. Kuv tsis tau tweak no functionality

Mute hloov

Kuv tau txiav txim siab ntxov tias kuv yuav siv xovxwm/hloov pauv hauv Joystick ua lub pob ntseg tsis ua haujlwm.

Thaum koj tshuaj xyuas tus lej, koj yuav pom tias kuv tau xaiv (pib) siv lub suab mos 'mos' - thaum khawm lub pob, MIC ntim tau txo mus rau xoom (thiab LED tau teeb). Thaum nws tau nyem dua, MIC ntim tau xa rov qab mus rau nws qhov teeb tsa yav dhau los thiab LED tau tso tawm.

Thaum kawg kuv yuav tau saib ntawm kev siv Arduino keyboard lub tsev qiv ntawv kom toggle Mute xwm txheej los ntawm kev tshaj tawm xov xwm Keyboard code teeb tsa.

Kev siv Joystick

Qhov no xav tau kev siv Arduino Joystick lub tsev qiv ntawv kom ntseeg tau tias lub joystick tau lees paub tias yog HID ntaus ntawv los ntawm Windows thiab yog li ntawd los ntawm ib qho game/application.

Kuv yog tus noob me ntsis thaum nws los txog rau kev txiav txim siab thiab pom Joystick cov tsev qiv ntawv cov ntaub ntawv me ntsis me ntsis ntawm qhov kev siv tiag tiag - tab sis me ntsis tsom mus rau googling coj kuv mus rau lwm qhov piv txwv uas pab kuv nkag siab tias muaj dab tsi tshwm sim. Txheeb xyuas cov peev txheej ntawm qhov kawg kom paub meej.

Txhua yam kuv yuav tsum tau ua yog txheeb xyuas X/Y tus lej, nyeem lawv lub xeev thiab xa qhov ntawd mus rau lub tsev qiv ntawv Joystick. Arduino tau tshwm sim zoo li Leonardo rau Windows, thiab tau teeb tsa kom raug raws li Joystick ntaus ntawv.

Kuv muaj peev xwm teeb tsa nws hauv Elite Dangerous, nrog rau kuv qhov teeb tsa HOTAS uas twb muaj lawm thiab muaj Joystick tswj cov khoom kom raug thiab tsis cuam tshuam nrog HOTAS. Nws kuj tseem ua haujlwm tau zoo hauv Star Wars: Squadrons - Kuv tau teeb tsa kom nrawm toggle teeb tsa cov ntaub thaiv npog thaum sib ntaus.

Cov ntaub ntawv uas ua haujlwm nrog kuv teeb tsa Joystick

Kuv tau xa kuv cov ntaub ntawv tam sim no (Lub Kaum Hli 2020) rau Codepile.

  • Arduino code (.ino file)
  • Deej config.yaml

Kauj Ruam 6: Xaus

Xaus
Xaus

Zoo, qhov no yog ua tiav. Nws ua haujlwm thiab kuv zoo siab nrog qhov nws tuaj ua ke. Thiab kuv tau kawm me ntsis ntxiv txog kev tsim kho vajtse, kev koom ua ke, thiab Arduino cov phiaj xwm.

Kauj Ruam 7: Daim Ntawv Ntxiv..dum..dum

Addendum..dum..dum
Addendum..dum..dum

VLC - qhov zoo tshaj plaws suab thiab vis dis aus player muaj qhov txawv me ntsis qhov twg ntim ntim, thaum tswj sab nraud, dhia los ntawm 0% mus rau 27% ish. Qhov no tsis tshwm sim thaum kho qib siv hauv-app interface ntim tswj, tsuas yog nrog kev tswj hwm sab nraud zoo li Deej.

Deej tus tsim tawm sai pom qhov ua haujlwm hauv-VLC uas ua haujlwm, saib cov duab saum toj no:

"… yog tias koj xav xiam tus cwj pwm" Nrhiav "no koj tuaj yeem ua tau los ntawm kev hloov VLC lub suab tso tawm suab. Kuv tau siv DirectX hauv kuv qhov kev sim ntawm no. Koj yuav tsum tau rov pib dua VLC rau qhov kev hloov pauv kom siv tau. (Koj tseem muaj lub qhov rais qhib suab thiab tuaj yeem tswj nws ntawm deej, qhov no tsuas yog tiv thaiv VLC ntim bar los ntawm kev txav nrog nws)"

Kauj Ruam 8: Cov Khoom Siv Ntxiv

Cov Kev Pab Ntxiv
Cov Kev Pab Ntxiv

Pom ntawm Goog uas muaj zog, teev nyob rau hauv tsis muaj kev xaj tshwj xeeb …

  • Arduino Joystick Library (v2) - xav tau los ua ke joystick
  • Sparkfun Pro Micro hookup phau ntawv qhia - cov peev txheej zoo txog Arduino no
  • deej - software that drives the knobs
  • Hom USB Txuas Txuas - leej twg paub tias muaj ntau yam sib txawv?
  • Arduino Pro Micro Analog Pinouts
  • Arduino Leonardo Gaming Joystick - Leonardo zoo ib yam li Pro Micro, tsuas yog loj dua
  • Arduino Pro Micro (Clone) chaw nres nkoj tsis pom (Tshuaj) - thaum koj cib koj li Pro Micro (Kuv tau ua)
  • Arduino Leonardo/Micro raws li Game Controller/Joystick
  • Piv txwv ntawm kev siv tus lej xov tooj sib tham kom ntsiag to - siv HID Project lub tsev qiv ntawv
  • HID Project lub tsev qiv ntawv piv txwv tus lej rau ncua / ua si media
  • Lwm qhov piv txwv qhia pom tus gamepad tswj.
  • ArduinoGamingController_updated - cov lus piav qhia zoo ntawm kev siv Joystick Library
  • LED Resistor lub laij lej thingie - kom paub seb qhov loj npaum li cas tus tiv thaiv koj xav tau hauv koj txoj haujlwm
  • Icon tsev qiv ntawv - flaticon.com - qhov chaw ntawm cov duab siv saum cov pob qhov rooj
  • Lwm Tus Kws Txiav Txim Xim Xim - nyem rau ntawm cov xim thiab viola!

Pom zoo: