Embedded MicroPython from Ground Up™ (Udemy.com)
Develop Embedded Drivers and Firmware using the Python Programming Language
Created by: BHM Engineering Academy
Last updated May 2023
What you will learn
- Develop Embedded Drivers and Firmware using the Python Programming Language
- Mix Python with C/C++
- Develop General Purpose Input/Output (GPIO)Drivers
- Develop Power Management Drivers
- Develop General Purpose Timer Drivers
- Develop Timer Output Compare Drivers
- Developer Timer Input Capture Drivers
- Develop PWM Timer Drivers
- Develop RealTime Clock (RTC) Drivers
- Develop Watchdog Timer (WDG) Drivers
- Develop Analog-to-Digital Converter(ADC) Drivers
- Develop Analog-to-Digital Converter (ADC) Time Triggered Drivers
- Develop Digital-to-Analog Converter (DAC) Drivers
- Develop Universal Asynchronous Receiver/Transmitter (UART) Drivers
- Develop Serial Peripheral Interface (SPI) Drivers
- Develop Inter -Integrated Circuit (I2C) Drivers
How it compares
Against the other 295 rated Udemy courses in Arduino on CourseDuck:
- Rating4.6 out of 5higher than 77% of them
- Reviews87#211 of 296 by number of reviews
- Length10.2 hourslonger than 77% of them
- Last updatedMay 2023earlier than 51% of them
Course Description
Whether you are new to Python programming or not you need to take a look at this course as an embedded developer.
Do you want to know how to write clean and efficient embedded drivers for stm32 microcontrollers using the python programming language?
If so, then welcome to Embedded MicroPython from Ground Up™
MicroPython is an efficient implementation of Python3 optimised to run on microcontrollers.
Now, why should you ....
Learn MicroPython as an embedded systems developer?
The simplicity of the python programming language makes micropython very easy to learn.
It is very easy to use, and allows you to develop complex firmware and drivers in python with few lines of code
It has an extensive software library which you can import into your project to build very complex solutions. E.g. network socket programming.
It is extensible with C/C++ and assembly, so you can mix assembly and c with micropython to improve code efficiency or simply implement routines that you are more comfortable implementing in low-level code.
So with that understood, let me tell you…
Exactly What You’re Getting
This course can be divided into 3 major sections.
First Section
The first section provides practical python essential training for embedded developers. This section is for developers who are not familiar with the python programming language and those who want to brush up on their python development skills. This is required because we need to know who to write python code before we can develop our firmware and drivers in python.
Second Section
The second section deals peripheral driver development. Over here we shall develop drivers for all the standard peripherals of our STM32 microconctoller.
We shall develop the following drivers:
General Purpose Input/Output (GPIO)Drivers
Power Management Drivers
General Purpose Timer Drivers
Timer Output Compare Driver
Timer Input Capture Driver
PWM Timer Driver
RealTime Clock (RTC) Drivers
A Watchdog Timer (WDG) Drivers
Analog-to-Digital Converter(ADC) Drivers
Analog-to-Digital Converter (ADC) Time Triggered Drivers
Digital-to-Analog Converter (DAC) Drivers
Universal Asynchronous Receiver/Transmitter (UART) Drivers
Serial Peripheral Interface (SPI) Drivers
Inter -Integrated Circuit (I2C) Drivers
Last Section
In the final section we shall develop firmware for addressing advanced topics such as:
Adding Assembly Language Code to MicroPython
Adding C Language Code to MicroPython
Please take a look at the full course curriculum. I hope to see you in the course.
Instructor Details
- 4.6 Rating
87 Reviews
BHM Engineering Academy
Bohobiom Engineering is a 21st century Computer Engineering online Academy based in London U.K.
We have experienced instructors in the areas of Assembly Programming, Hardware Engineering, Signal & Image Processing, Embedded Firmware Development, Deep Learning and other high demand 21st century skills.
As of today we have trained over 35,000 happy pupils. Please take a look at our available courses and message us if you have any questions.
More courses by BHM Engineering Academy
Mastering STM32CubeMX 5 and CubeIDE - Embedded Systems (2023)
4.3 (396 Reviews)
Provider: Udemy
Time: 10.1h
$69.99
Embedded Systems STM32 HAL APIs Driver Development (2023)
4.4 (353 Reviews)
Provider: Udemy
Time: 11.3h
$69.99
Advanced Embedded Systems Bare-Metal Programming Ground Up™ (2025)
4.3 (251 Reviews)
Provider: Udemy
Time: 22.6h
$69.99
Embedded Systems STM32 Low-Layer APIs(LL) Driver Development (2023)
4.5 (127 Reviews)
Provider: Udemy
Time: 25.7h
$11.99
Embedded Bootloader Development from Ground Up™ (2023)
4.5 (121 Reviews)
Provider: Udemy
Time: 6.8h
$11.99
More Arduino courses
Learn to Build a Computer (PC) in 2026 - all types!
4.9 (245 Reviews)
Provider: Udemy
Time: 6.1h
$74.99
Raspberry Pi For Beginners - 2026 Complete Course
4.8 (3,105 Reviews)
Provider: Udemy
Time: 10.6h
$89.99
Ultimate Guide to Raspberry Pi : Tips, Tricks and Hacks (2023)
4.8 (2,363 Reviews)
Provider: Udemy
Time: 5.2h
$69.99
Mastering Microcontroller: STM32-LTDC, LCD-TFT, LVGL (MCU3) (2026)
4.8 (487 Reviews)
Provider: Udemy
Time: 8.1h
$79.99
Arduino Step by Step: Getting Started (2024)
4.7 (8,714 Reviews)
Provider: Udemy
Time: 21.4h
$159.99
Reviews
By Charles McCain on 7/4/2026
Course was very helpful though be warned you should have some python familiarity - the Python Essential Training is the weakest part of the course. Material is well presented, though it would help if you had their C based bare metal courses which give you a thorough grounding in the MCU features and capabilities.
By Branstetter Péter on 12/21/2025
It was an amazing course! It covers everything, very good explanations, made learning enjoyable, super instructor. The course material is huge, it's worth going back and rewatching it several times.
By Paweł on 4/21/2025
Super kurs. Prowadzony w bardzo przystępny i zrozumiały sposób. Prowadzący jest super. Polecam.
By Sandeep Singh on 1/5/2025
It is an excellent course . Instructor presented the information in a way that can be understood by anyone who even have basic programming knowledge plus the videos were concise and material was quite engaging. Thanks Mr. Israel Gbati
By Luigi C on 8/16/2024
An excellent course, with a well-chosen mix of high-level and low-level topics. I used a different STM Nucleo board, although very similar to the one recommended, without encountering any difficulties.
By Bill Tate on 4/6/2024
Kudos on section 5. There are no shortcuts in the embedded hardware space, even using micropython. Understanding the architecture of the MCU is essential. Critical to understand the basics of the >, |=, &= operators (when to use), using hexdecimal numbers, registers, etc. If you are a newbie, strongly recommend listening very carefully to what he is saying... and give it time to sink in. And play with windows calculator in programmer mode to experiment with hexdecimal and binary math and the various operators.
By Zafeer Abbasi on 2/27/2023
So I've taken the bare metal embedded C course and I'm doing this course right now. Pros: 1. When introducing a feature, such as timer input capture, you go the reference manual and go over the functional description with the audience. This gives the audience a better sense of the module, how, and why it is used. This was not done in bare metal Cons: 1. Thonny IDE kinda sucks because theres no auto closing brackets and yenno how in CUBE ide when you type -> it shows the available modules that shortcut is not in thonny. So I guess it would be nice if you could use a ide thats more updated and has a little more development
By Ivin Holmes on 12/15/2022
Very good showing how to use python on micro
By Erdoğan Dökmeci on 12/12/2022
Nice course. I have learned a lot of useful information. But if you are an absolute beginner to embedded systems, this course may not be suitable for you. Also, although it is written in the introduction that there will be a section named “Adding C Language Code to MicroPython”, as of date, this part is missing.
By Johann Babl on 9/14/2022
Very interesting course that bridges the gap between "bare-metal programming" (similar to C) in Python and class-oriented programming in Python. It will be interesting to see how Micropython evolves in this regard and if this course evolves accordingly. He really would have what it takes, so 5 stars.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 92 / 100












