A collection of my STM32 projects demonstrating various embedded systems concepts.
Microcontrollers: STM32F103C8T6 (Blue Pill), STM32F4
Development: HAL, Bare-metal, FreeRTOS, CubeMX
IDEs: STM32CubeIDE, Keil
Protocols: UART, I2C, SPI, Ethernet/TCP (Wiznet W5500), MQTT
Peripherals: ADC, DMA, GPIO, Timers, Interrupts, RTC
Sensors: DHT11, DS18B20, MPU6050, LM35, MQ-2, DS3231 RTC
Storage: SD Card (FatFS), W25Q64 Flash
Cloud: ThingSpeak, HiveMQ
π Projects by Category
πΉ Ethernet & TCP/IP Projects
Project
Description
Technologies
STM32_W5500_TCP_Server
TCP server with W5500 Ethernet, MQ-2 gas sensor. Control LED and monitor gas remotely
W5500, TCP/IP, MQ-2, Ethernet
STM32_FreeRTOS_W5500_TCP_Server
Same as above but with FreeRTOS for task management
W5500, TCP/IP, FreeRTOS, Ethernet
πΉ IoT & Cloud Projects
Project
Description
Technologies
STM32_MicroSD_Cloud_Logger
Sensors data to SD card + ThingSpeak upload
ESP8266, MQTT, SD-card, FatFS, DHT11, MPU6050, DS3231, LCD, Buttons
STM32_BareMetal_ESP8266_MQTT_DHT11
DHT11 sensor data to HiveMQ MQTT broker via ESP8266
ESP8266, MQTT, DHT11, LCD, Bare-metal
STM32_ESP8266_DHT11_Thingspeak
DHT11 to ThingSpeak
AT commands, ESP8266
STM32_ESP8266_IP_ATCommand
ESP8266 driver
WiFi modem, AT commands
πΉ Multi-Sensor & Datalogger Projects
Project
Sensors
Features
STM32_MultiSensor_MicroSD_Datalogger
DHT11, DS18B20, MPU6050
SD card, LCD, UART
STM32_MultiSensor_FlashStorage
DS18B20, MPU6050
W25Q64 flash, circular buffer
STM32_DHT11_MPU6050_LCD
DHT11, MPU6050
I2C LCD, bare-metal
STM32_RTC_DS3231_LCD
DS3231 RTC
I2C, custom drivers
STM32_DHT11_LCD16x2
DHT11
HAL, I2C LCD
STM32_rtc_sensor_logger
RTC + sensors
Data logging
πΉ Bare-Metal & Register-Level Projects
πΉ Additional STM32 Projects
More projects added regularly.