PyCon CZ

PyCon CZ 23
15–17 September

Master ESP32‑CAM with help of MicroPython a workshop with Tomislav Arnaudov & Marc Martínez Badenes

Sunday 17 September 14:00 (3 hours)
Room 349

By the end of this workshop, participants should have a solid understanding of setting up the ESP32-CAM module with MicroPython, as well as the ability to perform basic to advanced operations using the module’s capabilities. They will have the foundation to further explore and create their own projects involving the ESP32-CAM and MicroPython.

Stage 1: Toolchain Installation

In this stage, participants will set up the necessary tools and environment for working with the ESP32-CAM module using MicroPython. The focus will be on installing the required tools, drivers, and software components needed to begin the development process.

  • Introduction to ESP32-CAM and MicroPython
  • Installing required USB drivers
  • Setting up Python environment
  • Installing Thonny
  • Verifying installation

Stage 2: Introduction to MicroPython

In this stage, participants will get acquainted with MicroPython, a lightweight implementation of Python designed for microcontrollers. They will learn the basics of MicroPython syntax, interact with the ESP32-CAM module through the REPL (Read-Eval-Print Loop), and understand how to upload code to the board.

  • Overview of MicroPython and its features
  • Connecting to the ESP32-CAM REPL
  • Basic MicroPython commands and syntax
  • Uploading scripts to the ESP32-CAM
  • Debugging and troubleshooting in MicroPython

Stage 3: Basic ESP32-CAM Operations

This stage will cover fundamental operations using the ESP32-CAM module. Participants will explore how to capture images, record videos, and interact with the camera module using MicroPython. Basic image processing techniques might also be introduced.

  • Configuring the camera module
  • Capturing and saving images
  • Recording video streams
  • Implementing simple image processing
  • Utilizing onboard LEDs and other peripherals

Stage 4: Advanced ESP32-CAM Operations

The final stage delves into more advanced capabilities of the ESP32-CAM module and MicroPython. Participants will learn about wireless communication, web server integration, and potentially creating IoT applications using the module.

  • Establishing Wi-Fi connections
  • Implementing a simple web server on ESP32-CAM
  • Streaming video over Wi-Fi (if possible)
  • Building a basic IoT application using ESP32-CAM


A working laptop (Windows/Linux , Apple should work too but not tested) with admin rights to install drivers and software

While there will be ESP32-CAM modules available, bringing your own ESP32-CAM module is preferred if you have it. Good to know: 10 pieces can be bought after the workshop.

Just in case bring a cable you can connect to your laptop with USB-C connector on the other side to connect to ESP32-CAM module.


Patience :)

What do you need to know to enjoy this workshop

Python level

Medium knowledge: You use frameworks and third-party libraries.

About the topic

No previous knowledge of the topic is required, basic concepts will be explained.

Tomislav Arnaudov

Tomislav Arnaudov is a passionate tech enthusiast, hacker, and maker. As a former member of Prague hackerspace Brmlab, he honed his skills and explored his love for technology.

He works as a technology consultant, lending his expertise to artists and large companies. He is currently leading the department at Prusa Research, where his team focuses on automating 3D printing processes.

Marc Martínez Badenes

Marc is an electronics engineer from Spain who loves telling computers what to do. He has taken many opportunities to do so and delved into programming to solve real-world problems in robotics or synthetic biology.

Currently, he is working as the main software developer for Prusa Research's Automated Farm system. Developing all the components that go into the combination of 3D printing and robotics like AI recognition systems for the printers, task planning, 3D position tracking with computer vision and the robotic's system architecture and routines.

Sunday 17 September

14:00 Room 301

Moje první API ve Flasku

Miroslav Brabenec, Petra Číhalová & Lenka Erbenová
Beginner’s track only in Czech
14:00 Room 302
14:00 Room 343
14:00 Room 346
14:00 Room 347

Transform Your Data Game: Mastering Data Modeling and Analytics with dbt

Jozef Regináč, Jaroslav Bezděk, Barbora Drinková & Pavel Ježek
PyData track
14:00 Room 351
14:00 Room 349

Master ESP32‑CAM with help of MicroPython

Tomislav Arnaudov & Marc Martínez Badenes