How To Install esptool on Fedora 36

In this tutorial we learn how to install esptool in Fedora 36. esptool is A utility to communicate with the ROM bootloader in Espressif ESP8266 & ESP32

Introduction

In this tutorial we learn how to install esptool on Fedora 36.

What is esptool

esptool.py A command line utility to communicate with the ROM bootloader in Espressif ESP8266 & ESP32 WiFi microcontroller. Allows flashing firmware, reading back firmware, querying chip parameters, etc. Developed by the community, not by Espressif Systems.

We can use yum or dnf to install esptool on Fedora 36. In this tutorial we discuss both methods but you only need to choose one of method to install esptool.

Install esptool on Fedora 36 Using dnf

Update yum database with dnf using the following command.

sudo dnf makecache --refresh

After updating yum database, We can install esptool using dnf by running the following command:

sudo dnf -y install esptool

Install esptool on Fedora 36 Using yum

Update yum database with yum using the following command.

sudo yum makecache --refresh

After updating yum database, We can install esptool using yum by running the following command:

sudo yum -y install esptool

How To Uninstall esptool on Fedora 36

To uninstall only the esptool package we can use the following command:

sudo dnf remove esptool

esptool Package Contents on Fedora 36

/usr/bin/espefuse
/usr/bin/espefuse.py
/usr/bin/espsecure
/usr/bin/espsecure.py
/usr/bin/esptool
/usr/bin/esptool.py
/usr/lib/python3.10/site-packages/__pycache__/espefuse.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/__pycache__/espefuse.cpython-310.pyc
/usr/lib/python3.10/site-packages/__pycache__/espsecure.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/__pycache__/espsecure.cpython-310.pyc
/usr/lib/python3.10/site-packages/__pycache__/esptool.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/__pycache__/esptool.cpython-310.pyc
/usr/lib/python3.10/site-packages/espefuse.py
/usr/lib/python3.10/site-packages/espressif
/usr/lib/python3.10/site-packages/espressif/__init__.py
/usr/lib/python3.10/site-packages/espressif/__pycache__
/usr/lib/python3.10/site-packages/espressif/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse
/usr/lib/python3.10/site-packages/espressif/efuse/__init__.py
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/base_fields.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/base_fields.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/base_operations.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/base_operations.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/emulate_efuse_controller_base.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/emulate_efuse_controller_base.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/mem_definition_base.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/mem_definition_base.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/util.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/__pycache__/util.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/base_fields.py
/usr/lib/python3.10/site-packages/espressif/efuse/base_operations.py
/usr/lib/python3.10/site-packages/espressif/efuse/emulate_efuse_controller_base.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__init__.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/emulate_efuse_controller.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/emulate_efuse_controller.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/fields.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/fields.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/mem_definition.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/mem_definition.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/operations.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/__pycache__/operations.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/emulate_efuse_controller.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/fields.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/mem_definition.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32/operations.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__init__.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/emulate_efuse_controller.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/emulate_efuse_controller.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/fields.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/fields.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/mem_definition.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/mem_definition.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/operations.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/__pycache__/operations.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/emulate_efuse_controller.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/fields.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/mem_definition.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32c3/operations.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__init__.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/emulate_efuse_controller.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/emulate_efuse_controller.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/fields.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/fields.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/mem_definition.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/mem_definition.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/operations.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/__pycache__/operations.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/emulate_efuse_controller.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/fields.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/mem_definition.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32h2/operations.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__init__.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/emulate_efuse_controller.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/emulate_efuse_controller.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/fields.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/fields.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/mem_definition.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/mem_definition.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/operations.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/__pycache__/operations.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/emulate_efuse_controller.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/fields.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/mem_definition.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s2/operations.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__init__.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/emulate_efuse_controller.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/emulate_efuse_controller.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/fields.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/fields.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/mem_definition.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/mem_definition.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/operations.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/__pycache__/operations.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/emulate_efuse_controller.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/fields.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/mem_definition.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3/operations.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__init__.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/emulate_efuse_controller.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/emulate_efuse_controller.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/fields.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/fields.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/mem_definition.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/mem_definition.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/operations.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/__pycache__/operations.cpython-310.pyc
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/emulate_efuse_controller.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/fields.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/mem_definition.py
/usr/lib/python3.10/site-packages/espressif/efuse/esp32s3beta2/operations.py
/usr/lib/python3.10/site-packages/espressif/efuse/mem_definition_base.py
/usr/lib/python3.10/site-packages/espressif/efuse/util.py
/usr/lib/python3.10/site-packages/espsecure.py
/usr/lib/python3.10/site-packages/esptool-3.2-py3.10.egg-info
/usr/lib/python3.10/site-packages/esptool-3.2-py3.10.egg-info/PKG-INFO
/usr/lib/python3.10/site-packages/esptool-3.2-py3.10.egg-info/SOURCES.txt
/usr/lib/python3.10/site-packages/esptool-3.2-py3.10.egg-info/dependency_links.txt
/usr/lib/python3.10/site-packages/esptool-3.2-py3.10.egg-info/requires.txt
/usr/lib/python3.10/site-packages/esptool-3.2-py3.10.egg-info/top_level.txt
/usr/lib/python3.10/site-packages/esptool.py
/usr/share/doc/esptool
/usr/share/doc/esptool/README.md
/usr/share/licenses/esptool
/usr/share/licenses/esptool/LICENSE

References

Summary

In this tutorial we learn how to install esptool on Fedora 36 using yum and [dnf]((/fedora/36/dnf/).