Learn embedded systems, microcontrollers, and bare-metal programming through clear, hands-on tutorials ⚙️🧠
Explore real-world embedded software development, register-level programming, and practical C techniques used in industry.

This channel also covers embedded engineering careers, tools, and mindset—helping you grow from beginner to professional in embedded development 🚀💻

🔧 Topics: Embedded C, STM32, Bare-Metal, Microcontrollers, Firmware
📚 Learn • Build • Understand Hardware

📩 Business inquiries: equipembedded@gmail.com


Equip Embedded

🌬️ What are you really breathing inside your home?

I wanted a simple way to monitor indoor air quality, so I decided to build my own.

In my latest video, I show you how I built an air quality monitor from scratch, including the hardware, I²C communication, sensor registers, OLED display, and LED indicators.

The project uses an ENS160 air quality sensor and an STM32, with the sensor communication written from the ground up using bare-metal code.

I also tested how the sensor reacts to things like alcohol and other airborne chemicals. 👀

🎥 Watch the full build: https://www.youtube.com/watch?v=bvOfF...

💬 What would you test with an air quality sensor?

#STM32 #EmbeddedSystems #BareMetal #I2C #AirQuality #Electronics #Firmware #Microcontrollers

2 months ago |[YT] | 8

Equip Embedded

🚀 New Video: STM32 Clock Configuration (Bare-Metal)

When an STM32 microcontroller powers up, it doesn't automatically run at its maximum speed. In this new lesson, I walk through configuring the STM32L432 clock system from the ground up using direct register programming—no HAL.

In this video, you'll learn:
• How the STM32 clock tree works
• The differences between HSI, HSE, MSI, and PLL
• How to configure the PLL for an 80 MHz system clock
• Why Flash wait states matter
• How to verify your clock configuration using the MCO output

If you're learning embedded systems or want a deeper understanding of how STM32 clocks work under the hood, I hope you find it useful.

🎥 Watch here: https://www.youtube.com/watch?v=CxS2R...

💻 Source code: github.com/equipembedded/STM32L4_Bare_Metal_Progra…

#STM32 #EmbeddedSystems #BareMetal #Firmware #Microcontroller #EmbeddedC #RCC #PLL #Electronics

2 months ago |[YT] | 6

Equip Embedded

🚀 New video is live!

In this lesson, we take our bare-metal SSD1306 driver to the next level by building a simple graphics library from scratch—no HAL, just direct register programming.

You'll learn how to:
✅ Draw pixels
✅ Draw lines (Bresenham algorithm)
✅ Draw rectangles
✅ Draw circles
✅ Render 5×7 bitmap fonts
✅ Print text to the OLED

If you've been following the STM32 Bare-Metal series, this lesson builds directly on the previous OLED tutorials.

🎥 Watch here: https://youtu.be/_rMsWPyml3I

As always, the complete source code is available on GitHub. If you find the video helpful, consider liking, subscribing, and sharing it with another embedded developer!

#STM32 #EmbeddedSystems #BareMetal #SSD1306 #OLED #I2C #Microcontroller

2 months ago |[YT] | 13

Equip Embedded

I'm back from my trip! 😊

A big thank you to everyone who stuck around while I was away. I had an amazing time traveling, but I've definitely missed making embedded systems content.

New videos are on the way, and I'm excited to get back to STM32, bare-metal programming, and more. See you in the next video!

3 months ago |[YT] | 23

Equip Embedded

📚 Quick STM32 Book Recommendation

This is not a sponsored post, affiliate link, or advertisement.

One STM32 resource that I found genuinely useful is STM32 Arm Programming for Embedded Systems by Ali Mazidi.

I like that it focuses on understanding STM32 peripherals and programming concepts with practical examples. If you're getting started with STM32 or want to strengthen your fundamentals, it's worth checking out.

What STM32 books or resources helped you the most?

3 months ago |[YT] | 25

Equip Embedded

Quick channel update:

I'll be traveling for about a month, so new videos will be on pause for a little while.

I already miss working on these tutorials and sharing them with all of you, but I'm looking forward to getting back and continuing the STM32 bare-metal series, along with more embedded systems and low-level programming content.

In the meantime, feel free to catch up on any lessons you may have missed, and let me know what topics you'd like to see next.

Thanks for all the support. See you soon!

4 months ago |[YT] | 16

Equip Embedded

Most OLED tutorials stop at initialization.

This one goes deeper.

I manually drew the letter **A** on an SSD1306 OLED using raw byte writes, direct GDDRAM access, and bare-metal STM32 register programming — no HAL, no graphics libraries.

If you want to actually understand how OLED pixels are mapped in memory, this lesson is for you.

New video is live.

What should I draw next using raw bytes? 👀

#STM32 #EmbeddedSystems #BareMetal

4 months ago |[YT] | 11

Equip Embedded

New video is live 🚀
I built an SSD1306 OLED driver on STM32 using pure bare-metal code (no HAL).

In this one, we go from raw I2C registers → to a working OLED display.

If you’ve ever wanted to understand how STM32 actually talks to peripherals at register level, this one is for you.

STM32 + SSD1306 + I2C = full control from scratch.

4 months ago (edited) |[YT] | 26

Equip Embedded

🚀 New Lesson Released — Bare-Metal STM32 I2C with SSD1306 OLED

In this lesson, we build a minimal I2C driver from scratch on the STM32L432 — no HAL, just direct register access.



🔧 Topics covered:
✔️ I2C1 initialization
✔️ TIMINGR configuration
✔️ START/STOP generation
✔️ ACK/NACK detection
✔️ 7-bit slave addressing
✔️ SSD1306 OLED communication
✔️ Pull-up resistors explained




If you've ever wanted to truly understand how STM32 I2C works under the hood, this lesson is for you.



📺 New video:
https://youtu.be/xgV-G2iq2iA



📁 GitHub repository:
github.com/equipembedded/STM32L4_Bare_Metal_Progra…



#embedded #stm32 #baremetal #i2c #ssd1306 #firmware #embeddedsoftware #electronics #microcontroller #cmsis

5 months ago |[YT] | 26