Hobby MCU Notes
There are a lot of options for Arduino-like systems. This is just a collection of notes about what's out there.
The prices below reflect the bargain basement price (generally buying direct from China and waiting for weeks).
|Arduino Uno, Mega, etc||AVR||Arduino||$2+||Vanilla Arduino. Very popular.|
|Arduino Due, Zero, etc||ARM Cortex-M||Arduino||$13||Faster and more memory than AVR based Arduino.|
|Maple||ARM Cortex-M3||Arduino||$12||I don't know much about these.|
|"Blue Pill"||ARM Cortex-M3||Arduino||$2||Nameless but popular "STM32duino" option.|
|Teensy 3.x||ARM Cortex-M4||Arduino||$20+||Tiny Arduino competitor.|
|NodeMCU||Tensilica Xtensa||NodeMCU or Arduino||$4||Built-in WIFI. Native BSP is Lua-based scripting.|
|Rasberry Pi||ARM Cortex-A53||Linux||$35||This is basically just a small computer.|
|Orange Pi||ARM Cortex-A7||Linux||$10||Low cost Raspberry Pi clone.|
AVR-based Arduinos are very easy to get up to speed on. The provided IDE has a lot of examples built into it. Note: Chinese Arduino copies usually use the CH34x USB chipset which requires a special driver on OSX.
There are a lot of Arduino variants. This spec table is handy for comparing them. The most common variants are listed below.
|Uno||16 MHz||2 kB||32 kB||Basic model.|
|Mega||16 MHz||8 kB||256 kB||More of everything.|
|Lily Pad||8 MHz||2 kB||32 kB||Sewable I/O pads, small form factor.|
|Nano||16 MHz||2 kB||32 kB||Very small.|
The Uno and Mega boards can accept a wide variety of "shields" (peripheral boards). These are rarely cost effective but can simplify wiring significantly if there's a shield that does what you want.
The ARM-based Arduino's are unique in that they only tolerate 3.3V I/O instead of 5V. They don't seem very popular. They're expensive and the advanced users that should be drawn to them have a lot of other options.
|Due||Cortex-M3 @ 84 MHz||96 kB||512 kB||Most powerful Arduino-branded option.|
|Zero||Cortex-M0 @ 48 MHz||32 kB||256 kB||Intended for low power use cases.|
This is a handy little device. It's about the same size as the Arduino Nano and can be had for about $2 shipped. Among the features is a 72 MHz Cortex-M3, 20 kB of RAM, and 64 kB of flash. You generally need a JTAG device to load a bootloader onto them, but after that you can use the Arduino IDE to download code.
Unlike the Arduino ARM boards this device has many 5V tolerant pins. This can make interfacing to peripherals easier.
Technically these are ESP2866 development boards and NodeMCU refers to the Lua-based software platform. These are the cheapest and probably the simplest way to get sensor data onto a regular wifi network.