r/arduino•
Aceticon

Advanced Hobbyist video idea question.

Hi all,

I'm thinking of doing a series of "Advanced Arduino Hobbyist" videos about designing circuits around microcontrollers at an advanced hobbyist level, including making custom boards (or using perfboards), using different microcontroller architectures, using more advanced IDEs for programming and even making one's own tools, whilst still being able to use whatever parts of the Arduino architecture goodness which are useful for you.

I want to see if there's actually interest for such videos - i.e. how many people in the community are at the stage and have the want to do advanced or more permanent circuits that go beyond what can be done within a fully Arduino environment, for example to use different microcontrollers than the more traditional ATmegas (for extra processing power to use in things like AI and sound synthesis, because of their extra capabilities or maybe to do something different), to make devices which are smaller in size, because the software that you need to develop is quite complex and hard to make in Arduino IDE alone, to have a device be battery powered without quickly draining the batteries, because one wants to make several of the same device and using parts is way cheaper than using multiple full hobbyist boards, because you want to try something different, because you just like to know how to do it from the ground up yourself (guilty!) and so forth.

These videos are meant to be done in a "teach a person to fish" style that teaches people some foundational stuff and how to figure things out when they're trying to design their own circuits, rather than being a bunch of videos with "circuit recipes" - I want to share with others what I've learned about figuring out what and how to do something, not tell them what to do, my expectation being that others can use it to more easily be able to freely go their own way, including to do things I myself haven't learned how to do.

In the picture you can see examples of the kind of level I'm talking about:

  • On the left it's a normal Arduino Uno board that receives data via Bluetooth to control a motor. This is a technology testbed for a remote-controlled car which is to be controlled from a tablet. The interesting bit in there is that the H-Bridge through which the Arduino can control the speed of the motor, both forward and in reverse, is a homemade board, but beyond that it's a pretty standard hobbyist Arduino circuit.
  • On the middle is a Battery Weather Station. Same microcontroller as the Arduino Uno (an ATmega328p) but it's by itself on a perfboard with only the needed stuff rather than a Uno board with all the bells and whistles: it's a simpler circuit (though a tiny bit more complicated to load the program into it), smaller (could've been much smaller if done a proper circuit board and SMD components), cheaper and, most importantly, those 3xAAA batteries can last about 2 years whilst merely the power led in the Arduino Uno board would kill them in a few weeks. It's still Arduino software inside, talking to common periphal boards that one uses for Arduino projects and using software libraries made on top of Arduino, but the bits of Arduino that just got on the way or were not needed (the board, the bootloader, USB support) are not there, mostly to save on power consumption so that the batteries last a long time.
  • On the right it's a test baseboard for an STM32 processor (the red board, the stuff behind is something else, for testing a DAC), specifically an STMF042F6P6 in a version which is a 20 pin SMD chip (the smallest of all). The chip has USB support built-in and is a 32 bit ARM architecture microcontroller, so something quite different from that ATmega328p in the Uno. I just bought the chip and soldered it to a TSSOP20 adaptor board along with the needed caps (smd ones, in what looks like blobs of solder on both sides) and stuff, and it's fully functional including the USB and currently loaded with a program that will make your mouse mad if you connect it to a PC ;). Interestingly enough there is Arduino for this family of chips (though I myself will have to create a "variant" configuration matching this specific chip) in the form of the stm32duino Arduino core.

For the videos the idea is to start with an overview of what is Arduino as an architecture (i.e. cores, bootloader, hardware, IDE) then going towards how you can keep on using some parts of it whilst using something else for other bits, with videos about using more professional programmer-style IDEs (for example PlatformIO + Visual Studio Code), using Arduino without an Arduino board (aka custom boards), using peripherals without buying an "arduino board" with it, using other microcontrollers and microcontroller architectures (ATtiny, ESP8266/32, SMD32) and the kind of stuff one needs to learn around that (power supply and regulation, use of decoupling capacitors, chip programmers and so on), most of which turns out to be a lot simpler than it might seem at first.

The idea is to stick to digital circuits and what people can do with microcontrollers and Arduino, only touch the analog electronics world were it impacts the digital one (for example, to explain the need and workings of decoupling capacitors, which are what makes mosts boards with microcontrollers seem a complex mess of capacitors even though their use is quite straightforward).

Whilst I'm thinking mostly hardware, I might also go into software if people are interested, though that is quite a big domain if one goes into things like the Android App in the Tablet to control the remote controlled car which will come from that project on the left or server-side software with which your ESP hardware can communicate.

Whilst I have a degree as an EE, it was taken before embedded processors were a thing and I've never actually worked as an EE (rather I've worked as a software developer), and since about a year I've rediscovered the fun in electronics and been a hobbyist doing Arduino, all the while having the benefit of all that fundational knowledge in electronics from my degree to help me understand and learn faster. My hope is that, given my background, I will be able to explain the building blocks and share the principles I've learned as hobbyist who does understand some engineering concerns and the reasons for some basic building blocks on the hardware and software side - in other words, advanced knowledge whilst still a hobbyist.

So how does this sound?

Example projects, left to right from less to more advanced.

Posted Feb 11, 2021, 1:54 PM UTC

57
pacmanic•

There are literally thousands of Arduino vids of youtube. The question you want to ask yourself is how will you market a new yourube channel? Spamming your vids here and other reddit subs is generally not welcome. Relying in people finding it on yt is hit or miss.

6
AceticonOP•

I'm aiming at that middle area I felt was lacking that links the working in a typical Arduino environment (were you get boards for everything and link them in a breadboard) to the one where people are making their own boards with the same chips (or even other chips) and putting together basic building blocks rather than modules in boards - you can find lots of videos on the entry side and then posts in electronics forums on bubbles on the other side (say, people working with AVR processors or people working with ESPs or even people working in the Arduino cores themselves) but I haven't found anything linking them and providing a big picture view to help people navigate to and between those little bubbles of expert knowledge.

Also looking at boards out there being sold for stupidly simply electronic submodules (AMS1117 regulator boards being especially silly) I suspect there's a whole lot of people only hindered by ignorance rather than inability who could benefit from, say, the knowledge of how to choose and use a Voltage Regulator (with parts costing all of $.01) rather than buying a $2 board.

There's quite the chasm between the "Here's how to control a motor with an Arduino and an H-Bridge board" and the actual "how to go about designing a custom circuit for remote control of a battery powered remote-controlled car" even though that Arduino Board + H-Bridge board contain most of the stuff needed (and a lot of other stuff which is not needed and even hinders your objective) but people don't actually know which are they, how do they work and how to choose the variants of those "submodules" with right qualities for one's project and integrating them directly into one's design.

You're absolutely right about the difficulty in getting the people that would be interested in and benefit from such videos to find them and I absolutely do not want to spam videos on subs. Frankly I'm a bit at a loss myself on how to go about finding an audience without being a pestering asshole, hence why I started by making this post to figure out if there are even people who would like this kind of thing (i.e. Market Research;)) and maybe getting feedback from others on the whole thing.

4
Barman1954•

This is a very long text. Maybe it’s an idea to produce one episode? Something short but advanced. That could give a good impression.

It’s not only the content what counts. I sometimes see interesting tutorial/movies which are difficult to follow because of speed/mumbling/no detailshots/...

5
praus_24•

Although I would enjoy a complete series, I agree with you that it would be best to begin with a trial episode to test the waters.

I also agree that the speed of some videos makes it difficult to follow along, especially if the presenter is taking for granted that I have all of the necessary preliminary knowledge to understand him. While I understand that the presenter can annoy the advanced audience members by explaining in too much detail, in such videos I always find it helpful for the presenter to say something akin to "If you didn't understand any of that, please check out *insert helpful website link* in the description".

3
AceticonOP•

Yeah, from trying to help out here in r/Arduino and also from the other end of my knowledge were I can see out there things which are well beyond what I know, I can see there is a huge range of knowledge all the way from people that have little understanding of even the basics like Voltage and Current all the way to the other extreme of people who are professionally designing consumer digital devices for mass production and whose main concerns are things like Electromagnetic Emissions, shaving cents out of the production price per unit and reliable mass supply of parts for a 5-year lifecycle.

Looking around in youtube I see a lot of entry-level videos often providing recipes but without explaining why certain things are there or certain values are chosen over others or about very specific parts of the process without the big picture (say, videos about using voltage regulators but not really showing were do they fit in all this) - i.e. they lack the structural glue (or, should I say, "conducting wire") that takes people from the broader Arduino environment to what do I need or not, why, when and how, which is the kind of thing I missed myself at a certain stage of learning, hence I think I can help with that.

I'm not so sure how I can just have an single introductory video (as you see, even me merely explaining the concept in my OP is a wall of text), mostly because teaching people how and were to find that which they need to figure out things themselves is quite a bit longer than just giving them a recipe to follow.

I suppose maybe something taking people from what's Arduino as commonly know (i.e. an Arduino board connected to a breadboard and other boards) all the way to how they can go about designing their own custom boards with exactly the same chip as an Arduino Uno has (the ATmega328p) could be it, although it will have to be a shallow in covering each of ISP programming, bootloaders, arduino cores, using datasheets and application notes, power supply and decoupling capacitors - that circuit in the middle picture is reasonably simple but the "how to design your own" does involve learning a lot of elements in many different domains.

I'll see what I can put together.

2
JimMerkle•

I think you are about the 1,000th person to think about this and make a post. This is the easy part. Making a quality video is more difficult, and requires yet another learning curve.
Have you checked out https://www.udemy.com/topic/arduino/ ?
You can even make a little money with your courses...

Before Covid-19m, I would teach different classes, similar to what you are talking about, at the Dallas Makerspace. I have found that if I document my work, in a manner that allows easy sharing via web pages, it make teaching the subject much easier and allows folks to review the documentation again at a later time by saving bookmarks to the pages. I see you are using an SSD1306 OLED I2C display. Here's a webpage I did for that:
http://merkles.com/MediaWiki/index.php?title=SSD1306_128x64_I2C_OLED_Display

I would encourage you to document your work. It can then be used to teach others, or just help you retain details you encountered during your project. Sometimes, you can use the webpages just to hold details concerning a topic. As an example, I have played with the 16 character x 2 line LCD displays for years, but I keep running into questions about them as well as good documentation by other people. I've been saving this to a page:
http://merkles.com/MediaWiki/index.php?title=1602_LCD_using_I2C_Adapter

Good luck to you...

3
AceticonOP•

Absolutely and that's what I've been doing, having learned the importance of documenting what's done and the choices behind it during my career in software development, were even for oneself (later when I have to pick up that application again to fix bugs or implement new requirements) it turns out to save a LOT of headaches.

That said the part I'm aiming at covering is not the "how to use an Oled display with an SSD1306 controller" it's the "how to figure out how such things work and what you can and cannot do with them".

So for example in the case of that display I found out it continuously drew 4mA which would've drained the batteries much faster and, knowing how Mosfets work I came up with a way to cut power to it when the weather station goes to sleep, done together with having a separate, Software, I2C on Arduino serving only that display which I switch off on going to sleep and later restart when the Weather Station wakes up.

I could've tried to integrate the display and controller myself to have access to other ways of switching it off (which that board did not expose to the outside) but I researched it and it would've been a much bigger hassle than doing it as I did it.

The point being that the very same principles I used to figure out that OLED's power consumption, how it would make the batteries last less than 2 weeks rather than 2 YEARS, researching and evaluating options for cutting it down and choosing to use a Mosfet and some software to do so, can be used for entirely different things, not just that display with that controller.

I'm not aiming at teaching the specifics of how to use [insert specific board or combination of boards], I'm aiming at teaching principles and tools to go about figuring it out yourself for your own circuits: give tools to people for them to put in their toolbox and then get out of their way.

2