How to Build a Button Box

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 พ.ค. 2024
  • IMPORTANT: I mistakenly said you can use Arduino Uno for making a button box. That is INCORRECT Uno will NOT work with this guide. You can only use Arduino Leonardo or Pro Micro.
    If you'd like to buy me a coffee or a beer: / wimwamray
    How to design, build and code your very own button box using arduino! Perfect for flight sims, racing sims or space sims.
    This video covers how to build a box using any combination of momentary switches, buttons, rotary encoders and potentiometers. It gives tips on which components to use, how to wire them up and how to write the code to make it all work.
    You shouldn't need any previous experience in coding or electronics to follow this video. Just a bit of persistence and time.
    If you have questions, feel free to post them in the comments and I'll do my best to help you out.
    Download the Arduino IDE software here: www.arduino.cc/en/software
    Download the Keypad Library here: playground.arduino.cc/Code/Ke...
    Download the Joystick Library here: github.com/MHeironimus/Arduin...
    Download the base code here: drive.google.com/file/d/1dKqA...
    Full credit to AMStudio for his original code used in this project: • MAKE THIS BUTTON BOX |...
    0:00 Intro
    0:47 Components
    4:09 Design
    5:31 Wiring basics
    10:03 Wiring button matrix
    12:32 Wiring rotary encoders
    13:51 Other stuff you need
    15:31 Building tips
    17:14 Coding
  • เกม

ความคิดเห็น • 873

  • @wimwamjoey
    @wimwamjoey  3 ปีที่แล้ว +77

    BTW this video is designed for newcomers with no experience in coding or electronics. There is a bunch of extra functionality you could get out of an arduino based button box (multi position switches, hat switches, mini joysticks etc) but I decided to leave that out and stick to components which are simpler to code and use

    • @ivanravenski
      @ivanravenski 3 ปีที่แล้ว +2

      I'm not using rotary encoders what should i change.

    • @wimwamjoey
      @wimwamjoey  3 ปีที่แล้ว +4

      ​@@ivanravenski Just set the number for rotary encoders to zero at the top and remove the lines of code which refer to rotary encoders. (the bit around 24.34 in the video). However, if you are JUST using buttons (no rotary encoders or potentiometers) it will be much cheaper and easier for you to use a zero delay USB controller as described in this video: th-cam.com/video/Kx3-JhT4X_M/w-d-xo.html

    • @user-mx1nf5rf5y
      @user-mx1nf5rf5y 3 ปีที่แล้ว +1

      Can I use "pro mini"?

    • @TheLukemcdaniel
      @TheLukemcdaniel 3 ปีที่แล้ว +1

      yeah, but multipos and hat switches are little more than several buttons in one compact spot. I'm considering doing this for elite dangerous, where there's several functions that you'd never do at the same time where multipos can save space on the layout of the box in exchange for a bit more wiring on the inside.

    • @erentabar6628
      @erentabar6628 2 ปีที่แล้ว +3

      I dont use potansiometers. Where should I change

  • @dany_2945
    @dany_2945 3 ปีที่แล้ว +78

    i am so jealous that you got a store like that

    • @janzugic6798
      @janzugic6798 3 ปีที่แล้ว +9

      i got something even better, aliexpress

    • @slipknotfan2217
      @slipknotfan2217 2 ปีที่แล้ว +5

      @@janzugic6798 true, the prices in that store are crazy high

    • @greensmoke420ftw
      @greensmoke420ftw 2 ปีที่แล้ว +2

      Go to a commercial truck repair supply store

    • @jcdock
      @jcdock 2 ปีที่แล้ว +2

      @Joshua Lawson the store he is in is a Jaycar

    • @gorillaau
      @gorillaau ปีที่แล้ว +3

      Yes, it's a Jaycar store. Prices are high, but when you need something in a hurry, they are open seven days a week, when no one else is. As a hobbyist, I use them when needing something in a hurry or short of a component for that weekend project.

  • @cfidad7005
    @cfidad7005 3 ปีที่แล้ว +7

    Followed your instructions exactly, I've built multiple button boxes for my flight simulator to include avionics, radios, engine controls, etc. I've probably saved at least over $1000 not buying the Logitech or Saitek equivalents of what I made for under $200. $100 for 5 Arduino Leo's + $100-ish for wood, paint, switches, etc.Thanks for keeping it simple.

    • @tommyfallon7925
      @tommyfallon7925 3 ปีที่แล้ว

      What rating potentiometers did you use? For the leonardo

    • @cfidad7005
      @cfidad7005 3 ปีที่แล้ว

      @@tommyfallon7925 I used 50k Ohm linear potentiometers on one of the button boxes I built. Plenty of resolution for the function of cowl flap controls.

  • @justinthomas85
    @justinthomas85 3 ปีที่แล้ว +9

    You deserve a medal, a beer or some type of recognition for this video. This is absolutely incredible. Thank you.

  • @mattduncan3304
    @mattduncan3304 3 ปีที่แล้ว +6

    Much respect for providing concepts and advice rather than just a step by step of doing one thing one way. Most useful video I've seen on this subject.

  • @funwithfitswell6609
    @funwithfitswell6609 ปีที่แล้ว +4

    Finally a code that covers it all! I have been trying to blend matrix and joystick for a while. I just could not get it to work. I have no rotaries, I just commented those out and it works great!!! Thank you for the time you took to put this together !!!! You Rock!

    • @wimwamjoey
      @wimwamjoey  ปีที่แล้ว +2

      If you want a hot tip, chat GPT can actually do most of this coding all by itself. All you need to do is tell it to write code for an arduino button box using the keypad and joystick libraries and tell it how many buttons and other components you want.
      That thing is scary good.

    • @funwithfitswell6609
      @funwithfitswell6609 ปีที่แล้ว +1

      @@wimwamjoey Wow.....never imagined! You just added to the list of all the scary cool things it can do. Thanks again for your time!

  • @aaaidan
    @aaaidan 3 ปีที่แล้ว +9

    Just FYI, push buttons can share a ground for one of their terminals. The other terminal needs a dedicated pin in “INPUT_PULLUP” mode. This almost halves the number of pins needed per button, so you may not need to do that matrix trick.

    • @panicpetes7676
      @panicpetes7676 3 ปีที่แล้ว +2

      Actually, you're better off with the matrix method whenever you have more than 5 buttons. For 6 buttons a 2x3 matrix is enough and uses only 5 pins instead of 6. The more buttons you have, the bigger the advantage. For 25 buttons you can use a 5x5 matrix, so only 10 pins instead of 25. And the Keypad library also has built-in debouncing. I'm not sure if this is relevant when you send the buttons straight to the Joystick library, but if you want to use the button inside your code to switch modes you should have some form of debouncing.
      If you want to reduce the number of pins required even further, you may want to look into shift registers. They are quite cheap, only need four pins (or three for some models), and you can daisy-chain them getting 8 inputs per register (still needing only three or four pins per chain). I'm currently redesigning my button box with shift registers because I need to free up some pins so it can also handle my pedals and gear shifter that are currently handled by the steering wheel I am going to replace at some point.

    • @aaaidan
      @aaaidan 2 ปีที่แล้ว

      @@panicpetes7676 This makes total sense if you're optimizing for number of pins. But if you've got the pins spare, a "one pin per button" approach seems much simpler to me, and in many cases that would be "better" overall. Wouldn't you agree?

    • @panicpetes7676
      @panicpetes7676 2 ปีที่แล้ว

      @@aaaidan ​ I do agree that the wiring is much simpler if you connect the buttons directly, but as you said it would reduce the number of pins used in your original comment, I thought I'd clarify that this depends on the number of buttons you want to use.
      Also, in my experience, these projects tend to grow over time, so I'd recommend to use as few pins as possible in the beginning. I started with a rather simple button box (7 push buttons, 3 momentary on-off-on toggle switches, 3 rotary encoders and one pot). Later I added a DIY handbrake using a load cell and HX711 amplifier, so I needed two more digital pins. And as already hinted in my previous comment, I am now using the same Arduino to also handle my Logitech G25 pedals (+3 analog pins) and gear shifter (+2 analog and +3 digital pins).

    • @aaaidan
      @aaaidan 2 ปีที่แล้ว +1

      @@panicpetes7676 You're right - choosing the right approach depends on several factors. In the pinned comment it says "this video is designed for newcomers with no experience in coding or electronics", and I hope to convince you here that this is _the_ most important factor.
      My hunch is that for many folk (especially those beginning electronics) using the minimum possible number of pins is just not very important, especially when their board probably has plenty to spare. The matrix approach is a powerful (and delightful) concept to introduce to beginners. But it also acts as additional barrier to entry - an unnecessary one - because a first project is unlikely to run out of pins.
      Using a matrix takes more effort to learn, and extra time (and testing) to build correctly. There are also more points of potential failure. It could easily be the difference between an enthusiastic young person finishing their first project or not. Or even starting out in the first place. As experts, it's incredibly hard for us to keep perspective on how far we've come in our journeys, and almost impossible to "simulate" how much more effort everything is as a beginner.
      For these reasons, I strongly recommend folk start out with "pullup+ground" pins until there are no more pins available, before investing in mitigations (like a matrix) that add complexity. This basic approach still allows a dizzying variety of exciting and useful _first projects_ to build. If a project outgrows the pin count, simply switching to the matrix wiring at that point would be a fun and satisfying optimization/workaround. People often are most motivated, and learn best, when they're solving a clear and present problem.
      Depending on factors, I'd even suggest considering just solving the pin problem by buying another board with more pins, or even using a separate I/O chip (like a multiplexer or I2C expander). Perhaps this seems wasteful or unsophisticated to some experts. but I hope we can agree that it's more important to draw beginners in to the fascinating and joyful world of electronics, than to insist on best practices from the very start.
      What do you think?

    • @panicpetes7676
      @panicpetes7676 2 ปีที่แล้ว +1

      @@aaaidan I fully agree with everything you wrote - when starting a project from scratch. In this case however, with a full code provided I think it is far easier for beginners to adapt the existing code to their project (as it is described quite well in the video) than to rewrite the whole button section.

  • @DavidGarciaDaluz
    @DavidGarciaDaluz 2 ปีที่แล้ว +2

    A HUGE thank you from the bottom of my heart!!! You've just opened a whole new universe of possibilities in a half an hour video. This is a gem for electronics newbies like me. Thank you so much.

  • @dcdfm18bf18
    @dcdfm18bf18 ปีที่แล้ว

    This is the best video out there, before I had 4 videos saved so I could learn about everything about how to code the Arduino, the electronics etc. but they had very little detail. This has everything with perfect detail and explained very well! Good Job!

  • @FVRFactor
    @FVRFactor 2 ปีที่แล้ว

    Really appreciate this video Wim - your step by step has given me a better understanding of the programming and pin outs. I've been making steering wheels for the G27 and I wanted to increase the pots and switches. Your breakdown has helped me realise this is possible. Coupled with an AMstudio tute I can hopefully easily add a joystick control on the wheel for going through the menus. Once again cheers mate.

  • @ArdiOye
    @ArdiOye 2 ปีที่แล้ว +2

    Wow, I made my first button box and followed your coding instructions and it works flawlessly! Thanks for uploading!

  • @mattjohnson6889
    @mattjohnson6889 3 ปีที่แล้ว

    Hi Wim, just wanted to say how much I appreciated this video! I managed to build my own button box with zero prior coding experience. Great job brother, keep up the good work!

  • @reevesashby4185
    @reevesashby4185 2 ปีที่แล้ว

    Awesome tutorial Wim. I’ve completed my 22 button, 3 rotary box and it works great. I’m going to now build another one for radar control. Cheers.

  • @marcusviccoci
    @marcusviccoci ปีที่แล้ว

    Thank you for this tutorial. Just finished my first arduino (pro micro) buttonbox and I can say, I wouldn't be able to finish it without your video :)

  • @ratrodshaggy4840
    @ratrodshaggy4840 3 ปีที่แล้ว +2

    Thank you! I love amstudio but his description of the button matrix sent my brain into a tailspin. Your visual explanation helped so much. Awesome.

  • @mikekal4472
    @mikekal4472 ปีที่แล้ว +3

    Thank you so much for this great video! With your instructions I just build a 6x6 Button Matrix with 4 rotary encoders (without a button). Thus completely filling my leonardo's pins. 2 notes on your video so as to help others. 1) You can go over 32 buttons, directx supports 128 (my new button box has 44) BUT the game itself has to support 128 buttons per controller. Not all games do. If you want to test a button box with more than 32 buttons don't use the windows default game controller, because it only supports 32 buttons. There are great third party tools like Planet pointy's Joysticktest. 2) And most important NOT ALL rotary encoder have ground on the middle pin. My encoders where not marked and I assumed that the middle pin is ground, but it was actually the right pin that was ground. If your encoder gives erratic pulses mostly on one direction, you probably have the wrong pin for ground. Do the test on one encoder beforehand to save you a lot of pain. It took me all afternoon to figure that one out. Again thank you for a great video!

  • @--WalkerGer--
    @--WalkerGer-- ปีที่แล้ว

    I’m just designing my first button box and found your video. Awesome stuff. I love all the detail that you put in to enable people to make their own decisions based on what they personally need. Thank you so much! I had done quite a bit of research before I found you so I knew most of what you mentioned already, but this would have saved me lots of time and even then I still learned something new from you. Keep up the good work.

  • @CARdio1203
    @CARdio1203 3 ปีที่แล้ว +1

    Just wanted to say thank you for this video. My button box worked on the first attempt. Pure Gold!

  • @WilliamBrothers
    @WilliamBrothers 6 หลายเดือนก่อน +1

    For a few years I've wanted to make the P-47D-40's arming panel. This video gives me a lot more confidence starting it as a project

  • @lancelot4915
    @lancelot4915 3 ปีที่แล้ว +1

    Thanks a lot for this code. I´m building an F-16 ICP for BMS and was watching videos learning how to use the joystick library and the keypad library for matrix buttons programming, and the code given made all the work for me on a test with the Arduino.
    It was an incredible break through for me on one of the areas i´m less knowledgable.
    Thanks again! :)

  • @smilegame3740
    @smilegame3740 3 ปีที่แล้ว +2

    Great video, perfect and short explained. I have searched so long for this and I
    think your video was by far the best one I have found. Thanks!!! 😀

  • @oli4004
    @oli4004 2 ปีที่แล้ว

    You have no idea how much this has cleared up for me. At last I might have the confidence to go for it now

  • @chris8video
    @chris8video 3 ปีที่แล้ว +1

    I just finished buidling my box and programming it using your tutorial! Excellent. This crazy box project started with me trying the simple usb plug and play controller but I wanted rotaries. I tried the hacks to see it the rotaries would work on the usb board but it wasn't consistent. I ordered a "knock off" arduino at first but them backtracked to the one in the video. PERFECT. It works with my iRacing rig quite nicely!!!! 10 of 10!!!

  • @MicroplaysMC
    @MicroplaysMC 10 หลายเดือนก่อน +1

    I know a little about arduinos and electronics, but I've already learned the foundation for expectations watching this. It's extremely well-thought out, lots of hints and pointers for those who are just getting introduced. I've been wanting to make my own macropad for a while but most videos I come across are specific and hardly explain the working principles. I appreciate this!

  • @IronBalls007
    @IronBalls007 3 ปีที่แล้ว +1

    Finally a video explaining this matrix stuff on an understandable level.. Thank the lords. I had to abandon my buttonbox project because nobody really explains what the code is and where to change stuff, i will start again on it right now. Thx so much. Subscribed forever!

  • @Babyboomer_59
    @Babyboomer_59 ปีที่แล้ว

    Your video is a prize possession, thank you so much for taking the time to put together for us this video, I am currently building mine now and if not for this video, I'd surely be out of pocket purchasing a premade one.
    Thank you so much.
    Side note, I'm making my first box for American Truck Simulator / Euro Truck Simulator, I've added 2 push-pull switches for the breaks and Air supply along with a Key start switch among the other Buttons/Switches. I'll prob be making a second of not a third for other types of game play such as Sim Racing.

  • @crownjackal2366
    @crownjackal2366 2 ปีที่แล้ว

    Thank you so much for going through the code in this video!!! I'm new to Arduino and have been trying to understand the code that amstudios includes with their design guides but couldn't find anything to explain what they had done. I feel confident now in proceeding to design and make my own box now! Thank you!

  • @KingKooba22
    @KingKooba22 3 ปีที่แล้ว

    This is probably one of the better videos explaining wiring and matrixing. A Protip on coding,though. SimHUB has a click through system for programming Arduino code which makes it very easy to code for your own custom made box.

  • @zychrias
    @zychrias 3 ปีที่แล้ว +1

    Easy to follow, handles the basics really well. Good job!

  • @greentwister
    @greentwister ปีที่แล้ว

    Thanks for the video. I had first seen the other video of the ButtonBox that came at the beginning and loaded the code there. In your video I understood what was being programmed in the Ardoino IDE.

  • @AlexAugustinex
    @AlexAugustinex 3 ปีที่แล้ว +2

    Thank you so much for going through the code and explaining everything. This was really helpful.

  • @jeremy6529
    @jeremy6529 3 ปีที่แล้ว

    Thank you for this, the way you explained it makes it much less intimidating. Can't wait to get started

  • @BeGeGames
    @BeGeGames ปีที่แล้ว

    You are a freaking king. Thank you for keeping it simple when explaining and the images!

  • @mountainsprings3303
    @mountainsprings3303 3 ปีที่แล้ว +2

    Excellent tutorial on this. Thanks, just what I've been looking for.

  • @serolrom
    @serolrom 2 ปีที่แล้ว

    Wow that was much easier than I expected! So many possibilities!

  • @mo0nstonegirl
    @mo0nstonegirl 4 หลายเดือนก่อน

    Always love a good kiwi tutorial!! We're all about getting to the point 😅 Super useful info, best vid so far for sure (and I swear that's not just me being biased).

  • @jackbritt2424
    @jackbritt2424 3 ปีที่แล้ว +3

    Gonna start the process tomorrow. Wish me luck!!

  • @davidmizak4642
    @davidmizak4642 ปีที่แล้ว +2

    I want to thank you for the amazing information you provide to your viewers. This is fascinating material. I appreciate all of your efforts. Many thanks!

  • @autofctrl
    @autofctrl 2 ปีที่แล้ว

    Thank you so much!! This is by far the best video I have seen in regards of building a Buttonbox. 10/10 - Great job!!

  • @GeoFry3
    @GeoFry3 3 ปีที่แล้ว +1

    Played with these in school, didn't really understand their potential until I started working in commercial/industrial HVAC/building controls. Amazing little beasties that are just as capable as their industrial cousins for 1/10-1/20 the price and open source. No very expensive licensing. Great video. Thank you for the inspirational kick for my projects. I have several "space ship" cockpit builds that I am working on. The first a playset for my young children, and the second a fighter cockpit for my space sims.

    • @marcuswayne6131
      @marcuswayne6131 3 ปีที่แล้ว

      Open source is the way of the future.

  • @un1cus
    @un1cus 3 ปีที่แล้ว +4

    Top class Wim, already had parts ordered to use with Leo Bodnars controller, but now I'll switch to an arduino instead :)

    • @joshuamarius
      @joshuamarius 3 ปีที่แล้ว

      For a simple button box like this, the Leo Bodnar card will be way easier and just as effective. You only switch to Arduinos when you want the Simulator to turn on LEDs or change other hardware.
      Look over some of my videos, you may enjoy some of the simple projects such as adding Rotary encoders and Landing Gears :)

    • @christerah
      @christerah 3 ปีที่แล้ว

      @@joshuamarius thx for the tip, but I made one based on arduino and its working perfectly. I did however use different arduino code as the one in this video would not work with my rotaries.

  • @JQNick
    @JQNick 2 ปีที่แล้ว +1

    Cheers bro, was chasing my head with the code of a matrix that I put diodes in. Your comments in the example helped me realise I had spent 3 hours trying to find a code error when it was actually back to front diodes :(

  • @vandoos111
    @vandoos111 2 ปีที่แล้ว

    Beautiful, I not only am a newbie I considered myself as E-Dyslexic! I followed your TUT and am now well on the way to a new personalized BOX. BUT, I've connected 3 pots as shown, disabled everything but the potentiometer, and now the axis shows up but 2 of them are "in-sync" I'm guessing it's a detail on the coding modification that I probably messed up. ANYWAYS, Excellent TUT for NEWBS, Keep at it people, I've just discovered a new passion! THX a Bunch!

  • @pepc600
    @pepc600 2 ปีที่แล้ว

    Man this video is great. Brilliant diagrams and fantastic commentary. 10 star video thanks

  • @haydonford8177
    @haydonford8177 3 ปีที่แล้ว

    Awesome video!! Simplifies the entire process and really helped me get the result I was after. Thanks!

  • @aeoteroa818
    @aeoteroa818 ปีที่แล้ว +1

    this is just the information i was looking for to start my switch panels

  • @FLUFFSQUEAKER
    @FLUFFSQUEAKER 3 ปีที่แล้ว +1

    Beautiful video. Really got me into the mood/mindset to build one myself! Thanks :3

  • @Bigginger61
    @Bigginger61 3 ปีที่แล้ว +1

    Thanks for doing this video, you made the whole thing very clear.

  • @DuSlothster
    @DuSlothster 3 ปีที่แล้ว

    Really great mate, found this on reddit. Exactly what I needed

  • @conanlovelock6941
    @conanlovelock6941 3 ปีที่แล้ว

    Great video mate.. Helped me understand the matrix and coding..

  • @CorkKNIFE
    @CorkKNIFE ปีที่แล้ว

    Nice video and well paced explanation. I have most of the hardware, may try it over the weekend.

  • @RAYQUAZA_X
    @RAYQUAZA_X 21 วันที่ผ่านมา

    Massive thank you for this step by step guide ! My prototype works perfectly on the first try, i just have to ptint a little box to fit all those cables and it will be good to go.

  • @JD96893
    @JD96893 3 ปีที่แล้ว +1

    great video!!! I'm a bit of an electronic hobbyist and most Flight Sim button box videos use crazy expensive parts! Like I have seen videos of people using 3USD Arduino boards for a controller... I've also seen people using a 40USD ish board which was more plug and play although soldering was still required... Better just to build a whole kit or 2 for the same amount, i suppose you need to be a little more involved but its really not that hard and gives more flexibility!

  • @clxudzYT
    @clxudzYT ปีที่แล้ว

    Exactly the tutorial I was looking for!! Thanks!

  • @jb-enjoyment
    @jb-enjoyment 2 ปีที่แล้ว +1

    AWESOME video!! So helpful, thank you endlessly

  • @Babyboomer_59
    @Babyboomer_59 ปีที่แล้ว +1

    I've got my wheels turning in my head, I have to give a huge appreciation to you Wim and all like you that take the time to put these helpful videos together for us, so thanks! What I meant by wheels turning, I'd like to add a key Switch on/off interrupt to disable the box when not in use or away from the sim and I see away to do that on all of the buttons that require a ground which is easy "just place a turn key switch inline before connecting gnd to the board to act as an interrupt". so when I enter the sim I turn the key to the on position thus enabling those buttons, now that being said I don't see a possible or easy way to add a second keyed interrupt to the buttons that don't require a ground. I'd just like to add more realism to the process.

    • @wimwamjoey
      @wimwamjoey  ปีที่แล้ว +1

      You could get a USB switch? That way you just switch the whole arduino off.

    • @Babyboomer_59
      @Babyboomer_59 ปีที่แล้ว

      @@wimwamjoey I'm looking at them now thanks, I had no idea they were an option. Another thought just came to me while sitting here, add a starter button and just interrupt that single starter button with a key switch, I think that might achieve what I'm looking for, that or just omit the starter button and use the key switch for the starter, food for thought but I think I'd like the duel method for starter.

  • @ross-carlson
    @ross-carlson ปีที่แล้ว

    Just wanted to add another thanks, this video saved me a HUGE amount of time getting my project up and going. Subscribed.

  • @Kimera_Alternate_Realities
    @Kimera_Alternate_Realities ปีที่แล้ว

    Thank you for explaining the wiring, this is the first video I that explains this.

  • @-TK-421
    @-TK-421 3 ปีที่แล้ว +1

    Great Great Great video. You are great at explaining how to use a Arduino. The only thing I did not like was this is the only video on this topic. Please make some more videos on arduinos and building things. You are great at it. I am a new subscriber. Great job.

  • @Kimchi_Studios
    @Kimchi_Studios 3 ปีที่แล้ว

    Oh custom controls for flight simmers? Nice work!
    Inspired me to make my own with only the microcontroller in C.
    Thanks for explaining the code.
    Check six!

  • @user-oz3xu4jq3y
    @user-oz3xu4jq3y 4 หลายเดือนก่อน

    How does this man only have 2k subs, keep up the outstanding work.

  • @benkeller3
    @benkeller3 2 ปีที่แล้ว

    Wow best video on button boxs. Thanks for doing this.

  • @activemotionpictures
    @activemotionpictures 2 ปีที่แล้ว

    Thank you, sir! This video was so helpful, laying foundation and clear explanation!

  • @sgabal
    @sgabal ปีที่แล้ว

    Thanks a lot, I made my own button box and it works amazing, I have 2 encoders and 28 buttons and I use it for Iracing, I wish I could send you a picture!!!!!!

  • @rbdrifta
    @rbdrifta 3 ปีที่แล้ว +2

    Nice Video, I happened to have just finished a button box last week and I followed Amstudios vid also, but I never understood what all the coding does. And after watching this video I feel I understand a lot more that's going on and changes I can now make, Thanks man, Ps I did use toggle switches and found out about ghosting big time, haha. Fun to learn new things though

    • @rbdrifta
      @rbdrifta 3 ปีที่แล้ว

      I just finished my Cessna Throttle with the help of this video for the Arduino control as it was very popular in the flight sim groups. was asked to make a guide and in the Arduino section, i linked your youtube vid as it's so clear and easy to follow. hope this helps with views on your video, cheers Kris

    • @carlosb7929
      @carlosb7929 3 ปีที่แล้ว

      Hi man!! I'm trying to use some toggle switches (with lights) but I am a bit confused on how to use / connect them. Mines have POWER - ACC - GROUND pins. I guess Power goes to 5v and ground to ground so I end up having ACC. That way , the switches are "out of the matrix" as only the columns are connected to different inputs but the row instead of going to a normal input, it goes into the 5V input.... How do you make them work?
      Thanks!

  • @marcj8731
    @marcj8731 5 หลายเดือนก่อน

    Great video your explanations are clear and welcome.

  • @morganharvey2957
    @morganharvey2957 3 ปีที่แล้ว

    love the layout and content. keep up the good work :D

  • @robertrose7645
    @robertrose7645 2 ปีที่แล้ว

    Thanks this Video is the only reason I got my stuff working

  • @sinitronics
    @sinitronics 3 ปีที่แล้ว

    Something that I found recently that can save alot for those not comfortable with coding is FreeJoy library on github, it uses a STM32F103 (blue pill) instead and has a windows UI to setup what buttons. encoders , pots, hall effect sensors etc are conntected to what pin etc.
    Excellent tutorial though. A tip for those wanting to create one try getting ribbon cable I find that helps so much with avoiding a crows nest inside the box.

  • @rustyneedles3743
    @rustyneedles3743 3 ปีที่แล้ว +1

    Ah ha, took a Kiwi to make a thorough video ! awesome mate, thanks

  • @emrebahcivan5011
    @emrebahcivan5011 2 ปีที่แล้ว +1

    thank you very much this made me understand how everything works much more than jsut making a box you are amazing sir

  • @Chris-8888
    @Chris-8888 2 ปีที่แล้ว +2

    Big shoutout to you man!👊🏼

  • @mr.hermitsquid2694
    @mr.hermitsquid2694 4 หลายเดือนก่อน

    Very helpful! Still so much I need to figure out, but this should help. Thanks!

  • @microwar
    @microwar 3 ปีที่แล้ว +3

    Finaly got it to work.
    Did some stupid mistakes on the way.
    First i did not see that is was not working on a Uno,
    Then i forgot to correct the number of rows of buttons
    And the last thing was a crap usb cable that only had power.

  • @BamTehBrent
    @BamTehBrent 3 ปีที่แล้ว

    This is an extremely useful video. Thank you!

  • @ThePowerchimp
    @ThePowerchimp 3 ปีที่แล้ว

    Amazing video - well explained! For anyone put off by the coding, I recommend the Leo Bodnar BU0836X 12-Bit Joystick Board.
    It requires no coding - all you do is wire up potentiometers, buttons, switches however you want. Then when you plug it into a PC, windows recognises it as a universal controller with no drivers or coding needed. 8 x analog inputs, a 4-way hat and 32 button inputs. Ive subscribed - I hope you do more flight sim diy stuff!

    • @comet2164
      @comet2164 3 ปีที่แล้ว

      Thank you I’m new. So will I still have to do 5:50 to around 14:40

    • @wimwamjoey
      @wimwamjoey  3 ปีที่แล้ว

      ​@@comet2164 No, Leo Bodnar needs different wiring and you can't make a button matrix work with them (as far as I'm aware), so this video won't help with that. There are some good instructional videos on how to make Leo Bodnar boards on TH-cam and you can also ask for help on their forums. Also, keep in mind that those boards are often significantly more expensive than Arduino.

    • @wimwamjoey
      @wimwamjoey  3 ปีที่แล้ว

      Cheers mate! I'm looking at remaking and upgrading my button box so will probably do a new video on that, plus a DIY video on building a basic sim-pit out of an office chair.

    • @comet2164
      @comet2164 3 ปีที่แล้ว

      wimwamjoey thanks.

  • @user-vn5qg6fq5g
    @user-vn5qg6fq5g 2 ปีที่แล้ว

    Amazing video, I'm making a button box based on amstudio's video too and was kinda bumped out that there was no potentiometer functionality, not any more 😁

  • @commentingpausedtoprotectus
    @commentingpausedtoprotectus 3 ปีที่แล้ว +1

    I'm 7 mins in and I've learned a fucktonne already, cheers!

  • @dodgey99
    @dodgey99 ปีที่แล้ว

    1st THANKS. So well explained, and me and the mrs have been saying "button" in a Kiwi accent non stop - it makes us smile a lot 🙂 2nd, when you tell it how many "buttons" you have, if your matrix is missing a button, like yours is, and mine is (mins is a 4x3, with the top right corner missing one button), still tell it you have as many buttons as the matrix "could" have - or it'll not show the last button/s working in Windows. I put "11" in the code, and then windows didn't see my last button in the matrix because as far as it's concerned, that is button "12" and my code said I only have 11.

    • @funwithfitswell6609
      @funwithfitswell6609 ปีที่แล้ว +1

      If you started at 0, then 11 would be the 12th number.

  • @imjustinb
    @imjustinb 2 ปีที่แล้ว

    Super helpful, thanks so much for posting

  • @cuberq5648
    @cuberq5648 3 ปีที่แล้ว +1

    This is so awesome thanks loads for this im making one right now

  • @KlimentOgnianov
    @KlimentOgnianov 2 ปีที่แล้ว

    Awesome! Just a suggestion - regular retouching or vector graphics softwares are not a good choice, Fritzing is definitely times better for sketching electronic appliances.
    Congrats for the great video!

  • @andypuempel2570
    @andypuempel2570 3 ปีที่แล้ว +1

    Well explained. Nice Project.

  • @maryeglauber
    @maryeglauber 2 ปีที่แล้ว

    Thanks for such great tutorial!

  • @travisbussey1611
    @travisbussey1611 3 ปีที่แล้ว +1

    Thanks this was very helpful.

  • @OfficialRedDirtNurse
    @OfficialRedDirtNurse 3 ปีที่แล้ว

    Great video ... super helfpful.
    I keep expecting to hear you calling a band meeting for Brett and Jemaine. :)

  • @slipknotfan2217
    @slipknotfan2217 2 ปีที่แล้ว

    i play ETS2 and encoders are absolutely amazing for cruise control settings

  • @kshitijkumar9094
    @kshitijkumar9094 ปีที่แล้ว

    You saved me a lot of time, thank you very much friend, cheers 🍻

    • @kshitijkumar9094
      @kshitijkumar9094 ปีที่แล้ว

      Done making my control box, gonna make joystick and rudders now

  • @gunplajerk2591
    @gunplajerk2591 ปีที่แล้ว

    i got to this video and in the first 33 seconds you laid out every frustration i was having with trying to find info on this. i could kiss you on the mouth

  • @marczamp4737
    @marczamp4737 2 ปีที่แล้ว

    Thanks you so much, just the video I was looking for. Also how do I determine the right resistance for the potentiometers

  • @rattler-60
    @rattler-60 2 ปีที่แล้ว +1

    I am making a button box for DCS Flight Sim (A10C 2). I want nothing more complex than switches be they On-Off or momentary push buttons. I have completed all tasks as you have described in construction up to the wiring and tested out the bare wire switching to each individual switch using continuity for the matrix as designed. My matrix comprises 5 rows and 6 columns comprising purely on-off toggle switches (22 off) and monetary push buttons (7 off).
    Rows wires (5 0ff) are connected to an Arduino Nano - pins A0 .... A4. Columns wires (6 off ) are connected to D3....D8, so I am confident that the construction phase can be put to bed as completed successfully, following testing of every individual button and switch continuity.
    After connecting the Arduino through USB to my PC, this is where my troubles start. It only shows up as an "unspecified item" in my control panel instead of under the "Devices" collection. It shows as connected through Port_#0012.Hub_#0001 (I presume this is because my USB connector from the Arduino Nano was connected to a 7 Multiport Plug) which was automatically allocated.
    Right-clicking on the device does not show "Game Controller Settings" as my Hotas Warthog Throttle/Joystick and CH Pro Pedals show, so no way of testing the switching as shown in your video using the red light matrix to prove each switch. When right-clicking one of my "installed Devices" I only see The Warthog and CH Pro items listed as in the box at 26min 42secs. It seems almost as though despite following your instructions allocating pins and coding the Arduino successfully, whilst it uploads and verifies, it is not seen as installed. I have no doubt I am doing something wrong somewhere but being a 70-year-old "Noob" I can't figure out where. Is the port right? Is my programme right, I just haven't a clue over something that so many claim is basic and straightforward. Can you or anyone else Pleeeeease HELP??

  • @fontana101
    @fontana101 3 ปีที่แล้ว

    Great video mate, cheers!

  • @misael4096
    @misael4096 2 ปีที่แล้ว

    subscribed.. i feel i can ACTUALLY get this done with the way you explain things so clearly. Would you do something like this for a macro pad??

    • @wimwamjoey
      @wimwamjoey  2 ปีที่แล้ว +1

      TBH I don't really know enough for that. I just cribbed together what I learned from other videos/articles and put it into a single video

  • @Babyboomer_59
    @Babyboomer_59 ปีที่แล้ว +1

    Hello Wim, OK well I had hit a stumble in the road, after two days for working on the box, I had completed it yesterday evening 4/3/23 so after connecting the board to PC it was not recognized, so after time of trouble shooting I gave up and went to bed, this morning I had a fresh start, I found that I had purchased the wrong board, the board I purchased was the ATmega328P in which after downloading and installing the drivers for it, Device Manager was happy with it, only still not showing up in the game controller so I then found out that this 328P does not support HID "Human Interface Device". I'm back to start again but now I know which board I need, it's a learning experience. The board I believe that I should have purchased would be the ATmega32U4 and not the 328P.
    Note, I had already purchased the board before finding your video, I just assumed they were all the same, not the case, they are different and it matters which board you use.
    I received in my mail box yesterday the exact board you're demoing in this video, my question is will it support 15 momentary, (including 3 2-way toggle switchs), 4 rotary and 3 Potentiometers? a total of 25 in all.
    Thanks

    • @funwithfitswell6609
      @funwithfitswell6609 ปีที่แล้ว +1

      I too learned from his video. I have 30 buttons, 4 pots and a spare pin left if that helps.( I set the buttons up on a 6x5 matrix (11 pins), 4 pots on A0-A3.) Note: an on-on toggle counts as 2 buttons. Tinkercad is a great place to test build a matrix. Good luck

    • @Babyboomer_59
      @Babyboomer_59 ปีที่แล้ว

      @@funwithfitswell6609 I'm up and running, thanks.

  • @DuSlothster
    @DuSlothster 3 ปีที่แล้ว

    Just a tip for anyone here new to soldering / projects like this: USE SMALL PERF BOARD(S) FOR THE POTENTIOMETERS, it is so much easier to solder wires together when you have an actual platform to do so. Also makes installing the components easier within the box itself imo
    The reason I say use a perf board is because I was having a nightmare of a time wiring my two potentiometers correctly, wiring two tiny wires for each the 3.3v and GRND pins was a nightmare and causing me issues (I must have burnt through 3 or 4 of them just soldering terribly on them, the arduino spits out random data from the output when you do it wrong, making the axises EXTREMELY innaccurate (obviously)).
    If you have encoders with no pin out board, I would also recommend a perf board for those, thankfully mines had them which was just plug and play with the arduino cables I had. My box is still ongoing, buying a larger enclosure as my current one was a bit too small (realised I needed a leonardo for the extra pins, when previously I was going to use a pro micro) and waiting on better buttons, do not buy the tiny tacile ones, big mistake on my part.

  • @EdwardRLyons
    @EdwardRLyons 3 ปีที่แล้ว

    Very helpful. Thank you!

  • @Atlessa
    @Atlessa 3 ปีที่แล้ว +4

    (at 11:46) Oh so THAT is why you can press only 4 or so buttons on a keyboard at one time! (Eureka moment :D)

  • @MouldyGuitars
    @MouldyGuitars 5 หลายเดือนก่อน

    Ok worked after a few goes. Once I worked out where to put .h files (create libraries). But only first of 3 rotaries worked initially. Then remembered you note about the first rotary MUST be on pins 0 and 1. My board didnt have a 0 and 1.. So I added a fake rotary to the code as 11st of 4 on 0 and 1 and now all 3 ACTUAL rotaries work. Hope that may help someone. Everything else worked first time :) Thanks for a very useful video.

    • @Recrohin
      @Recrohin 5 หลายเดือนก่อน

      Hey there. I just got my arduino nano and was wondering the same why i didnt have any 0 and 1. Thanks for mentioning it! How did you make a fake rotary? just two blind wires?

    • @MouldyGuitars
      @MouldyGuitars 5 หลายเดือนก่อน

      @@Recrohin I just configured an extra 1st rotary in the arduino code using pins 0 and 1 that doesnt actually physically exist.

  • @DIRT-DIESEL
    @DIRT-DIESEL 3 ปีที่แล้ว

    GREAT VIDEO THANKS VERY HELPFUL !!!

  • @HattoriZaibatsu
    @HattoriZaibatsu ปีที่แล้ว

    Лучшее видео! Огромное спасибо! Удачи!