Integrated circuits, chipsets, memory modules, and all kinds of other transistor-based technology continues to get smaller, cheaper, and more energy efficient as time moves on. Not only are the components themselves smaller, but their supporting infrastructure is as well. Computers like the Raspberry Pi are about the size of a credit card and have computing power on the order of full-sized PCs from a few decades ago. The Arduino is no exception to this trend, either, and this new dev board called the Epi 32U4 might be the smallest ATmega platform we’ve seen so far.
As the name suggests, the board is based around the ATmega32U4 which is somewhat unique among Atmel chips in that it includes support for USB within the chip itself rather than relying on external translating circuitry. This makes it an excellent choice for any project which involves sending keyboard, mouse, or other peripheral information to a computer. This goes a few steps further with eliminating “bloat” compared to other boards, too — there’s no on-board voltage regulator, and just a single LEDs on pin 13.
One of the other features this board boasts over other small form factor boards is on-board USB-C, which is definitely a perk as more and more devices switch away from the various forms of older USB-type plugs. The project’s specifications are also available on this GitHub page for anyone that wants to produce their own. And, if you don’t have a 32U4 on hand and still want to build a keyboard project, it’s possible to get some other Arduinos to support these features but it’ll take a little more work.
Thanks to [Rasmus L] for the tip!
21 thoughts on “A Mega-Tiny Arduino”
It’s cute. Not breadboard-friendly though, since the spacing of the crenellated pins is 1.27mm (aka 0.05 in). That aside, it looks like a decent option if you’re staying with the ATMega rather than moving on to one of the 32-bit options.
They make 1.27mm perfboard, and 1.27mm ribbon cable one can buy terminated with Mini-PV terminals. Not awesome, but it’s possible to get it onto a breadboard in a pickle.
This seems like an option for after you’ve prototyped it on a breadboard and need to make it cleaner
OK, hear me out. 1.27 is just half of a breadboard pitch, so put it together with 4 sets of headers and have the even numbered pins point down and the odds point up. Then you get TWO breadboards. It’s 3D chess.
Ha, this is actually very clever!
seems like you would be better off with a pro micro for prototyping, and then use this one when you have a board made. of course if you can do that you can source bare microcontrollers and remove an unnecessary complexity.
Thanks for removing the reference to “hemispherical pins and screw terminals”, that was odd!
I think the right term for that is castellations, btw.
I think you’re right. But it’s the crenellations on the castle that they are named for. So I was meta-right :)
Appreciate the small package but that USB-C is clinging onto a toothpick amount of FR4 and looks very fragile.
It’s surprisingly durable. i can’t break the port off by hand
If peeps want these gadgets, keep a look out on Crowd Supply ….. and they’re gonna be popular ….. I’m betting sales in order of $50K in the first round.
8-bit AVR in 2023? Thanks I’ll pass.
Cortex M0 is far better option.
Sometimes you don’t need a 32 bit processor with hundreds of kb of flash/ram and hundreds of MHz to do something relatively simple at a very low power draw.
Not sure about that… comparing the ATMEGA32U4 datasheet values to the STM32G0 (nitpick my picks if you like), the M0+ beats it on power by a mile. I’ve also learned, from doing some extremely low-power designs, that active current vs sleep in combination with wakeup time is a huge deal. Then you get into how much power you can draw instantaneously from your power source and start worrying about current vs energy. Other than maybe the MSP430, a lot of the older chip designs just don’t hold up to the new hotness.
The problem is 8 bit parts are mostly 5V tolerant, and that means an ancient CMOS process. Computers stopped being 5V somewhere around the Intel 386/486 era. Big transistors use a lot of power to do work, if you copied the atmega architecture to lets say, a 7nm process, current consumption would be orders of magnitude less. In fact, with just a modern (but not top of the line) process, you can get the much more complex (and more powerfull) 32 bit arm/riscV architectures running at a lower power. And even with the higher transistors count, the silicon area is a lot less, so the parts end up cheaper.
The only reason to keep using the atmegas and old PICs is legacy use, for all those millions of boards running them, and the mature and easily available IDE software, but that currently is stopping to be an excuse. Back in 2014 when I was doing lots of projects, running anything other than a atmega328 (arduino uno) or a atmega2560 (arduino mega) in the Arduino IDE was hit or miss, even the aforementioned 32u4 (from the arduino leonardo I loved so much) had its quirks, so using 32 bitser’s was a long fight waiting for yuo, or using the official development environment with the proper learning curve and no easy libraries to do the hard work. Today it’s not like that anymore.
There are a few applications where the old processors are better suited. One is when you have to interface with 5V peripherals, or things that need a lot of drive current; an older part like the ATMega can do those things directly with its outputs, but a more modern part will need a buffer or level shifter. The other is when you’re trying to emulate the precise timing of some old piece of hardware; that’s easy to do on older processors because you can just count the cycles, but harder on a more modern one because they use caches that make execution speed non-constant.
i agree. with 32 bit mcus so cheap now, i dont really see any reason to keep using 8-bit parts. the only utility i see is in controller/mouse/keyboard projects.
diminutive mega32u4 dev boards have been part of my parts inventory for several years now. for awhile i was buying them by the dozen. granted they had conveniences like regulators and breadboardable headers, and i have ones with both mini and mico usb plugs. usb-c is not mature enough to use in projects, and i think they are overrated. this one seems to be intended to be soldered to a project, i think if i was going through the trouble of having a board made, i would just source the microcontrollers instead. this does kind of have utility in controller conversions and other circuit bending applications. granted if it properly employs the pd capabilities then they might find use. i think im ready to move on to a 32 bit chip though.
It’s still bigger than the TinyDuino though??
After the price of ATmega32U4 devices went through the Trump/Covid multiplication process the whole thing became much less interesting to me.
I find it hard to pay 3 to 5 times for something all if a sudden.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)