If there’s one good thing to be said about the chip shortage of 2020-2023 (and counting!) it’s that a number of us were forced out of our ruts, and pushed to explore parts that we never would have otherwise. Or maybe it’s just me.
Back in the old times, I used to be a die-hard Atmel AVR fan for small projects, and an STM32 fan for anything larger. And I’ll freely admit, I got stuck in my ways. The incredible abundance of dev boards in the $2 range also helped keep me lazy. I had my thing, and I was fine sticking with it, admittedly due to the low price of those little blue pills.
And then came the drought, and like everyone else, my stockpile of microcontrollers started to dwindle. Replacements at $9 just weren’t an option, so I started looking around. And it’s with no small bit of shame that I’ll admit that I hadn’t been keeping up with the changes as much as I should have. Nowadays, it’s all ESP32s and RP2040s over here, and granted there’s a bit of a price bump, but the performance is there in abundance. But I can’t help feeling like I’m a few years back of the cutting edge.
So when I see work like what [CNLohr] and [Bitluni] are doing with the ultra-cheap CH32V003 microcontrollers, it makes me think that I need to start filling in gaps in my comfortable working-set of chips again. But how the heck am I supposed to keep up? And how do you? It took a global pandemic and silicon drought to force me out of my comfort zone last time. Can the simple allure of dirt-cheap chips get me out? We’ll see!
35 thoughts on “The New Hotness”
Unless you’re doing something at a large scale the price difference between an “ultra-cheap” chip vs something slightly pricier you already know how to use isn’t very important. Unless you’re getting loads of them, either for mass production or for some sort of project involving huge networks of many MCUs, then 50p vs £2.50 (typical AVR chip in DIPor SOIC format) isn’t much really.
And realistically, for most of the sort of project we see here the difference is going to be erased even further by purchasing in development board format.
Yeah, I’ve always had a draw to the ‘most performance for least power’ from the ARM1 through 8051 to custom processors and now the Chinese cent chips.
“If there’s one good thing to be said about the chip shortage of 2020-2023” is that I’ve finally given up career in embedded programming. Doing corporate C# might be depressing and mind-numbing but it pays almost 5 times as much as dealing about with interfaces, pins, ports and registers (and with much less responsibility!). With better paycheck I could finally buy a brand new Miata instead of maintaining a rusted KIA from 2003.
That’s kinda depressing to hear by a student aspiring to be an embedded engineer. But what can we do, the demand of the market changes.
Well, I could have chosen to be a lawyer, or an electronics designer. My paycheque reflects my choice, and I have absolutely no regrets.
Every choice has its rewards and its price…
I’m a hardware design engineer (formerly a firmware engineer), and I LOVE working with pins, ports, and plug-ins. I have to work closely with the guy writing the firmware, and vice versa (and it helps immensely having worked both sides). Sometimes its the smart software design that makes the product sing, and sometimes its the creative hardware design… you never know from project to project. But it’s what keeps a ‘vette in the garage :-p
For me personally, the time I save not having to get into a whole new microcontroller “universe” tends to outweigh the savings on purchase prices. But I only build one-off things that rarely require high performance.
Thankfully I am in an industry that is not overly price sensitive and so I have a lot of freedom in the parts I select. What is new, “sexy”, and inexpensive get a look, but our component criteria is long term availability (10+ years), reliability (devices operate 24/7/365 for 10-15 years+), and support (short and long term).
Just wondering how you evaluate long term support potential here in 2023, when it seemed a number of vendors, caught with their supposed long term parts out of stock, 2020-2022, just kinda shrugged and said too bad.
There’s no shame sticking with a tool you’ve mastered. Thankfully the chip shortage eases and unless one needs a very specific part number (STM32F103), there are cheaper options with plenty of stock from the same vendor (STM32C).
Nothing wrong with exploring new architectures, if that’s what one enjoys. But if the MCU is a tool to build bigger things, and the familiar choice meets all requirements, I see no need to switch horses.
As for the new hotness, for every ESP32 and RP2040 there are past darlings like Padauk, Propeller, PSoC, MSP430 (my guilty pleasure), etc, that “nobody uses anymore”.
Man its been a LOOOOOOOng time since I hear that name “Propeller” LOL..
In defense of the rp2040 – in the end it’s a cortex m0+. So effort learning how that works can at least partially translate to all the other cortex m families out there. ESP32 is kind of on an island, but still really fun.
I also still like the MSP430.
I think, if you look hard enough, you’ll still find a few Padauk products in their intended applications. The part where you can bootstrap them into more than just an LED roll’s the neat low volume application bit.
What on Earth do you have pictured glowing inside of the clear material? There is no caption or label.
I never thought I would get back into microcontrollers but I found ESPhome thru homeassistant which made it very easy and attractive, especially with OTA over the air updates. I use the platform to create projects that have little or nothing to do with home automation and that don’t ultimately need wireless of any kind. I may never go back to the ways of straight programming but we’ll see. I do like reading about and learning about the other kinds of chips out there. For now I will stick with the ease and convenience of this very capable ecosystem. OTA programming monitoring and updating is something I don’t want to go without now. Spoiled
The pic is from an article earlier in the week about a cheap and compact Nixie driver circuit.
I think the whole “sharpen the axe or cut the tree” thing is a trick question. Ideally, your axe is always sharp, because you have abundant spare time and really enjoy sharpening your axe when not cutting trees.
To translate that to normal language, your work should only take a small fraction of the time, so that you have time to explore new things and upgrade your skills in the remaining time. If it doesn’t, then you have a scheduling problem, and possibly a resource allocation problem. Anybody who did any scheduling theory knows that you *never* want to have 100% resource allocation.
“If there’s one good thing to be said about the chip shortage of 2020-2023 (and counting!) it’s that a number of us were forced out of our ruts, and pushed to explore parts that we never would have otherwise. Or maybe it’s just me.”
Plus one’s design skills aka how many different ways to do the same thing.
Off topic, but that title image is my favorite Joe Kim artwork for HaD.
If anything “good” is coming from chipageddon, then it is the realization that “JIT” is very fragile and can fail when two or more negative factors combine together. Combined with not wanting to be dependent on pretty much socialistic governments which have their own agenda and who don’t care whether the rest of the world collapses (beyond to having a market to dump their stuff on and extract money from). Result is multiple chip factories being built both in (and around?) the US and in Europe. On that scale, what a bunch of hackers and hobbyists do is pretty much peanuts (that is, if it even registers on the same scale at all).
The socialistic/communistic countries have an incentive to create chip “shortages” so that they may demand a higher price. When we grow dependent upon our “suppliers” who do not have our “morals” then we end up supporting communist countries that are invading their Democratic neighbors.
And our “American” companies have no incentive to fix these issues as they profit reselling the high priced components too.
Its hard to justify our hobby when free people are dying.
Using the fact that people are dying, stopped working on me – when my mom tried to use starving kids in Africa to make me eat more breakfast cereal.
Ok, I guess you are OK with slave labor camps producing your cheap products. All well and good until you are the one in the camp.
You all came here with your Google alerts for stories containing phrases like “chip shortage” that you want to turn into a swamp.
Keep worshipping that boot if you think it will protect you from it. Except that’s never worked.
Folks, the same people who weave this populist kibble are -exactly- the same voices who previously argued -for- outsourcing (because “Americans don’t want to work” and “if it hurts the unions, that’s good enough for me)
Also, “socialism” doesn’t mean what you think it means. The word you were looking for was “anti-democratic”, or perhaps “autocratic”.
Thank you. I dunno how jingoism makes it into a new technology thread… but I guess I just underestimate the power of willfull ignorance. “socialistic/communistic”… “our morals”… christ. Turn on CNN, for just a little. Buy a mirror.
I share the love for the little 12F PICs. But I’m a sucker for ready-made cheap dev boards and near bulletproof development systems, like using ESP dev boards in the Arduino environments. Wifi capable projects for like $4 a board.
Welcome to the new world order where everyone is a victim of some kind preferably of the faceless kind.
It’s worse than that.
Their victimhood-as-a-culture is meant to gaslight, giving the powerful even more impunity -and- crown out stories of injustice against the powerless.
You should look up the actual definitions of some of those longer words, my dude, lest you look like an idiot on the Internet.
i still have a dwindling pile of 8-pin PIC12s in the basement. i love them! they’re so limited but within those limits they’re extremely capable. all the peripherals are handy. if you have some task that only needs 6 I/O, if you’ve ever wished for like a 555 with a timer-counter built in, it’s just perfect. but the downside to an 8-pin device is you don’t have any spare pins, you have to use the programming pins for function too. so it’s hard to re-program them, i’ve done a lot of different stupid tricks to get them to reprogram and it just seems kind of frustrating to even think about these days.
i’ve always had kind of a dim view on the atmel chips…first, i hate learning something new. :) second, when i started to, i found their peripherals aren’t as good imo. but mostly, atmel has become synonymous with arduino in my mind and that’s just not my personality…i don’t like convenient SDKs that mask things. i don’t like picking up a project from someone else and not being able to tell what’s going on because they built it against a different SDK than the one i have.
i loved the stm32 when i first met it in the official “value line discovery” $25 board with USB for programming & debugging. so powerful! and it really feels like an embedded chip with all the timer and UART peripherals and so on. but $25 is so expensive. i got some blue pills because they’re so cheap but i haven’t overcome the hurdle of getting oriented to them, and honestly i’m mad that fixing a bad resistor is step 1. but what’s really stopping me is that i want convenient usb programmability and achieving that within my (admittedly arbitrary) preferences and time constraints simply isn’t happening. somehow, playing with a bunch of jumper wires or a cable insertion every time i want to reprogram it just seems too onerous for the kind of relatively complicated software i aspire to on these ARM chips.
so i’m actually really excited about rp2040! it’s almost as cheap as the blue pill but it’s “official”. and the built-in USB boot rom is a game changer from my perspective. anyways, i am finally playing with one. i found out, you can program it directly to SRAM instead of to flash, and it reboots into the SRAM. and then the next time it reboots, it goes straight into the bootloader again. you don’t need to plug/unplug the USB cable while holding down a little button. that kind of streamlining of the iterative debug process for embedded devices is fantastic! and i made my first program, an LED blinker that relies on the watchdog timer to reboot it after 8 seconds. so i can upload it, it runs for 8 seconds, and then it re-appears as a USB-programmable device again. wow!!
anyways i’m a real to-the-metal guy (i made it this far without even downloading the raspberry SDK for reference), and imo there’s a real shortage of that sort of resource for the rp2040. so here’s my website where i’m putting my work:
“but what’s really stopping me is that i want convenient usb programmability and achieving that within my (admittedly arbitrary) preferences and time constraints simply isn’t happening”
I had to patch the bootloader of the bluepill to wait 10s, otherwise the flasher would not catch it.
Thanks HaD team for all you do.
Might be worth looking at HTTP referrer logs to see what attracted these um guests?
might be time to intentionally mis-spell “current event phrases” (like chip shortages, COVID, even “electric car” or “climate”) so as to seem leas visible to their Google Alerts.
By the time I first programmed my parallax basic stamp-1, in 2001, I was already behind the times… Yet the IR relay network I created with those things still has an amazing ability to bounce message signals around corners because of tinkering with the baud rates and discovered using 300 baud somehow changed the performance of packet reception allowing indirect communication between the nodes. 600 baud and up everything was the same…had to be line of sight…but at 300 it’s like radio indoors. I only went that low because I was interested in watching the visible light LED that was parallel to the IR LED blinking the ASCII characters in better resolution, lol .
Just gimme a chip.
Something will develop.
My old parallax basic stamp… sigh….
Please be kind and respectful to help make the comments section excellent. (Comment Policy)