Тёмный

How To Turn An Arduino Into A USB Keyboard Or Mouse! | ATMega32U4 

Simple Electronics
Подписаться 27 тыс.
Просмотров 98 тыс.
50% 1

Just a quick video showing you the possibilities of the venerable ATMega32U4 - found in the Arduino Pro Micro, Leonardo and the relevant clones.
Check out Sparkfun's guide here, but please remember to include the Keyboard.h and Mouse.h libraries:
www.sparkfun.com/tutorials/337
and here is the code I used:
github.com/SimpleElectronicsY...
Do you need some Arduinos? Get there here:
Pro Micro clone:
s.click.aliexpress.com/e/_A2AAGh
Canada: amzn.to/3NYNHRl
USA & World: amzn.to/3HDR9i9
Leonardo clone:
s.click.aliexpress.com/e/_9iqrKt
Canada: amzn.to/3aVBpKR
USA & World: amzn.to/3mQym9I
Thanks for watching!
Check out my website: www.simpleelectronics.ca
If you feel like supporting the channel, please consider supporting on Patreon:
/ simpleelectronics
or get some cool merch!
teespring.com/stores/electron...
or buy anything from USA Amazon using my affiliate link:
amzn.to/3Iki6q7
or buy anything from Canadian Amazon using my affiliate link:
amzn.to/3FNxPfI
or buy anything on Banggood's site using my affiliate link:
www.banggood.com/custlink/mGv...
or buy anything using my Aliexpress affiliate link:
s.click.aliexpress.com/e/_9u07X6
and if you feel so inclined, here is my Amazon wish list!
www.amazon.ca/hz/wishlist/ls/...

Наука

Опубликовано:

 

24 июн 2022

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 98   
@leonclose7823
@leonclose7823 2 года назад
So simple! This looks like the start of a project for my Year 9 class. A handful of mechanical keyboard switches and some 3D printing could make a cool little macro pad. Thanks for the video.
@Dilshad-gu7je
@Dilshad-gu7je 2 года назад
These projects where they help us with our daily stuff are really powerful.
@TheJcrist
@TheJcrist Год назад
This is not only a keyboard but also any imaginable HID device, including UPS and 3D joystick.
@kjur18
@kjur18 2 года назад
I had one of these for some time, with 12 button keyboard that uses only one analog pin, worked great, but those buttons were a bit noisy (12mm tact switches) and a bit bulky. So my next step was to make this thinner and silent. So I used one of these MPR121 12 touch pad boards, works like a charm, and it's really thin compared to my previous one
@lordfly88
@lordfly88 Год назад
Exactly what I was looking for, thanks!
@Chaga1314
@Chaga1314 Год назад
pretty neat tutorial man. Cheers
@chriss3154
@chriss3154 8 месяцев назад
Made my foot pedal project a breeze! Quick and simple! Great thanks!👍🤘
@SimpleElectronics
@SimpleElectronics 8 месяцев назад
Awesome!
@xskodemedia746
@xskodemedia746 4 месяца назад
yo somebody with great Arduino tuts. are you still making videos about such or do you have a series of tutorials!!? I just came by your channel now and i am subscribing!
@Bianchi77
@Bianchi77 10 месяцев назад
Nice video, well done, thanks for sharing :)
@NREYTERYREYTY5fddffsfdf
@NREYTERYREYTY5fddffsfdf Год назад
dude this is great I'm gonna use this to make a flight panel for Microsoft flight simulator
@hans-dieterjung4026
@hans-dieterjung4026 Месяц назад
Thank for your work and nice explanation. my question: if i want to used an Uno 4, what type of Hardware i need to communicat like an HID ?
@YigalBZ
@YigalBZ 8 месяцев назад
Great video. Would it work with other Arduinos? ESP32?
@TBL_stevennelson
@TBL_stevennelson 2 года назад
Yes I do want you to build a project and maybe try one without the delay. Thanks
@os-channel
@os-channel Год назад
Great thing, thank you!
@electroniquepassion
@electroniquepassion 2 года назад
Merci pour l’info 👋👋
@Mulakulu
@Mulakulu 3 месяца назад
This is awesome. Gonna use some parallel in to serial out chips to get many many inputs and make a number pad. I do not like the decision of adding the 500ms delay there though, due to not being able to press any buttons for 500ms. I think I'll just not have a hold function, and rather only send inputs when they are pulled high, and ignore that button until it's pulled low again
@Mulakulu
@Mulakulu 3 месяца назад
or I'll just do Keyboard.press and Keyboard.release. That seems better maybe
@objection_your_honor
@objection_your_honor Год назад
I'm new to your channel and was wondering how I would be able to send a string of characters like "Left Shift + Right Ctrl + Pause" keys in one key press? Would Keyboard.print.(string), where string is an array of characters work?
@BrightBlueJim
@BrightBlueJim 4 месяца назад
I was looking for how to create a combined USB mouse and keyboard using an ATmega32U4 (Arduino Micro), but had read things implying that in order to combine two devices in one micrcontroller, you had to also implement a USB Composite device. And of course, most example programs only do mouse or keyboard, but not both. However, clearly this is not the case, since your example does exactly this! Maybe it's because they're both HID class devices? Whatever, now I know how to do what I need to do. Thanks!
@onecircuit-as
@onecircuit-as 2 года назад
Nice vid! 😀👍
@SimpleElectronics
@SimpleElectronics 2 года назад
Thanks man!
@saileshagarwal
@saileshagarwal 2 месяца назад
Hey, Do you think we can use place keyboard module inside a smart digital tape measure, which copies the measurement from the tape directly to the excel sheet via bluetooth? Thanks!
@georgef7754
@georgef7754 2 года назад
A keyboard project will be very interesting.
@tsumplays4185
@tsumplays4185 11 месяцев назад
Not sure if this comment will be seen but, can I ask if you had to download any drivers for your pro micro? Mine seems to have a 'unknown USB device' error, and it seems like I don't have a driver installed for it
@edsonferraz1
@edsonferraz1 11 месяцев назад
Very good your video, congratulation!! Is possible make a codigo to press FN + F6 how example
@rudy5360
@rudy5360 2 года назад
Could you turn it into a USB gamepad? A driving simulator controller would be a good project. Or RC model controller, reading servo PWM from an rc receiver, and sending this as a gamepad to a pc
@OfflineEz
@OfflineEz Год назад
Do I need diodes or resistors in this or could I just plug a keyswitch directly too my digital input and ground? im assuming the arduino I wanna buy has resistors built in it
@ashfaqjuna
@ashfaqjuna Год назад
05:29.. ok ok I have subscribed! :) Great video. Thanks 👍
@jeremy6384
@jeremy6384 6 месяцев назад
can the 32u4 handle multi press? ie can I do any combination of keyboard characters simultaneously?
@kyleallred984
@kyleallred984 2 года назад
I'm sure a fellow streamer could use a macropad for scene translation and other effects?
@shawnmichaelis1609
@shawnmichaelis1609 5 месяцев назад
how to i decrease the delay speed in-between button presses? i want to be able to press as fast as possible like a normal keyboard
@drakelazerus
@drakelazerus Месяц назад
Thanks so much! Built a 4 key and using your code I can enter stored passwords with the click of a button. I am curious if you would know how to have it enter a string then do a tab and then enter another string and then have it do an enter? I want to have this enter a username then do a tab and then enter a password and then do an enter? All of this programmed on one button press.
@frankowalker4662
@frankowalker4662 2 года назад
That's nifty.
@3xAudio
@3xAudio 26 дней назад
Is it straight forward to use one keyboard button to control 2 Arduinos simultaneously?
@bratban919
@bratban919 Год назад
I have been trying to get my pro micro to work but I get "averdude" messages and cant get my board to work. Any tips?
@muhammadaniqzakwan2d416
@muhammadaniqzakwan2d416 4 месяца назад
Question, can the board be swap with a standard breadboard?
@NoOne.--_.--..._--_..l--l
@NoOne.--_.--..._--_..l--l Год назад
Can we use every digital and analog pins?
@dsdailylife1126
@dsdailylife1126 4 дня назад
Can i copy the existing program already in it i have bought something like this that already have a program but i want to copy what's in it
@Kwistenbiebel100-ns5ko
@Kwistenbiebel100-ns5ko Месяц назад
Does this behave like a real keyboard if you hold a key down? Multiple characters are being put out?
@liamjoseph992
@liamjoseph992 8 месяцев назад
Can this be made into a wireless/Bluetooth device. And battery powered?
@GaryGrimtooth
@GaryGrimtooth Год назад
Does it trigger a LLHKF_INJECTED flag from windows when you send mouse clicks?
@054-manikandabharathi.t5
@054-manikandabharathi.t5 Год назад
Is it possible with esp32
@elektron2kim666
@elektron2kim666 4 месяца назад
With a touch keyboard on the micro's display this would make sense.
@Moneybitch000
@Moneybitch000 10 месяцев назад
can you explain more the code that you wrote
@jokerzbp9545
@jokerzbp9545 11 месяцев назад
But what I'm seeing from this code is that you cannot hold down a key. I could be wrong but if I wanted to walk using WASD I probably couldn't. I bought a metal DDR pad and the control box isn't working so i wanted to make my own JoyToKey after seeing how the pad worked.
@williamfraser
@williamfraser 4 месяца назад
If you had eight buttons, could it combine the inputs and decode the "binary" string? For example, pressing buttons two and eight (counting from left) gives 01000001 and translates to "A".
@BrightBlueJim
@BrightBlueJim 4 месяца назад
Or you could use a single button, and make the user enter the characters in Morse code.
@DNF07
@DNF07 11 месяцев назад
Bro can i use ot for games instead of W A. S D
@duppressor8164
@duppressor8164 6 месяцев назад
Can you use this code for a RP2040? 1:34 - 5:31
@selectnull4459
@selectnull4459 Год назад
I just knew you will press the E switch for Subscribe many many times :) - hope its an odd number of times :)
@xsm5525
@xsm5525 Год назад
I have two questions, (the 2nd one maybe being a bit weird) 1, is it possible to send things like the Function keys (F1-F12 etc) and the left up down right arrow keys? 2. is it possible to have 2 x arduino 32u4's on one board, and have all 5 microswitches (like your own setup here) Y-lead off to both arduino 32u4's? I want to control 2 PC's at the exact same time (don't ask!)
@romeolz
@romeolz Год назад
i don't see anything preventing question #2 from working, u just gotta steal the signal going from the buttons to arduino #1 and connect it to the pins of arduino #2 (NOTE: i am an electronics and arduino noob, please keep that in mind)
@adriansfx
@adriansfx 9 месяцев назад
as for #1 you can, a lot of the custom keyboards out there are based on this little board, and as a matter of fact you can even send up to F24 even tho traditional keebs go just up to F12
@hassanbo8200
@hassanbo8200 6 месяцев назад
does it have to strictly be the MEGA32U4 or is there any other chip that can be used like this? if there is, plz list the modules that can replace this
@user-mz1uh4ju1n
@user-mz1uh4ju1n 3 месяца назад
Yeah it needs to be a MEGA32U4 or this error message comes: Keyboard not defined, does your sketch has keyboard.h?
@mahirdaiyan6898
@mahirdaiyan6898 2 месяца назад
Can we do it with a Arduino Uno?
@whocares1433
@whocares1433 Год назад
Cool, there is a way to manipulate the arrows of the keyboard?
@SimpleElectronics
@SimpleElectronics Год назад
I think so actually - check out the linked website!
@jlr3636
@jlr3636 4 месяца назад
Nice, so I’m left handed, now I can build a Number Keypad which I can place on the left side of my keyboard so I don’t have to reach across to operate my keypad. Using programs such as Blender, I mouse with my right hand and type with my left hand, this will speed up the work-flow. Purchasing a dedicated left hand keyboard cost hundreds,
@user-ji7kq9wf2z
@user-ji7kq9wf2z 3 часа назад
Can the uno do it?
@rickharold7884
@rickharold7884 2 года назад
Cool
@AlexandreNOliveira
@AlexandreNOliveira 4 месяца назад
Hi, thank you for this content. Straight to the point. A quick question: After see your video and others about using ATMega32U4 as a keyboard, still not clear to me if it need to be the one of 3.3V or the one of 5V. Could you kindly let me know the correct voltage? Thanks in advance!
@SimpleElectronics
@SimpleElectronics 4 месяца назад
If you are going to plug it into usb, best to use the 5v version, simplifies a lot of stuff
@AlexandreNOliveira
@AlexandreNOliveira 4 месяца назад
@@SimpleElectronics Thank very much for your comment!
@evdokimovm
@evdokimovm 5 месяцев назад
That's the kind of "firmware", not the HID driver, am I right? I mean, when someone has soldered a custom keyboard, let's say, using an Arduino Nano, there is already a universal HID driver in the OS, but to make the output of the buttons correspond to symbols, you need to write a kind of "firmware", as shown in the video?
@SimpleElectronics
@SimpleElectronics 5 месяцев назад
That's my understanding
@paddyh4272
@paddyh4272 Год назад
I need something like this but I need it to use 18 keys from a keyboard for a custom panel. Which is best Arduino board to use?
@CobraFat2000
@CobraFat2000 5 месяцев назад
I think you can probably use the same one as in video, but you'd need to explore making a grid- like with 12 digital inputs - wire them 6 horizontal and 6 vertical and check against pairs of pulled pins for inputs and you'd have 36 - maybe even 4x4x4 for 64 or 3x3x3x3 is a possibility for a full blown 81 inputs, but it will probably limit how many keys can be pressed at the same time - depends on application of the product you're working on.
@electroniquepassion
@electroniquepassion 2 года назад
Salut, il n’est pas recommandé de mettre un filtre devant les leds ? Car je crois que cette lumière n’est pas bonne pour les yeux ! Sinon beau projet 👍 à bientôt 👋
@SimpleElectronics
@SimpleElectronics 2 года назад
Je crois qu'ils sont correcte - ils n'ont pas beaucoup de lumière infrarouge ou ultraviolette!
@electroniquepassion
@electroniquepassion 2 года назад
@@SimpleElectronics Ok d’accord 👍 bonne continuation
@g1expert102
@g1expert102 Год назад
I want to use this for a control panel for games... Ill be using in for stormworks It will have your basic push button but i also want to use circuit breakers
@loukxo
@loukxo 11 месяцев назад
Hi, you didn't have any problems with the inclusion of the keyboard library? I did a little, that's why I'm asking, since it's only been a month since you posted this message ...
@g1expert102
@g1expert102 11 месяцев назад
@@loukxo if you use the arduino leonardo then you don't need to struggle with it. You simply just type include keyboard.h
@vanchien5874
@vanchien5874 Год назад
Hi, does it work for only windows? I want to simulate a mouse using this in linux. Is it possible?
@BrightBlueJim
@BrightBlueJim 4 месяца назад
Since Human Interface Device (HID) class devices are generic, they should work equally well in Windows, MacOS, or Linux. These all use the same standards, although some keys are labeled differently on Macs. There's nothing Windows-specific in this project.
@FPChris
@FPChris 5 месяцев назад
Can you send Ctrl+Key or Middle Mouse Button + Key?
@BrightBlueJim
@BrightBlueJim 4 месяца назад
Yes! Since there are functions to call for all keyboard and mouse activities, you can certainly send codes that combine mouse and keyboard actions. The SparkFun tutorial that he based this project on (see the link in the description) gives more information about things like separate press and key actions for the keyboard, which lets you simulate holding down the Ctrl key and clicking the mouse center button, then releasing the Ctrl key.
@SFoX-On-Air
@SFoX-On-Air 9 месяцев назад
thats basically the way to make a rubber ducky ^^
@koolkidthergamer800
@koolkidthergamer800 6 месяцев назад
Thanks for the tutorial now i can make a password keyboard
@edran4449
@edran4449 5 дней назад
i tried this kept having problems with library, spent a good hour trying to troubleshoot code to look for any mistakes, searched it turns out arduino uno does support this library, sadly it doesn't have that chip, welp that was sadly painful guess ill need to buy an arduino with that chip, lmao i thought all arduino was the same just different sizes. guess its back to aliexpress for that chip arduino hahahaha.
@bluemuffin6160
@bluemuffin6160 Год назад
How is this when compared to using QMK?
@BrightBlueJim
@BrightBlueJim 4 месяца назад
QMK probably started out as a project much like this. QMK is much more sophisticated in how it lets you define how every key behaves, but when it's running, it's doing very much the same thing.
@doougle
@doougle 2 года назад
That's neat. If you knew a twitch streamer you could probably make a little device to fire commands and macros. verowaThink It seems like you could also fashion a customized game controller if the latency isn't bad.
@AvitoB0T
@AvitoB0T 11 месяцев назад
Вопрос: можно ли применить это к другим микроконтроллерам?
@SimpleElectronics
@SimpleElectronics 11 месяцев назад
Only those that have HID capability - the RP2040 for example has it but the ATMega328p does not
@AvitoB0T
@AvitoB0T 11 месяцев назад
@@SimpleElectronics извиняюсь, а на esp32 не получится?
@DNF07
@DNF07 11 месяцев назад
Hello bro can any one tell me how to make joystick for keyboard with this plz help
@BrightBlueJim
@BrightBlueJim 4 месяца назад
If you look at the SparkFun tutorial linked in the description, which is what this project was based on, it gives an example of using an analog joystick to act as a mouse. That should be helpful.
@khefer1980
@khefer1980 9 месяцев назад
Can You sent compination of Ctrl+C / Ctrl+V ;-)??
@CobraFat2000
@CobraFat2000 5 месяцев назад
You could always try something like: Keyboard.press(KEY_LEFT_CTRL); Keyboard.write('c'); Keyboard.release(KEY_LEFT_CTRL);
@tallnrough68
@tallnrough68 Год назад
How would I make a switch open a program on my computer ?
@hoople212
@hoople212 Год назад
could use [Windows]+r command to open run, then enter the appropriate command followed by enter?
@_BangDroid_
@_BangDroid_ 11 месяцев назад
Depends on what program you want to launch. Some applications can be opened using the Application Launch keycodes as part of the USB HID standard, these include Web browser, calculator, email client. Unfortunately the library used here doesn't support the full USB HID standard which means media keys and application launch keys are not possible. You could set the keys to be something obscure like F13 - F24 and use AutoHotHey to detect and run various commands, like opening an application. Otherwise, use a different library which does have full functionality, like NicoHood's HID project.
@Hoekstes
@Hoekstes 6 месяцев назад
I bought a nano for this project 🤦🏻‍♂️
@CraftyUnknown
@CraftyUnknown 6 месяцев назад
which one do you need?
@Hoekstes
@Hoekstes 6 месяцев назад
@@CraftyUnknown you need the Leonardo, but luckily I found a workaround to make the Nano do what I wanted. Edit: The Leonardo has HID (human interface device) capabilities that the Nano doesn’t.
Далее
How does a USB keyboard work?
34:15
Просмотров 3,2 млн
I Made a Tiny Keyboard
8:28
Просмотров 657 тыс.
Самый дорогой кабель Apple
0:37
Просмотров 331 тыс.