MicroPython Programming with ESP32 and ESP8266 eBook

Learn how to program the ESP32 and ESP8266 with MicroPython, a re-implementation of Python 3 programming language targeted for microcontrollers. This is one of the easiest ways to program your ESP32/ESP8266 boards!

GET THE EBOOK »

What’s inside the eBook?

The “MicroPython Programming with ESP32 and ESP8266” is an eBook with 6 Modules and 350 pages long. Continue reading this page for a detailed Table of Contents…

The eBook covers MicroPython with a practical approach:

  • Teaches you the fundamental concepts of MicroPython without going too deep into a lot of theoretical concepts
  • Explains the meaning of each line of code, so that you’re able to write your own scripts later on
  • Shows a faster and easier way to program the ESP32 and ESP8266 boards for IoT applications
  • Is suitable for those new to electronics and programming that want to build projects with real-world applications

We also provide all the resources to build the projects: downloadable code, schematics, and parts list.

Additionally, you get access to our private Forum and Facebook group to ask questions and interact with other members.

What You’ll Learn

  • Program the ESP32/ESP8266 in MicroPython
  • Flash ESP32/ESP8266 with MicroPython firmware
  • Getting Started with Mu Editor, uPyCraft IDE, and Thonny IDE
  • Control the ESP32/ESP8266 GPIOs and use its functionalities
  • Learn how to use interrupts, timers, and deep sleep
  • Understand sensors and basic electronics
  • Build web servers to publish sensor data and control GPIOs
  • Send HTTP requests to third-party services
  • Use MQTT to communicate between boards
  • Communicate with other platforms using MQTT
  • Control DC motors, addressable RGB LED strips, and OLED displays

Module #1: Getting Started with MicroPython on ESP32 and ESP8266

  • Introducing MicroPython
  • Introducing the ESP32 Board
  • Introducing the ESP8266 Board
  • Getting Started with Mu Editor
  • Installing uPyCraft IDE: Windows, Mac OS X, and Linux Ubuntu
  • Flashing MicroPython Firmware to ESP32/ESP8266
  • Getting Started with uPyCraft IDE
  • Getting Started with Thonny IDE

Module #2: MicroPython Programming Basics

  • Mathematical and Relational Operators
  • Data Types
  • Conditional Statements and Loops
  • Functions
  • Classes, Objects, and Modules

Module #3: Interacting with GPIOs

  • Blinking an LED
  • Digital Inputs and Digital Outputs
  • Analog Inputs
  • PWM (Pulse Width Modulation)
  • ESP32 Touch Pins
  • Interrupts
  • Timers
  • Deep Sleep with Timer Wake Up

Module #4: Web Servers and HTTP Clients

  • Web Server Introduction
  • “Hello, World!” Web Server
  • Web Server – Control Outputs
  • Web Server with Slider Switch
  • Web Server – Display Temperature and Humidity Readings
  • Send Sensor Readings via Email (IFTTT)
  • Getting Data using an API (OpenWeatherMap)

Module #5: MQTT Communication Protocol

  • Introducing MQTT
  • Installing Mosquitto MQTT Broker on a Raspberry Pi
  • MQTT – Establishing a Two-way Communication
  • Installing Node-RED and Node-RED Dashboard on a Raspberry Pi
  • MQTT – Connect ESP32/ESP8266 to Node RED

Module #6: Other Components: OLED, DC Motor, WS2812B RGB LED Strip

  • Display data on OLED Display
  • Control a DC Motor
  • Control an Addressable RGB LED Strip

Invitation to Join our Private Forum!

This eBook comes with an opportunity to join our private Forum of like-minded people where you can ask questions about the eBook or other related subjects. You’ll get direct help from Rui and Sara or from other active members of the community.

Who is this eBook for?

For those who want to quickly learn to program microcontrollers (ESP32 and ESP8266) without the burden of having to learn more “complex/advanced” programming languages like C/C++ used in Arduino IDE. MicroPython is suitable for complete beginners when it comes to programming microcontrollers.

If you’re used to program with Arduino programming language, you’ll learn an easier way to program your boards. Additionally, you’ll learn Python fundamental concepts that can be useful in other application fields. By using a high-level programming language, you can make complex programs with just a few lines of code.

With MicroPython, making IoT applications for ESP32 and ESP8266 has never been easier.

Download the eBook

  • 6 Modules (PDF eBook with 350 pages)
  • Source Code
  • Schematic Diagrams
  • Parts List
  • Unlimited Updates
  • Exclusive access to a Private Forum
  • Access to our Facebook group
  • English language
  • Created by Rui Santos and Sara Santos

GET THE EBOOK | $25 USD »

Click here to get the eBook | $25 USD

Note: after your purchase, you receive an email with a username and password that you use to access the members area and download the PDF eBook.

Have questions? Email me at https://randomnerdtutorials.com/support anytime for any reason.

You won’t regret it. My 60 day money back guarantee backs up every word in this message. Proceed with confidence. See you inside,

-Rui Santos

Backed by a 60 day 100% money-back guarantee

If you don’t like the course, I don’t want your money. Seriously, that’s why I offer a 60 days money back guarantee. Email me here and I will promptly refund all your money. No questions, no hassles – it’s that simple.

Frequently Asked Questions

MicroPython is a re-implementation of Python 3 programming language targeted for microcontrollers and embedded systems, while Arduino IDE is based on C/C++ programming language.

MicroPython is simpler and less prone to syntax errors when compared with Arduino programming language. On the other hand, MicroPython doesn’t have as much support in terms of libraries. Nonetheless, there are available libraries for the most common tasks and sensors usage. You probably can do everything that you need with MicroPython.

Note: MicroPython has a very enthusiastic and fast growing community.

Yes. If you’re familiar with Arduino programming language, you’ll find a simpler way to program your boards. Python is an easy to read programming language and less prone to error syntax. If you want to prototype your projects quicker, MicroPython is the way to go. For example, the script to blink an LED is as simple as follows:

from machine import Pin
from time import sleep 

led = Pin(2, Pin.OUT) 

while True:
  led.value(not led.value())
  sleep(0.5)

Some of the differences between MicroPython and Arduino programming language: you don’t need to declare variables, you don’t need to add a semicolon ; to the end of each statement and you don’t need curly brackets (use indentation instead).

Yes, I often update all my courses, so everyone who purchases gets free lifetime updates. You’ll also have access to future content that we’ll be adding to the course.

Well, if you don’t like it, I don’t want your money. Seriously, that’s why I offer a 60 days money back guarantee. Email me here and I will promptly refund all your money. No questions, no hassles – it’s that simple!

If you still have questions after reading this page please email me here. I’ll do my best to answer your questions.

For those who want to quickly learn to program microcontrollers (ESP32 and ESP8266) without the burden of having to learn more “complex/advanced” programming languages like C/C++ used in Arduino IDE. MicroPython is suitable for complete beginners when it comes to programming microcontrollers.

If you’re used to program with Arduino programming language, you’ll learn an easier way to program your boards. Additionally, you’ll learn Python fundamental concepts that can be useful in other application fields. By using a high-level programming language, you can make complex programs with just a few lines of code.

With MicroPython, making IoT applications for ESP32 and ESP8266 has never been easier.

The eBook is only available in English language.

Meet the Authors

Rui Santos
RandomNerdTutorials.com

Hey there, I’m Rui Santos, founder of the Random Nerd Tutorials blog. For the last couple of months we’ve been working on this new eBook dedicated to programming the ESP boards with MicroPython firmware. This eBook is perfect for anyone that loves to make IoT projects. With MicroPython you can build web servers, MQTT clients, and much more very quickly.

Sara Santos
RandomNerdTutorials.com

Hi. I’m Sara Santos and I work at the RNT blog with Rui. We’ve created the “MicroPython Programming with ESP32 and ESP8266” eBook to provide an easy way to program your boards for IoT projects. MicroPython is a great way to get started programming electronics. If you’re already familiar with Arduino programming language, I’m sure you’ll learn something new – you’ll be able to build complex projects with just a few lines of code.

See what others are saying

Hi Rui, I was pleased to receive your email regarding MicroPython on ESP32. I am sure many of your readers are asking should I use MicroPython instead of Arduino? My answer: use both(…). Your courses are so good, we use them at the commercial level, not just the hobbyist level. Thanks for the good work.

Mitch Sonian

I have been doing your courses on ESP8266, ESP32, and Home automation, and they are really excellent. It seems that you have taken lots of efforts to make and explain even very difficult topics in a very simple and easy to understand way. Congratulations for your valuable work.

Dattatraya Apte

Thank you Rui for everything you’ve done for ESP8266 projecteers. You and your site have been my “go-to” for a few years whenever I need advice or some detail of a component.

DWilliams

Hi, I love your eBooks and courses – everything has worked perfectly. I have lots of new ideas. Thanks!

John Benson

This is one of the best sites on the net, period. I recently purchased your course (Learn ESP32 with Arduino IDE) and I can’t say enough about it. It simply let me bypass hours of aggravation. Clear instruction and great example code. Thanks again.

Jay W.

Hello Sir. You are such an inspiring person. I really appreciate the effort you put into your projects. Because of RNT I have successfully built my first DHT11 circuit with my new ESP32 and I am very proud of it.

Bhavish Dussoye

AS SEEN ON…

FEATURED LOGOS