Embedded Programming
A curated list of embedded programming and microcontroller resources, suitable for STEM sites—from beginner boards like Arduino and micro:bit to advanced tools.
November 15, 2025
Getting Started with Embedded Programming
- What is Arduino?: Official introduction to the Arduino platform, explaining what boards are, how they work, and typical projects.
https://www.arduino.cc/en/Guide/Introduction - What is the BBC micro:bit?: Overview of the micro:bit board and what students can do with it, including simple code examples.
https://microbit.org/guide/ - Raspberry Pi Pico – Getting Started: Official guide to getting started with the Raspberry Pi Pico microcontroller board.
https://www.raspberrypi.com/documentation/microcontrollers/raspberry-pi-pico.html
Boards & Platforms for Education
- Arduino Uno: Classic beginner-friendly microcontroller board widely used in schools and maker spaces.
https://store.arduino.cc/products/arduino-uno-rev3 - BBC micro:bit: Small, friendly microcontroller board designed for education, with built-in LEDs, buttons, and sensors.
https://microbit.org/ - Adafruit Circuit Playground Express: All-in-one board with built-in sensors, LEDs, and buttons, designed for education and MakeCode/CircuitPython.
https://www.adafruit.com/product/3333 - Raspberry Pi Pico: Low-cost microcontroller board based on the RP2040 chip, good for both C/C++ and MicroPython.
https://www.raspberrypi.com/products/raspberry-pi-pico/
Programming Environments & Languages
- Arduino IDE: Official Arduino programming environment, used to write and upload code to many Arduino boards.
https://www.arduino.cc/en/software - PlatformIO: Cross-platform embedded development ecosystem (works with VS Code) supporting many boards and frameworks.
https://platformio.org - MicroPython: A lean version of Python that runs directly on many microcontrollers, including micro:bit and Pico.
https://micropython.org - Thonny IDE: Beginner-friendly Python IDE commonly used to program MicroPython boards like the Pico.
https://thonny.org - Mu Editor: A simple code editor for kids and beginners that supports MicroPython and CircuitPython.
https://codewith.mu
Datasheets & Technical Reference
- Microchip AVR Microcontrollers: Product pages and datasheets for classic AVR chips used on many Arduino boards.
https://www.microchip.com/en-us/products/microcontrollers-and-microprocessors/8-bit-mcus - STMicroelectronics STM32: ARM Cortex-M based microcontroller families often used in more advanced boards.
https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html - Arm Cortex-M Documentation: Architecture and reference documentation for Cortex-M microcontroller cores.
https://developer.arm.com/Processors/Cortex-M
Communication Protocols (UART, I²C, SPI)
- Serial Communication Basics (SparkFun): Beginner tutorial on UART serial communication, how it works, and how to use it on microcontrollers.
https://learn.sparkfun.com/tutorials/serial-communication - I2C Tutorial (SparkFun): Explains the I²C protocol and how to connect multiple sensors and devices on two wires.
https://learn.sparkfun.com/tutorials/i2c - SPI Tutorial (SparkFun): Overview of the SPI protocol and when to use it compared to I²C and UART.
https://learn.sparkfun.com/tutorials/serial-peripheral-interface-spi
Sensors, Actuators & Example Projects
- Adafruit Learning System: Project-based tutorials that combine sensors, LEDs, motors, and microcontrollers.
https://learn.adafruit.com - SparkFun Learning Portal: Hands-on guides for sensors, actuators, and embedded projects.
https://learn.sparkfun.com - micro:bit Projects: Collection of project ideas and step-by-step guides for the BBC micro:bit.
https://microbit.org/projects/
Debugging & Tools
- Saleae Logic Analyzers: User-friendly logic analyzers for visualizing digital signals and debugging protocols like I²C/SPI.
https://www.saleae.com - SEGGER J-Link Debug Probes: Widely-used SWD/JTAG debug probes for programming and debugging ARM-based microcontrollers.
https://www.segger.com/products/debug-probes/j-link/ - Introduction to Oscilloscopes (SparkFun): Beginner tutorial on what an oscilloscope is and how it can help debug embedded circuits.
https://learn.sparkfun.com/tutorials/how-to-use-an-oscilloscope
Safety & Good Practices
- ESD Basics (Electrostatic Discharge): Explains what electrostatic discharge is and how to protect sensitive electronics from damage.
https://www.electronics-notes.com/articles/electromagnetic_protection/esd-electrostatic-discharge/what-is-esd-basics-tutorial.php - Powering Your Projects Safely: Guidelines on using batteries, USB power, and regulators to safely power microcontroller projects.
https://learn.adafruit.com/all-about-power