
Microcontroller Tutorials with Code from Scratch
Controllerstech.com is dedicated to teaching STM32, ESP32, and embedded systems through practical, hands-on tutorials. All examples are built from scratch using datasheets and reference manuals, and every project is tested on real hardware to ensure accuracy and reliability. The goal is to help you gain complete control, deep understanding, and the confidence to build real-world embedded applications.
This tutorial explains how to read button inputs on STM32 using LL GPIO and EXTI….
Start your STM32 LL journey with this beginner-friendly LED blinking tutorial. Learn CubeMX configuration, system…
Build a dynamic STM32 W5500 CGI web server that can control LEDs, adjust PWM brightness,…
In this part of the STM32 W5500 Ethernet series, learn how to build a simple…
In this part of the STM32 W5500 series, learn how to turn your STM32 into…
In this tutorial, learn how to build a TCP server on STM32 using the W5500…
In this tutorial, we build a TCP server on the STM32 using the W5500 Ethernet…
Learn how to interface the W5500 Ethernet module with STM32 using SPI. This step-by-step tutorial…
Learn how to configure ESP32 SPI as master, initialize the bus & device, and transmit…
Learn how to read and write data to the MPU6050 accelerometer via I2C on ESP32…
Learn how to interface a PCF8574‑based I2C LCD1602 with ESP32 using ESP‑IDE. Complete wiring guide,…
Learn how to control an ESP32 LED over UART using ESP‑IDF. Covers UART2 setup, cross‑wiring…
This guide teaches you how to set up UART communication on ESP32 using ESP-IDF, including…
In this final ST7920 Arduino tutorial, we build complete UI projects using the U8g2 library….
This tutorial teaches you how to add smooth scrolling text, animations, and page transitions to…
This tutorial covers the essentials of using the DS1307 Real-Time Clock with Arduino. You’ll learn…
Learn how to interface the DS3231 RTC module with Arduino using I2C. This step-by-step tutorial…
A complete MPU6050 Arduino guide covering pinout, I2C wiring, raw accelerometer and gyroscope readings, calibration…
This tutorial explains how to interface the ADXL345 accelerometer with Arduino using I2C. You will…
This tutorial teaches you how to create graphics on the ST7920 LCD using U8g2. You…
A complete beginner-friendly guide to using the ST7920 128×64 LCD with Arduino. Covers wiring in…