I love the ATtiny for hobby projects! The acceptable voltage range means it can run off lithium with no regulator and then the quiescent current is something like 5nA. The battery will practically self-discharge faster than the MC can wear it out. Of course the feature set is limited but for the battery powered "go to sleep until XYZ then do something" use case, it's awesome.
I did a brief search, and it seems that at 1MHz, all of the chips discussed in this discussion so far (ATTiny, MSP430, and STM32) are all 200 uA or less, while _fully active_.
Sleep modes bring that down below 50uA.
So on 2x AA batteries (~3000 mA-hours), it seems like these datasheets are telling me that all these chips can consistently hit 2.5 _YEARS_ of battery life? Or 6.5+ _YEARS_ of sleep-battery life?
I'm surprised at how low power modern microcontrollers are. The power-consumption metrics continue to get better-and-better year over year.
It's interesting tradeoff, because generally the bigger transistor the less quiescent current it has (=lower power when everything is off), but on the other side the bigger transistor the higher uA/MHz consumption
While low-power has been the selling point for MSP430, in practice I understand the shitton of effort poured into making ARM power-efficient has allowed them to surpass MSP430, see e.g. https://www.eembc.org/ulpmark/ulp-cp/scores.php
Several msp430 chips are still available in DIP too, and the new ATtiny's aren't either; it is not an ATtiny advantage.
On the bright side, some SMD packages are still reasonably workable with a soldering iron, like SOIC, and cheap devboards that do little else than breakout into a DIP package are commonplace.
As a kid I remember ordering free MSP430 samples from TI (in DIP format)
SOIC would have been completely inaccessible for me as I mostly relied on breadboards and a radio shack soldering iron with a half-corroded tip that would probably be better suited for plumbing than placing SOICs
This bears repeating every once in a while: surface-mount soldering is not very hard. It's perhaps harder than through-hole, since you don't get the benefit of having the component held mechanically, but not by a lot.
The actual soldering with surface-mount stuff does not mean you have to be like an industrial robot in your precision and gently apply heat to each tiny tiny leg, while also getting the solder in there just in time, all the while holding your breath so you don't blow things away. Not at all.
Surface-mount soldering can be done using way "uglier" techniques than through-hole, where you basically flood the component's legs with solder, heat it enough for it to melt and flow, and then remove the excess. Thanks to the magic of surface tension (and, if you have it, extra flux) the solder will flow to where you want it, all on its own. This kind of technique probably wouldn't cut it for production, where consistency and quality of course are important, but for hobby use it's fine!
There are plenty of YouTube videos showing this off, it can be really really easy. Please don't fear surface-mount soldering. Grab (the cool side of) your iron and join the fun!
As an adult with disposable income surface mount is easy, I have great soldering irons and I order PCBs all the time (used to make them too but it's gotten cheap enough that it's not worth the hassle)
But for a 15 year old with no budget and limited tooling (even flux would have been a luxury), being able to order off a sample form and get something that just worked was invaluable.
I totally agree, they're really great for simple hobby projects! I've mostly used the ATTiny85 and it's easy to understand the datasheet, easy to program, battery efficient and comes in a DIP-8 form factor for easy breadboarding. Compared with something like an STM32 I find it quite fun to work with!
Are you trying to put a microcontroller, a battery, a couple switches, and some LEDs/speakers in an injection-molded, basically disposable, consumer good to sell through McDonalds Happy Meals, Walmart, or AliExpress, and you plan to build hundreds of thousands to hundreds of millions of units? Do you expect to program in assembly, or a custom subset of something C-like that obviously won't include the standard library but might not even include something as fundamental as any values on the call stack for arguments or returns, happily trading a couple weeks of developer frustration if it saves $0.01 per part? No, the ATTiny doesn't really make sense for you....find a Chinese 8051 or Paduk core you can epoxy down chip-on-board style, aiming for the absolute bare minimum of peripherals and costs.
Are you producing some high-value commercial good in small quantities? Do you place a high value on developer productivity, want a generous assortment of peripherals and interrupts including communication and reasonably performant DAC and ADC onboard, a comfortable C library, a UPDI online debug interface, vendor support and thorough documentation in English? The ATTiny may be for you, or maybe you want an MSP430 or Cortex-M0, or maybe you want to spend $1 more per unit (worth 200 man-weeks of developer frustration in the paragraph above!) and get something with 10x the Flash and pin count.
A good comparison of some similar microcontrollers (including the ATtiny 1-series) written in 2017 is here:
We've gotten to the point where a small 32-bit ARM core IC is cheaper than an 8-bit atmel core IC. I've stopped using 8-bit chips entirely in my designs.
I wonder if that's because the lower power consumption of an 8 bit Atmel is now in itself a premium feature consumers think is worth paying for? Definitely useful for remote IoT nodes at the very edge, where battery life really matters.
These are Cortex-M0 and Cortex-M23 parts in manufacturer lines like Atmel SAMD10, Freescale KE04, Nuvoton Mini55, NXP LPC82x, Infineon PSOC4, STmicro STM32G0 and STM32F0, and others. And they often blow the 8-bit parts out of the water in features and performance, usually losing only in battery leakage current/active current consumption.
Technically they're often 16/32-bit ARM Thumb cores, not sure I'd call them 32-bit cores when 90% of the instructions you'll execute are 16 bits, even though the memory space and registers are 32 bits wide. I suppose they feel close enough to developers and users like 32 bit cores as opposed to something that's painfully, obviously, only 8 or 16 bits wide that you can just ignore that technicality...
fwiw: cortex-m parts would be pretty conclusively referred to as 32-bit parts (due to the 32-bit address space/pointers as well as 32-bits being the native word size of the platform).
Other 32 and 64 bit platforms support some kind of "compressed instruction" support, for example 32-bit ARMv7 microprocessors (think early android phones, original raspberry pi, etc.) also support the 16-bit Thumbv2 instruction mode, though thumbv2 support was removed in AArch64/ARMv8.
This is contrasted with a "true" 16-bit platform like msp430, which has 16-bit pointers and native 16-bit words.
RISC-V also has an optional compressed instruction set for both 32- and 64-bit platforms as well.
stm32g0 parts (for example the stm32g030) can often be in the <$1 range, or <$0.50 at decent quantities. I think there is even an stm32c0 line planned at a lower price point.
There are likely lower cost parts, but the REALLY cheap 32 bit parts are moving to RISC-V, see WCH's recent releases.
Edit: as a specific example, the STM32G030F6P6TR is available at $0.74 for one, or $0.45/ea at qty 1000 over on JLCPCB's part list:
The prices listed in the article are for buying a single chip. If you're buying in the thousands by the reel, many suppliers will sell you them for less than half the one-off price.
That's mostly effect of production node. Smaller transistors get you better uA/MHz but lower currents (unless manufacturer just decides to spend more die space on output transistors) and lower running voltage
RV32E seems dead in the water - no value, no movement, no uptake. RV32I* is ... a dumpster fire, and I say this as someone helping shepherd both silicon specification and reusable software components for it. Really basic things like "how interrupts should work" seem to be a matter of personal taste (and the specs are ... awful, like RFC-by-undergrad awful).
By contrast, and for all its faults, AVR is well-defined and stable. This removes a substantial amount of risk from a customer perspective. Once you have attained a basic level of competence in delivering something on AVR (and most major players did this 20 years ago) you can repeat this in a relatively predictable, consistent and low-risk fashion. The same cannot be said of RV32I*, where every new implementation has to be treated as a from-scratch bringup.
Consider the (relative non-)success of AVR32. Not a strict 1:1, but it brought very little to the table in terms of relevance to 8-bit AVR customers, and added a bunch of risk and overhead.
Obviously there are customers for which COGS is king, and they won't be buying AVR. Ditto those where engineering technofetishism is a consideration (gotta motivate your devs, and if new toys are what does it, then you have to factor it into your plans). But there are (clearly, since they keep making money with the product line) others for whom AVR's strengths make good sense.
Switching from AVR to RV32I* would destroy the product line from that perspective. Which is probably not the "opportunity" you were thinking of. 8)
In one of these micro lines moving to RISCV they can provide a growth path that didn't previously exist. I haven't used a PIC in 10 years, but it seems like an ideal candidate to keep the same foot print and peripherals while moving to RV32IC.
The package and peripherals matter a whole lot more than the ISA in a lot of applications. The code is often a while(1) and some interrupt handlers.
It is just too new. Remember unprivileged ISA was 20191213 and privileged ISA was 20211203.
This is mere months ago.
We get some micro-controller families early, and the companies behind them do commit to some level of long term part availability.
Recent code density work (Zc etc) enables higher code density than Thumb2, finally making RISC-V the most dense in 32bit too. Furthermore, there's standardization going on for simpler and more complex interrupt controllers, for ISA profiles, and for platforms (e.g. profiles on hardware that's expected to be there), which will make long term part availability less important, by maximizing re-usability across hardware.
These early hiccups shouldn't discourage anyone with an ISA this new; Effort is being put into the right places.
Microchip/Atmel and the ATtiny - even on the launch of a new sub-series like this - are as safe and conservative a choice as IBM or SAP. The WCH RISC-V chip is very, very high risk. I can't buy them at any of the standard distributors, and your article and the linked CNX article say:
> The board is now available to order on Tindie for $6.90
> More information on the part ... is available in Chinese on the WCH website.
> I got pricing information from a tweet by Patrick Yang, Technical Director of WCH, who claims that the CH32V003 RISC-V microcontroller sells for less than 10 cents.
I can't go to a customer with a quotation based on a tweet.
Obviously the bleeding edge of technology is more competitive in some ways, but not every product launch ought to be on that bleeding edge. I do hope that someday the big vendors launch RISC-V microcontrollers, but they all have a lot of IP in their preexisting ecosystems.