Looking at controller options for hardware sandbox projects

I’ve had several small boards with physical pin access sitting around at home for some time. I’m now looking more closely at what I’ve got and where I can go to start some hardware based work.

I have Raspberry PI boards (a couple RPi 3 B+ and a couple of RPi 2 B). I also have a couple of Arduino AVR controller based boards hanging somewhere.

Looking out at the general market for these things, the RPi, Arduino and BeagleBoard seem to be the readily available options (and pretty affordable for toy projects and prototypes).

The Arduino line gets the closest to the metal and is more self-contained (no sd cards, all on chip flash) than the ARM based options (RPi and BeagleBoard). The ARM chips are more capable.

The prices split out rather strangely as RPi zero boards come in around $5.00 in unit quantities while the lower end Arduno boards (the mini seems most interesting) with prices at ten pieces of under $4.00 each for clone boards. This leaves the powerful ARM based boards at nearly the same price point as the much simpler AVR boards (at least for the bare board).

I expect that ARM based controllers will be programmed in C or C++ using provided libraries/drivers for access to the lower level functions. For the AVR controllers, I’m looking at either C or assembler language as their local resources are extremely limited by modern standards.

The Arduino cards seem to contain ATmega328P, ATmega2560 and ATmega32U4 controllers (and older ones with ATmega168s. All have the same instruction set but different sets of I/O pins and on-chip peripherals. The 328 parts seem to be the most common (and are available in 28 pin DIP packages making them suitable for very compact and low cost final implementations.

I’ve grabbed the data sheets and instruction set reference. Over the next few weeks I’ll take a closer look at development tools and likely begin playing with a few things. It has been a while since I’ve gotten my hands dirty this close to the metal…

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.