Skip to content
UdemyArduinoPaid courseAll LevelsCertificate

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

icon
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

icon
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?

  1. The simplicity of the python programming language makes micropython very easy to learn.

  2. It is very easy to use, and allows you to develop complex firmware and drivers in python with few lines of code

  3. It has an extensive software library which you can import into your project to build very complex solutions. E.g. network socket programming.

  4. 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:


  1. General Purpose Input/Output (GPIO)Drivers

  2. Power Management Drivers

  3. General Purpose Timer Drivers

  4. Timer Output Compare Driver

  5. Timer Input Capture Driver

  6. PWM Timer Driver

  7. RealTime Clock (RTC) Drivers

  8. A Watchdog Timer (WDG) Drivers

  9. Analog-to-Digital Converter(ADC) Drivers

  10. Analog-to-Digital Converter (ADC) Time Triggered Drivers

  11. Digital-to-Analog Converter (DAC) Drivers

  12. Universal Asynchronous Receiver/Transmitter (UART) Drivers

  13. Serial Peripheral Interface (SPI) Drivers

  14. 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.


icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

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.


icon
More courses by BHM Engineering Academy

$69.99

$69.99

$69.99

$11.99

$11.99

$11.99

icon
More Arduino courses

Free

$74.99

$89.99

$69.99

$79.99

$159.99

icon
Reviews

4.6

87 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

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.

Showing all 10 reviews on CourseDuck

Read all 87 reviews on Udemy

icon
Quality Score

No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 92 / 100