One of the biggest questions I see from people trying to get started with Arduino programming is wondering where to start. I know I had the same problem only a couple of months ago. This post will share what tools I’m learning to program Arduino’s and what tools I plan to use soon to continue learning. I’ve taken a two pronged approach. First, I learned how to work with sensors, and then I learned to do more in depth programming.
Learning how to work with the Arduino and sensors
I have a pretty strong background in electronics and some basic programming skills. But I am new to the world of SBCs (Single Board Computers) and very new to working with the many sensors available for the Arduino. I tried a variety of websites and YouTube channels to try learning basic Arduino programming. The problem is that most of them assumed I had hardware that didn’t quite match up with some basic Arduino hardware I had procured.
To fix that problem, I ordered a HERO Arduino starter kit from inventr.io. This kit comes with an Arduino UNO and some basic components to get started with some basic projects. This was a great kit to learn how to use the Arduino IDE to program and discover how to hook things up to the Arduino and get them working. There was an excellent series of lessons doing things like getting an LED to blink and making a little game.
After completing the basic kit, I ordered the 37 sensor kit from the same place. For each sensor, there was an excellent video on their website explaining how to use the sensor. It was a great way to get started figuring out what each sensor could do.
If I were to begin today, I would sign up for the 30 Days Lost In Space lesson plan. This has its own hardware kit and a set of lessons mixed with a sci-fi scenario. I would love to do this, but I think it is better suited to those just getting started.
I moved on to learning how to program Arduino.
After getting through the HERO classes, I felt confident that I could create some cool basic Arduino projects that I could combine with 3D printing. The temp and humidity sensor I made is an excellent example of doing this. But I found myself wanting to do more. Many times I saw the name Paul McWhorter come up in Arduino groups as a great teacher. So I went to his website TopTechBoy.com and proceeded to check out his video collection. I have to say, for anyone that wants to start down the path of creating Arduino programs, this is the way to go.
In the Arduino Lessons section, he uses the Elegoo Super Starter Kit to teach Arduino programming. The kit costs about $35 on Amazon and is well worth it. Before finding his class, I already had the larger Elegoo kit but found the learning materials provided by Elegoo to be lacking (which is why I ended up buying a HERO kit too). McWhorter’s class is well worth time for anyone looking for a great starting point to programming Arduino’s. There are a lot of assignments in the series. But after doing the homework, I’ve found my ability to program Arduino’s from scratch to be vastly improved.
There are times I wish he would go a little faster. Also, my experience with electronics makes me a little impatient waiting for him to teach a topic. But I have never fast-forwarded a video or felt my time was being wasted. McWhorter focuses on teaching students the basics needed to become an Arduino engineer. It is also essential to keep in mind that McWhorter is only teaching the basics, and many things he teaches can be done in different ways. I see these classes as an intro to Arduino and not as a master programming lesson series.
One last note. To take the class, all that is needed is the Elegoo Super Starter Kit. He does halfway through the series recommend upgrading to a better servo motor. I do have some of those motors, and yes, they are better but not necessary to take the class. And towards the end, he recommends getting better jumper wires, a bigger breadboard setup, and an Arduino Nano. I think all three suggestions are valid but unnecessary for taking the class. My only real recommendation would be to get a better breadboard, even if it is a standard-sized one. The Elegoo kit is an overall good value, but the breadboard is inferior quality. The low-quality breadboard that comes with the kit is hard to work with because the pinholes are way too tight.
Where I’m going from here
I’ve become a big fan of McWhorter. So I’m going to take the series of robotics lessons he has building the Elegoo Smart Car v3.0. The kit should arrive via Amazon this week, and I’m looking forward to getting it up and going. At this point, I’m not sure I need the lessons from McWhorter, but I like his teaching style and think there will likely be value in assembling the robot with him by my side.
After that, I plan to take McWhorter’s lessons on programming AI utilizing the Nvidia Jetson Xavier. I’ve already ordered the hardware for this and will likely begin those lessons shortly after finishing my Elegoo Smart Car. Completing both the Nvidia Jetson and Elegoo Smart Car tutorials will get me closer to my end goal of designing and building robots on my own.
I’m still building other things too!
Of course, while going through the lessons mentioned above, I will continue working on other Arduino projects. Currently, I have a couple of projects I’m working on sitting on my bench. I’m hoping soon to have posts/tutorials up about my latest creations. The only thing holding me up on those projects right now is getting my 3d print designs down, so I have a cool looking finished project. I’m hoping to have some cool projects posted in the next year to help cosplayers bring their costumes to the next level!