Hello, my nerd musician friend! In this video, I'm going to show you the five best Arduinos for building a midi controller. So let's get started! If you're new to this channel, my name is Gustavo Silveira. And I teach you here, among other things, how to build MIDI controllers. Building MIDI controllers is a way you can save a lot of money and have custom controllers the exactly way you need in your setup. One of the questions I get most is which Arduino I should use? So I'll do my best to give you a couple answers so you can choose the best Arduino for your musical project. So to start, I'll give you a couple questions you should ask before buying your Arduino. First, do you want your MIDI controller to be MIDI class-compliant? Just plug and play without any other software running in the background? How many pins do you need from your Arduino? Or how many components you are using in your project? And you want to be portable? And is it just a prototype or is a final project? And of course, how much do you want to pay? With these questions in mind, let's start with the first: MIDI class-compliant. So what is a MIDI class-compliant device? It's a device that's connected through the USB port that is recognized as a USB device. So if you're connected to Ableton Live, for example, it will be recognized as a MIDI class-compliant device as a MIDI controller that's recognized by the USB port. So there are 2 micro controllers that can be recognized as a USB device. And remembering that the micro controller is the brain of the Arduino, is not the Arduino itself. Although we have 2 micro controllers, we actually have more types of Arduinos that have these 2 micro controllers. The first micro controller is the ATMEGA16U2, and the second is the ATMEGA32U4. The Arduinos that come with the ATMEGA16U2 are some Arduino Uno and some Arduino Mega. Why? Actually, the main micro controller that does all the computing for these Arduinos is the ATMEGA328. That's the brain. However, these 2 Arduinos have an extra micro controller that just handles the USB part. However, some Chinese cheaper Arduinos come with a different type of micro controller for the USB. It comes with the CH340. The CH340 can't be recognized as a media controller. So if you buy an Arduino that has the CH340, there's no way you can make a MIDI controller that is plug and play. But if you buy an Arduino Mega or Uno with the ATMEGA16U2, doesn't mean that when you program your Arduino, to you be recognized as a MIDI class-compliant device out of the box. Actually, this micro controller the way it comes with the Arduino is just recognized as an Arduino. So for you to make it a MIDI class-compliant device, you actually need to make an extra hack. It's not really simple but also it's not that hard. Once you get it, you can just keep doing for all the boards. But remember, the Uno and the Mega with the ATMEGA16U2, need an extra step for you to make it a media class-compliant device. Now let's go for our next micro controller that can be a MIDI class-compliance device: the ATMEGA32U4. You can find the ATMEGA32U4 in the Arduino Micro, the Arduino Pro Micro and Leonardo. The advantage of this micro controller is that you don't need that extra hack after you program your Arduino. You just need to add a library in the code, the MIDIUSB library, and once you program this Arduino, it's done. It's a MIDI class-compliant device. The disadvantage of this micro controller is that it handles everything. The USB, the computing memory, everything. And sometimes when you program your board, it gets a little bit confused and then it just vanishes from your Arduino IDE, and you think you fried the board. And then sometimes you need to do some hacking, put something here and there to make it come back to life. I hope to do a video just showing how you can do that because that's a problem that a lot of people have. So what about the number of components you need for your project? While the Arduino Pro Micro only has 18 pins, the Arduino Mega has 60. So if you need a lot of components, it might be wise to choose a board with more pins like the Arduino Mega. Meanwhile if you don't need that many pins, go for a smaller board like the Arduino Pro Micro or Micro. And you always can increase the number of inputs and outputs using multiplexers or bit shifters. I don't want to get into details on how they work, but basically they increase the number of inputs and outputs of your Arduino. So with the analog multiplexer CD4067 for example, with one analog pin of the Arduino, you can make it into actually 16 inputs. So the multiplexer actually multiplies every analog input into 16 inputs. The disadvantage is that now you need to program also a multiplexer and if you don't have much experience, that can be a little hard. But of course, I can help you with that. With my course, the "Making Music with Arduino", which I always talk in my videos, but I'm gonna talk more a little bit later. So is it a final project or is it a prototype? While you are working in your idea, it's always wise to make a prototype before tested. And then if it works, make it a final project. For prototyping, it's always wise to use an Arduino that has pin headers that can be connected into jumpers. So just connect the jumper without actually having to solder to it, and just use a breadboard with the Arduino, so both can be best friends in your prototyping process. But okay, you already have your prototype ready, you know that everything is up and running and you want to make a final product. So for me, it's always better to go for the smallest, cheaper Arduino that you can actually solder to it. When you can solder to it, it gets way more stable. When the Arduino is small, it doesn't occupy much space inside your enclosure. And the smaller the Arduino, the cheaper it gets. So to recap, the 5 Arduinos I recommend are: the Arduino Leonardo, Uno, Mega, Micro and Pro Micro. If you want media class-compliant out of the box, go for Leonardo, Micro and Pro Micro. If you get the Uno or the Mega, they can still be MIDI class-compliant, but they need the extra hack. If you need a lot of pins, go for the Arduino Mega or a smaller Arduino like the Micro and Pro Micro plus multiplexers. If you want to prototype, go for an Arduino that you can use jumpers. The Arduino Leonardo, Uno and Mega. And for a final project, use an Arduino Micro or Pro Micro or one of them plus multiplexers. And I will include an extra Arduino. Actually, this guy is not an Arduino, it's a teensy board, but it is Arduino-compatible. So Arduino-compatible is something that actually will program exactly like an Arduino. The Teensys in general are way more powerful than the Arduino and have more pins. Also they can be media class-compliant right out of the box. Teensys are actually perfect for MIDI controllers. The only disadvantage of a teensy is that it is more expensive than the normal Arduino. And while if live in a country like the USA, it can be cheap. If you live in a country like Brazil, like me, it can get really expensive. And if you want to get started in this world, saving a lot of money, building your own MIDI controllers, boosting your workflow, building customized MIDI controllers for your own plugins or just going crazy creatively building your own instruments, don't forget to check here in the description the "Making Music with Arduino" course. This course besides been really, really cool, is what makes this YouTube channel possible. But giving a like and subscribing to this channel already helps so, so much! And it's just crazy that we just hit 10K subscribers. I mean it's still a small channel but for me it's already a lot. So thank you so much for that! And tell me in the comments, which is your favorite Arduino and why? Or if I should include any other Arduino to this list? So see you the next video!