Warning: Permanently added '44.212.95.150' (ED25519) to the list of known hosts. You can reproduce this build on your computer by running: sudo dnf install copr-rpmbuild /usr/bin/copr-rpmbuild --verbose --drop-resultdir --task-url https://copr.fedorainfracloud.org/backend/get-build-task/10660659-fedora-44-x86_64 --chroot fedora-44-x86_64 Version: 1.8 PID: 9754 Logging PID: 9756 Task: {'allow_user_ssh': False, 'appstream': False, 'background': True, 'build_id': 10660659, 'buildroot_pkgs': [], 'chroot': 'fedora-44-x86_64', 'enable_net': False, 'fedora_review': False, 'git_hash': 'b82e7044c9afcd14ecee7301101c4fbb31d5e9ed', 'git_repo': 'https://copr-dist-git.fedorainfracloud.org/git/lbalhar/python-setuptools_rawhide/esptool', 'isolation': 'default', 'memory_reqs': 2048, 'package_name': 'esptool', 'package_version': '5.3.1-1', 'project_dirname': 'python-setuptools_rawhide', 'project_name': 'python-setuptools_rawhide', 'project_owner': 'lbalhar', 'repo_priority': None, 'repos': [{'baseurl': 'https://download.copr.fedorainfracloud.org/results/lbalhar/python-setuptools_rawhide/fedora-44-x86_64/', 'id': 'copr_base', 'name': 'Copr repository', 'priority': None}], 'sandbox': 'lbalhar/python-setuptools_rawhide--https://src.fedoraproject.org/user/ksurma', 'source_json': {}, 'source_type': None, 'ssh_public_keys': None, 'storage': 0, 'submitter': 'https://src.fedoraproject.org/user/ksurma', 'tags': [], 'task_id': '10660659-fedora-44-x86_64', 'timeout': 18000, 'uses_devel_repo': False, 'with_opts': [], 'without_opts': []} Running: git clone https://copr-dist-git.fedorainfracloud.org/git/lbalhar/python-setuptools_rawhide/esptool /var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool --depth 500 --no-single-branch --recursive cmd: ['git', 'clone', 'https://copr-dist-git.fedorainfracloud.org/git/lbalhar/python-setuptools_rawhide/esptool', '/var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool', '--depth', '500', '--no-single-branch', '--recursive'] cwd: . rc: 0 stdout: stderr: Cloning into '/var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool'... Running: git checkout b82e7044c9afcd14ecee7301101c4fbb31d5e9ed -- cmd: ['git', 'checkout', 'b82e7044c9afcd14ecee7301101c4fbb31d5e9ed', '--'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool rc: 0 stdout: stderr: Note: switching to 'b82e7044c9afcd14ecee7301101c4fbb31d5e9ed'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at b82e704 automatic import of esptool Running: dist-git-client sources cmd: ['dist-git-client', 'sources'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool rc: 0 stdout: stderr: INFO: Reading stdout from command: git rev-parse --abbrev-ref HEAD INFO: Reading stdout from command: git rev-parse HEAD INFO: Reading sources specification file: sources INFO: Downloading esptool-5.3.1.tar.gz INFO: Reading stdout from command: curl --help all INFO: Calling: curl -H Pragma: -H 'Accept-Encoding: identity' -o esptool-5.3.1.tar.gz --location --connect-timeout 60 --retry 3 --retry-delay 10 --remote-time --show-error --fail --retry-all-errors https://copr-dist-git.fedorainfracloud.org/repo/pkgs/lbalhar/python-setuptools_rawhide/esptool/esptool-5.3.1.tar.gz/md5/c37c53bb40ccd4976c7157c092b8571b/esptool-5.3.1.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 5.82M 100 5.82M 0 0 188.1M 0 0 INFO: Reading stdout from command: md5sum esptool-5.3.1.tar.gz tail: /var/lib/copr-rpmbuild/main.log: file truncated Running (timeout=18000): unbuffer mock --spec /var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool/esptool.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1782739298.788803 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 6.7 starting (python version = 3.14.5, NVR = mock-6.7-1.fc44), args: /usr/libexec/mock/mock --spec /var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool/esptool.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1782739298.788803 -r /var/lib/copr-rpmbuild/results/configs/child.cfg Start(bootstrap): init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish(bootstrap): init plugins Start: init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish: init plugins INFO: Signal handler active Start: run INFO: Start(/var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool/esptool.spec) Config(fedora-44-x86_64) Start: clean chroot Finish: clean chroot Mock Version: 6.7 INFO: Mock Version: 6.7 Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-44-x86_64-bootstrap-1782739298.788803/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata INFO: Guessed host environment type: unknown INFO: Using container image: registry.fedoraproject.org/fedora:44 INFO: Pulling image: registry.fedoraproject.org/fedora:44 INFO: Tagging container image as mock-bootstrap-dedb734e-d366-4c80-8982-040da37f3eeb INFO: Checking that 976d72cf492bd717abdb41131622492614cc941a966acdbded307195e9fda648 image matches host's architecture INFO: Copy content of container 976d72cf492bd717abdb41131622492614cc941a966acdbded307195e9fda648 to /var/lib/mock/fedora-44-x86_64-bootstrap-1782739298.788803/root INFO: mounting 976d72cf492bd717abdb41131622492614cc941a966acdbded307195e9fda648 with podman image mount INFO: image 976d72cf492bd717abdb41131622492614cc941a966acdbded307195e9fda648 as /var/lib/containers/storage/overlay/4584abba83e13660d93b55046d438a64236f01679db336545c20465757ffa9f9/merged INFO: umounting image 976d72cf492bd717abdb41131622492614cc941a966acdbded307195e9fda648 (/var/lib/containers/storage/overlay/4584abba83e13660d93b55046d438a64236f01679db336545c20465757ffa9f9/merged) with podman image umount INFO: Removing image mock-bootstrap-dedb734e-d366-4c80-8982-040da37f3eeb INFO: Package manager dnf5 detected and used (fallback) INFO: Not updating bootstrap chroot, bootstrap_image_ready=True Start(bootstrap): creating root cache Finish(bootstrap): creating root cache Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-44-x86_64-1782739298.788803/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Package manager dnf5 detected and used (direct choice) INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-6.0.1-2.fc44.x86_64 rpm-sequoia-1.10.2-2.fc44.x86_64 dnf5-5.4.2.1-1.fc44.x86_64 dnf5-plugins-5.4.2.1-1.fc44.x86_64 Start: installing minimal buildroot with dnf5 Updating and loading repositories: updates 100% | 12.7 MiB/s | 10.3 MiB | 00m01s Copr repository 100% | 11.1 MiB/s | 8.1 MiB | 00m01s fedora 100% | 16.6 MiB/s | 36.4 MiB | 00m02s Repositories loaded. Package Arch Version Repository Size Installing group/module packages: bash x86_64 0:5.3.9-3.fc44 fedora 8.5 MiB bzip2 x86_64 0:1.0.8-23.fc44 fedora 95.0 KiB coreutils x86_64 0:9.10-4.fc44 updates 5.7 MiB cpio x86_64 0:2.15-9.fc44 fedora 1.1 MiB diffutils x86_64 0:3.12-5.fc44 fedora 1.6 MiB fedora-release-common noarch 0:44-18 updates 20.6 KiB findutils x86_64 1:4.10.0-7.fc44 fedora 1.9 MiB gawk x86_64 0:5.3.2-3.fc44 fedora 1.8 MiB glibc-minimal-langpack x86_64 0:2.43-6.fc44 updates 0.0 B grep x86_64 0:3.12-3.fc44 fedora 1.0 MiB gzip x86_64 0:1.14-2.fc44 fedora 401.6 KiB info x86_64 0:7.2-9.fc44 fedora 365.6 KiB patch x86_64 0:2.8-4.fc44 fedora 226.6 KiB redhat-rpm-config noarch 0:344-2.fc44 updates 183.7 KiB rpm-build x86_64 0:6.0.1-2.fc44 fedora 294.6 KiB sed x86_64 0:4.9-7.fc44 fedora 857.2 KiB shadow-utils x86_64 2:4.19.0-7.fc44 updates 4.0 MiB tar x86_64 2:1.35-8.fc44 fedora 3.0 MiB unzip x86_64 0:6.0-69.fc44 fedora 445.8 KiB util-linux x86_64 0:2.41.5-1.fc44 updates 3.5 MiB which x86_64 0:2.25-1.fc44 updates 83.6 KiB xz x86_64 1:5.8.2-2.fc44 fedora 1.3 MiB Installing dependencies: R-srpm-macros noarch 0:1.3.7-2.fc44 updates 3.5 KiB add-determinism x86_64 0:0.7.3-2.fc44 updates 2.2 MiB alternatives x86_64 0:1.33-5.fc44 fedora 62.1 KiB ansible-srpm-macros noarch 0:1-20.1.fc44 fedora 35.7 KiB audit-libs x86_64 0:4.1.4-1.fc44 fedora 390.5 KiB binutils x86_64 0:2.46-3.fc44 updates 27.2 MiB build-reproducibility-srpm-macros noarch 0:0.7.3-2.fc44 updates 1.2 KiB bzip2-libs x86_64 0:1.0.8-23.fc44 fedora 80.5 KiB ca-certificates noarch 0:2025.2.80_v9.0.304-7.fc44 updates 2.7 MiB cmake-srpm-macros noarch 0:4.3.0-1.fc44 fedora 524.0 B coreutils-common x86_64 0:9.10-4.fc44 updates 10.7 MiB crypto-policies noarch 0:20251128-3.git19878fe.fc44 fedora 132.6 KiB curl x86_64 0:8.18.0-6.fc44 updates 480.0 KiB cyrus-sasl-lib x86_64 0:2.1.28-35.fc44 fedora 2.3 MiB debugedit x86_64 0:5.3-2.fc44 updates 220.8 KiB dwz x86_64 0:0.16-3.fc44 fedora 290.9 KiB ed x86_64 0:1.22.5-2.fc44 fedora 149.7 KiB efi-srpm-macros noarch 0:6-6.fc44 fedora 40.2 KiB elfutils x86_64 0:0.195-1.fc44 updates 3.0 MiB elfutils-debuginfod-client x86_64 0:0.195-1.fc44 updates 83.8 KiB elfutils-default-yama-scope noarch 0:0.195-1.fc44 updates 1.8 KiB elfutils-libelf x86_64 0:0.195-1.fc44 updates 1.2 MiB elfutils-libs x86_64 0:0.195-1.fc44 updates 715.3 KiB erlang-srpm-macros noarch 0:0.3.11-1.fc44 fedora 1.9 KiB fedora-gpg-keys noarch 0:44-1 fedora 133.4 KiB fedora-release noarch 0:44-18 updates 0.0 B fedora-release-identity-basic noarch 0:44-18 updates 629.0 B fedora-repos noarch 0:44-1 fedora 4.9 KiB file x86_64 0:5.47-3.fc44 copr_base 101.2 KiB file-libs x86_64 0:5.47-3.fc44 copr_base 12.2 MiB filesystem x86_64 0:3.18-52.fc44 fedora 112.0 B filesystem-srpm-macros noarch 0:3.18-52.fc44 fedora 38.2 KiB fonts-srpm-macros noarch 1:5.0.0-2.fc44 fedora 55.8 KiB forge-srpm-macros noarch 0:0.4.0-4.fc44 fedora 38.9 KiB fpc-srpm-macros noarch 0:1.3-16.fc44 fedora 144.0 B gap-srpm-macros noarch 0:2-2.fc44 fedora 2.1 KiB gdb-minimal x86_64 0:17.1-6.fc44 updates 14.2 MiB gdbm-libs x86_64 1:1.23-11.fc44 fedora 129.6 KiB ghc-srpm-macros noarch 0:1.10-1.fc44 fedora 792.0 B glibc x86_64 0:2.43-6.fc44 updates 6.9 MiB glibc-common x86_64 0:2.43-6.fc44 updates 1.0 MiB glibc-gconv-extra x86_64 0:2.43-6.fc44 updates 7.4 MiB gmp x86_64 1:6.3.0-5.fc44 fedora 815.2 KiB gnat-srpm-macros noarch 0:7-2.fc44 fedora 1.0 KiB gnome-srpm-macros noarch 0:1.0-1.fc44 updates 3.5 KiB gnulib-l10n noarch 0:20241231-2.fc44 fedora 655.0 KiB gnupg2 x86_64 0:2.4.9-16.fc44 updates 6.5 MiB gnupg2-dirmngr x86_64 0:2.4.9-16.fc44 updates 634.0 KiB gnupg2-gpg-agent x86_64 0:2.4.9-16.fc44 updates 686.6 KiB gnupg2-gpgconf x86_64 0:2.4.9-16.fc44 updates 249.7 KiB gnupg2-keyboxd x86_64 0:2.4.9-16.fc44 updates 201.2 KiB gnupg2-verify x86_64 0:2.4.9-16.fc44 updates 360.3 KiB gnutls x86_64 0:3.8.13-1.fc44 updates 3.8 MiB go-srpm-macros noarch 0:3.8.0-2.fc44 fedora 61.9 KiB gpgverify noarch 0:2.2-4.fc44 fedora 8.7 KiB ima-evm-utils-libs x86_64 0:1.6.2-8.fc44 fedora 60.6 KiB jansson x86_64 0:2.14-4.fc44 fedora 88.9 KiB java-srpm-macros noarch 0:1-8.fc44 fedora 870.0 B json-c x86_64 0:0.18-8.fc44 fedora 82.6 KiB kernel-srpm-macros noarch 0:1.0-28.fc44 fedora 1.9 KiB keyutils-libs x86_64 0:1.6.3-7.fc44 fedora 54.2 KiB krb5-libs x86_64 0:1.22.2-4.fc44 updates 2.4 MiB libacl x86_64 0:2.3.2-6.fc44 fedora 35.8 KiB libarchive x86_64 0:3.8.7-1.fc44 updates 1.0 MiB libassuan x86_64 0:2.5.7-5.fc44 fedora 163.8 KiB libattr x86_64 0:2.5.2-8.fc44 fedora 24.3 KiB libblkid x86_64 0:2.41.5-1.fc44 updates 274.3 KiB libbrotli x86_64 0:1.2.0-4.fc44 copr_base 865.0 KiB libcap x86_64 0:2.78-1.fc44 updates 212.1 KiB libcap-ng x86_64 0:0.9.3-1.fc44 updates 68.8 KiB libcbor x86_64 0:0.13.0-2.fc44 fedora 79.5 KiB libcom_err x86_64 0:1.47.3-4.fc44 fedora 63.0 KiB libcurl x86_64 0:8.18.0-6.fc44 updates 1.0 MiB libeconf x86_64 0:0.7.9-3.fc44 fedora 64.8 KiB libevent x86_64 0:2.1.12-17.fc44 fedora 978.7 KiB libfdisk x86_64 0:2.41.5-1.fc44 updates 388.3 KiB libffi x86_64 0:3.5.2-2.fc44 fedora 87.7 KiB libfido2 x86_64 0:1.16.0-5.fc44 fedora 246.4 KiB libfsverity x86_64 0:1.6-4.fc44 fedora 28.4 KiB libgcc x86_64 0:16.1.1-2.fc44 updates 270.7 KiB libgcrypt x86_64 0:1.12.2-1.fc44 updates 1.7 MiB libgomp x86_64 0:16.1.1-2.fc44 updates 577.4 KiB libgpg-error x86_64 0:1.58-2.fc44 fedora 941.6 KiB libidn2 x86_64 0:2.3.8-3.fc44 fedora 556.4 KiB libksba x86_64 0:1.6.7-5.fc44 fedora 414.4 KiB liblastlog2 x86_64 0:2.41.5-1.fc44 updates 41.6 KiB libmount x86_64 0:2.41.5-1.fc44 updates 392.6 KiB libnghttp2 x86_64 0:1.68.0-4.fc44 updates 166.1 KiB libnghttp3 x86_64 0:1.16.0-1.fc44 updates 163.2 KiB libpkgconf x86_64 0:2.5.1-1.fc44 fedora 90.1 KiB libpsl x86_64 0:0.21.5-7.fc44 fedora 76.3 KiB libselinux x86_64 0:3.10-2.fc44 copr_base 201.0 KiB libselinux-utils x86_64 0:3.10-2.fc44 copr_base 305.7 KiB libsemanage x86_64 0:3.10-2.fc44 copr_base 316.4 KiB libsepol x86_64 0:3.10-1.fc44 fedora 870.0 KiB libsmartcols x86_64 0:2.41.5-1.fc44 updates 188.3 KiB libssh x86_64 0:0.12.0-1.fc44 fedora 719.1 KiB libssh-config noarch 0:0.12.0-1.fc44 fedora 277.0 B libstdc++ x86_64 0:16.1.1-2.fc44 updates 3.1 MiB libtasn1 x86_64 0:4.21.0-1.fc44 fedora 180.6 KiB libtool-ltdl x86_64 0:2.5.4-10.fc44 fedora 70.0 KiB libunistring x86_64 0:1.1-11.fc44 fedora 1.7 MiB libusb1 x86_64 0:1.0.30-1.fc44 updates 176.0 KiB libuuid x86_64 0:2.41.5-1.fc44 updates 37.2 KiB libverto x86_64 0:0.3.2-12.fc44 fedora 25.3 KiB libxcrypt x86_64 0:4.5.2-3.fc44 fedora 293.2 KiB libxml2 x86_64 0:2.12.10-6.fc44 fedora 1.8 MiB libzstd x86_64 0:1.5.7-5.fc44 fedora 956.1 KiB linkdupes x86_64 0:0.7.3-2.fc44 updates 780.9 KiB lua-libs x86_64 0:5.4.8-5.fc44 fedora 281.7 KiB lua-srpm-macros noarch 0:1-17.fc44 fedora 1.3 KiB lz4-libs x86_64 0:1.10.0-4.fc44 fedora 157.3 KiB mpfr x86_64 0:4.2.2-3.fc44 fedora 849.1 KiB ncurses-base noarch 0:6.6-1.fc44 fedora 329.7 KiB ncurses-libs x86_64 0:6.6-1.fc44 fedora 968.9 KiB nettle x86_64 0:3.10.1-3.fc44 fedora 794.3 KiB ngtcp2 x86_64 0:1.22.1-1.fc44 updates 338.2 KiB ngtcp2-crypto-ossl x86_64 0:1.22.1-1.fc44 updates 51.6 KiB npth x86_64 0:1.8-4.fc44 fedora 49.5 KiB ocaml-srpm-macros noarch 0:11-3.fc44 fedora 1.9 KiB openblas-srpm-macros noarch 0:2-21.fc44 fedora 112.0 B openldap x86_64 0:2.6.13-1.fc44 fedora 669.9 KiB openssl-libs x86_64 1:3.5.7-1.fc44 updates 9.2 MiB p11-kit x86_64 0:0.26.2-1.fc44 fedora 2.6 MiB p11-kit-trust x86_64 0:0.26.2-1.fc44 fedora 478.3 KiB package-notes-srpm-macros noarch 0:0.20-1.fc44 updates 1.6 KiB pam-libs x86_64 0:1.7.2-1.fc44 fedora 130.5 KiB pcre2 x86_64 0:10.47-1.fc44.1 fedora 718.6 KiB pcre2-syntax noarch 0:10.47-1.fc44.1 fedora 281.9 KiB perl-srpm-macros noarch 0:1-61.fc44 fedora 861.0 B pkgconf x86_64 0:2.5.1-1.fc44 fedora 92.7 KiB pkgconf-m4 noarch 0:2.5.1-1.fc44 fedora 14.3 KiB pkgconf-pkg-config x86_64 0:2.5.1-1.fc44 fedora 989.0 B policycoreutils x86_64 0:3.10-5.fc44 copr_base 884.6 KiB popt x86_64 0:1.19-10.fc44 fedora 132.6 KiB publicsuffix-list-dafsa noarch 0:20260116-1.fc44 fedora 70.4 KiB pyproject-srpm-macros noarch 0:1.22.2-1.fc44 copr_base 3.2 KiB python-srpm-macros noarch 0:3.14-12.fc44 fedora 51.6 KiB qt5-srpm-macros noarch 0:5.15.18-2.fc44 fedora 500.0 B qt6-srpm-macros noarch 0:6.11.1-1.fc44 updates 472.0 B readline x86_64 0:8.3-4.fc44 fedora 519.5 KiB rpm x86_64 0:6.0.1-2.fc44 fedora 3.1 MiB rpm-build-libs x86_64 0:6.0.1-2.fc44 fedora 276.3 KiB rpm-libs x86_64 0:6.0.1-2.fc44 fedora 961.2 KiB rpm-plugin-selinux x86_64 0:6.0.1-2.fc44 fedora 11.9 KiB rpm-sequoia x86_64 0:1.10.2-2.fc44 updates 2.4 MiB rpm-sign-libs x86_64 0:6.0.1-2.fc44 fedora 39.6 KiB rust-srpm-macros noarch 0:28.4-3.fc44 fedora 5.5 KiB selinux-policy noarch 0:44.3-1.fc44 updates 32.1 KiB selinux-policy-targeted noarch 0:44.3-1.fc44 updates 18.6 MiB setup noarch 0:2.15.0-28.fc44 fedora 724.9 KiB sqlite-libs x86_64 0:3.51.2-1.fc44 fedora 1.6 MiB systemd-libs x86_64 0:259.7-1.fc44 updates 2.4 MiB systemd-standalone-sysusers x86_64 0:259.7-1.fc44 updates 301.7 KiB tpm2-tss x86_64 0:4.1.3-9.fc44 fedora 1.6 MiB tree-sitter-srpm-macros noarch 0:0.4.2-2.fc44 fedora 8.3 KiB util-linux-core x86_64 0:2.41.5-1.fc44 updates 1.5 MiB xxhash-libs x86_64 0:0.8.3-4.fc44 fedora 94.0 KiB xz-libs x86_64 1:5.8.2-2.fc44 fedora 217.7 KiB zig-srpm-macros noarch 0:1-8.fc44 fedora 1.3 KiB zip x86_64 0:3.0-45.fc44 fedora 698.0 KiB zlib-ng-compat x86_64 0:2.3.3-3.fc44 fedora 165.6 KiB zstd x86_64 0:1.5.7-5.fc44 fedora 502.4 KiB Installing groups: Buildsystem building group Transaction Summary: Installing: 185 packages Total size of inbound packages is 69 MiB. Need to download 69 MiB. After this operation, 224 MiB extra will be used (install 224 MiB, remove 0 B). [ 1/185] bzip2-0:1.0.8-23.fc44.x86_64 100% | 197.4 KiB/s | 52.1 KiB | 00m00s [ 2/185] cpio-0:2.15-9.fc44.x86_64 100% | 580.9 KiB/s | 293.3 KiB | 00m01s [ 3/185] diffutils-0:3.12-5.fc44.x86_6 100% | 1.5 MiB/s | 395.3 KiB | 00m00s [ 4/185] grep-0:3.12-3.fc44.x86_64 100% | 3.1 MiB/s | 301.6 KiB | 00m00s [ 5/185] bash-0:5.3.9-3.fc44.x86_64 100% | 2.9 MiB/s | 1.9 MiB | 00m01s [ 6/185] findutils-1:4.10.0-7.fc44.x86 100% | 3.0 MiB/s | 552.5 KiB | 00m00s [ 7/185] gzip-0:1.14-2.fc44.x86_64 100% | 2.1 MiB/s | 179.1 KiB | 00m00s [ 8/185] info-0:7.2-9.fc44.x86_64 100% | 2.8 MiB/s | 186.7 KiB | 00m00s [ 9/185] patch-0:2.8-4.fc44.x86_64 100% | 1.6 MiB/s | 115.2 KiB | 00m00s [ 10/185] rpm-build-0:6.0.1-2.fc44.x86_ 100% | 1.8 MiB/s | 139.9 KiB | 00m00s [ 11/185] sed-0:4.9-7.fc44.x86_64 100% | 4.5 MiB/s | 319.2 KiB | 00m00s [ 12/185] xz-1:5.8.2-2.fc44.x86_64 100% | 7.6 MiB/s | 607.2 KiB | 00m00s [ 13/185] unzip-0:6.0-69.fc44.x86_64 100% | 2.3 MiB/s | 199.6 KiB | 00m00s [ 14/185] tar-2:1.35-8.fc44.x86_64 100% | 6.6 MiB/s | 868.2 KiB | 00m00s [ 15/185] gawk-0:5.3.2-3.fc44.x86_64 100% | 12.0 MiB/s | 1.1 MiB | 00m00s [ 16/185] fedora-release-common-0:44-18 100% | 196.7 KiB/s | 23.6 KiB | 00m00s [ 17/185] glibc-minimal-langpack-0:2.43 100% | 1.4 MiB/s | 81.5 KiB | 00m00s [ 18/185] redhat-rpm-config-0:344-2.fc4 100% | 656.0 KiB/s | 78.1 KiB | 00m00s [ 19/185] coreutils-0:9.10-4.fc44.x86_6 100% | 3.4 MiB/s | 1.2 MiB | 00m00s [ 20/185] shadow-utils-2:4.19.0-7.fc44. 100% | 7.3 MiB/s | 1.3 MiB | 00m00s [ 21/185] which-0:2.25-1.fc44.x86_64 100% | 1.0 MiB/s | 42.1 KiB | 00m00s [ 22/185] filesystem-0:3.18-52.fc44.x86 100% | 13.9 MiB/s | 1.3 MiB | 00m00s [ 23/185] ncurses-libs-0:6.6-1.fc44.x86 100% | 3.4 MiB/s | 344.1 KiB | 00m00s [ 24/185] bzip2-libs-0:1.0.8-23.fc44.x8 100% | 694.9 KiB/s | 43.8 KiB | 00m00s [ 25/185] util-linux-0:2.41.5-1.fc44.x8 100% | 4.2 MiB/s | 1.2 MiB | 00m00s [ 26/185] ed-0:1.22.5-2.fc44.x86_64 100% | 1.3 MiB/s | 85.4 KiB | 00m00s [ 27/185] pcre2-0:10.47-1.fc44.1.x86_64 100% | 3.0 MiB/s | 277.7 KiB | 00m00s [ 28/185] libattr-0:2.5.2-8.fc44.x86_64 100% | 284.6 KiB/s | 17.9 KiB | 00m00s [ 29/185] popt-0:1.19-10.fc44.x86_64 100% | 1.0 MiB/s | 66.9 KiB | 00m00s [ 30/185] readline-0:8.3-4.fc44.x86_64 100% | 2.6 MiB/s | 229.8 KiB | 00m00s [ 31/185] rpm-0:6.0.1-2.fc44.x86_64 100% | 7.2 MiB/s | 578.3 KiB | 00m00s [ 32/185] rpm-build-libs-0:6.0.1-2.fc44 100% | 2.0 MiB/s | 132.2 KiB | 00m00s [ 33/185] zstd-0:1.5.7-5.fc44.x86_64 100% | 2.8 MiB/s | 192.5 KiB | 00m00s [ 34/185] rpm-libs-0:6.0.1-2.fc44.x86_6 100% | 3.9 MiB/s | 415.5 KiB | 00m00s [ 35/185] libacl-0:2.3.2-6.fc44.x86_64 100% | 387.9 KiB/s | 24.8 KiB | 00m00s [ 36/185] xz-libs-1:5.8.2-2.fc44.x86_64 100% | 1.8 MiB/s | 116.8 KiB | 00m00s [ 37/185] gmp-1:6.3.0-5.fc44.x86_64 100% | 4.5 MiB/s | 322.5 KiB | 00m00s [ 38/185] coreutils-common-0:9.10-4.fc4 100% | 26.7 MiB/s | 2.1 MiB | 00m00s [ 39/185] fedora-repos-0:44-1.noarch 100% | 146.7 KiB/s | 9.2 KiB | 00m00s [ 40/185] glibc-common-0:2.43-6.fc44.x8 100% | 9.1 MiB/s | 371.7 KiB | 00m00s [ 41/185] gnome-srpm-macros-0:1.0-1.fc4 100% | 227.8 KiB/s | 8.7 KiB | 00m00s [ 42/185] mpfr-0:4.2.2-3.fc44.x86_64 100% | 4.9 MiB/s | 357.8 KiB | 00m00s [ 43/185] ansible-srpm-macros-0:1-20.1. 100% | 314.1 KiB/s | 20.1 KiB | 00m00s [ 44/185] cmake-srpm-macros-0:4.3.0-1.f 100% | 165.6 KiB/s | 10.4 KiB | 00m00s [ 45/185] dwz-0:0.16-3.fc44.x86_64 100% | 2.1 MiB/s | 138.9 KiB | 00m00s [ 46/185] efi-srpm-macros-0:6-6.fc44.no 100% | 352.4 KiB/s | 22.6 KiB | 00m00s [ 47/185] erlang-srpm-macros-0:0.3.11-1 100% | 144.3 KiB/s | 10.0 KiB | 00m00s [ 48/185] filesystem-srpm-macros-0:3.18 100% | 422.7 KiB/s | 26.6 KiB | 00m00s [ 49/185] fonts-srpm-macros-1:5.0.0-2.f 100% | 421.2 KiB/s | 27.4 KiB | 00m00s [ 50/185] forge-srpm-macros-0:0.4.0-4.f 100% | 312.3 KiB/s | 20.0 KiB | 00m00s [ 51/185] fpc-srpm-macros-0:1.3-16.fc44 100% | 120.3 KiB/s | 7.9 KiB | 00m00s [ 52/185] gap-srpm-macros-0:2-2.fc44.no 100% | 145.1 KiB/s | 9.1 KiB | 00m00s [ 53/185] ghc-srpm-macros-0:1.10-1.fc44 100% | 133.2 KiB/s | 8.8 KiB | 00m00s [ 54/185] gnat-srpm-macros-0:7-2.fc44.n 100% | 138.8 KiB/s | 8.7 KiB | 00m00s [ 55/185] go-srpm-macros-0:3.8.0-2.fc44 100% | 434.2 KiB/s | 28.2 KiB | 00m00s [ 56/185] java-srpm-macros-0:1-8.fc44.n 100% | 128.8 KiB/s | 8.1 KiB | 00m00s [ 57/185] kernel-srpm-macros-0:1.0-28.f 100% | 143.6 KiB/s | 9.0 KiB | 00m00s [ 58/185] lua-srpm-macros-0:1-17.fc44.n 100% | 140.9 KiB/s | 8.9 KiB | 00m00s [ 59/185] ocaml-srpm-macros-0:11-3.fc44 100% | 144.9 KiB/s | 9.3 KiB | 00m00s [ 60/185] openblas-srpm-macros-0:2-21.f 100% | 120.1 KiB/s | 7.8 KiB | 00m00s [ 61/185] perl-srpm-macros-0:1-61.fc44. 100% | 133.7 KiB/s | 8.4 KiB | 00m00s [ 62/185] python-srpm-macros-0:3.14-12. 100% | 381.6 KiB/s | 24.0 KiB | 00m00s [ 63/185] qt5-srpm-macros-0:5.15.18-2.f 100% | 137.9 KiB/s | 8.7 KiB | 00m00s [ 64/185] rust-srpm-macros-0:28.4-3.fc4 100% | 175.6 KiB/s | 11.1 KiB | 00m00s [ 65/185] tree-sitter-srpm-macros-0:0.4 100% | 213.8 KiB/s | 13.5 KiB | 00m00s [ 66/185] zig-srpm-macros-0:1-8.fc44.no 100% | 139.8 KiB/s | 8.8 KiB | 00m00s [ 67/185] audit-libs-0:4.1.4-1.fc44.x86 100% | 2.1 MiB/s | 141.6 KiB | 00m00s [ 68/185] libeconf-0:0.7.9-3.fc44.x86_6 100% | 574.9 KiB/s | 36.2 KiB | 00m00s [ 69/185] zip-0:3.0-45.fc44.x86_64 100% | 3.0 MiB/s | 264.4 KiB | 00m00s [ 70/185] pam-libs-0:1.7.2-1.fc44.x86_6 100% | 923.0 KiB/s | 59.1 KiB | 00m00s [ 71/185] libxcrypt-0:4.5.2-3.fc44.x86_ 100% | 1.9 MiB/s | 131.2 KiB | 00m00s [ 72/185] setup-0:2.15.0-28.fc44.noarch 100% | 2.0 MiB/s | 157.2 KiB | 00m00s [ 73/185] util-linux-core-0:2.41.5-1.fc 100% | 9.2 MiB/s | 558.1 KiB | 00m00s [ 74/185] zlib-ng-compat-0:2.3.3-3.fc44 100% | 1.4 MiB/s | 91.1 KiB | 00m00s [ 75/185] ncurses-base-0:6.6-1.fc44.noa 100% | 1.2 MiB/s | 88.0 KiB | 00m00s [ 76/185] pcre2-syntax-0:10.47-1.fc44.1 100% | 2.4 MiB/s | 164.7 KiB | 00m00s [ 77/185] lua-libs-0:5.4.8-5.fc44.x86_6 100% | 2.1 MiB/s | 136.6 KiB | 00m00s [ 78/185] rpm-sign-libs-0:6.0.1-2.fc44. 100% | 431.4 KiB/s | 28.0 KiB | 00m00s [ 79/185] libzstd-0:1.5.7-5.fc44.x86_64 100% | 4.9 MiB/s | 364.2 KiB | 00m00s [ 80/185] sqlite-libs-0:3.51.2-1.fc44.x 100% | 9.6 MiB/s | 799.2 KiB | 00m00s [ 81/185] gnulib-l10n-0:20241231-2.fc44 100% | 2.0 MiB/s | 150.3 KiB | 00m00s [ 82/185] fedora-gpg-keys-0:44-1.noarch 100% | 2.1 MiB/s | 141.4 KiB | 00m00s [ 83/185] ima-evm-utils-libs-0:1.6.2-8. 100% | 475.6 KiB/s | 30.0 KiB | 00m00s [ 84/185] libfsverity-0:1.6-4.fc44.x86_ 100% | 300.7 KiB/s | 19.2 KiB | 00m00s [ 85/185] glibc-0:2.43-6.fc44.x86_64 100% | 29.6 MiB/s | 2.4 MiB | 00m00s [ 86/185] tpm2-tss-0:4.1.3-9.fc44.x86_6 100% | 6.0 MiB/s | 440.9 KiB | 00m00s [ 87/185] libgcc-0:16.1.1-2.fc44.x86_64 100% | 3.0 MiB/s | 131.0 KiB | 00m00s [ 88/185] json-c-0:0.18-8.fc44.x86_64 100% | 702.0 KiB/s | 46.3 KiB | 00m00s [ 89/185] glibc-gconv-extra-0:2.43-6.fc 100% | 10.6 MiB/s | 1.6 MiB | 00m00s [ 90/185] libstdc++-0:16.1.1-2.fc44.x86 100% | 19.9 MiB/s | 1.0 MiB | 00m00s [ 91/185] libuuid-0:2.41.5-1.fc44.x86_6 100% | 694.0 KiB/s | 27.1 KiB | 00m00s [ 92/185] libmount-0:2.41.5-1.fc44.x86_ 100% | 4.3 MiB/s | 172.4 KiB | 00m00s [ 93/185] libusb1-0:1.0.30-1.fc44.x86_6 100% | 969.5 KiB/s | 83.4 KiB | 00m00s [ 94/185] libblkid-0:2.41.5-1.fc44.x86_ 100% | 3.2 MiB/s | 129.8 KiB | 00m00s [ 95/185] libselinux-0:3.10-2.fc44.x86_ 100% | 9.9 MiB/s | 101.6 KiB | 00m00s [ 96/185] openssl-libs-1:3.5.7-1.fc44.x 100% | 44.3 MiB/s | 2.7 MiB | 00m00s [ 97/185] crypto-policies-0:20251128-3. 100% | 1.5 MiB/s | 98.3 KiB | 00m00s [ 98/185] gpgverify-0:2.2-4.fc44.noarch 100% | 178.2 KiB/s | 11.2 KiB | 00m00s [ 99/185] libsepol-0:3.10-1.fc44.x86_64 100% | 3.8 MiB/s | 367.6 KiB | 00m00s [100/185] gnupg2-dirmngr-0:2.4.9-16.fc4 100% | 6.9 MiB/s | 281.4 KiB | 00m00s [101/185] gnupg2-gpg-agent-0:2.4.9-16.f 100% | 3.7 MiB/s | 281.2 KiB | 00m00s [102/185] gnupg2-0:2.4.9-16.fc44.x86_64 100% | 9.8 MiB/s | 1.7 MiB | 00m00s [103/185] gnupg2-gpgconf-0:2.4.9-16.fc4 100% | 2.2 MiB/s | 116.6 KiB | 00m00s [104/185] gnupg2-keyboxd-0:2.4.9-16.fc4 100% | 1.9 MiB/s | 96.8 KiB | 00m00s [105/185] gnupg2-verify-0:2.4.9-16.fc44 100% | 3.7 MiB/s | 176.3 KiB | 00m00s [106/185] libassuan-0:2.5.7-5.fc44.x86_ 100% | 1.1 MiB/s | 68.9 KiB | 00m00s [107/185] npth-0:1.8-4.fc44.x86_64 100% | 408.8 KiB/s | 25.8 KiB | 00m00s [108/185] libgpg-error-0:1.58-2.fc44.x8 100% | 2.9 MiB/s | 254.1 KiB | 00m00s [109/185] libksba-0:1.6.7-5.fc44.x86_64 100% | 2.4 MiB/s | 167.4 KiB | 00m00s [110/185] openldap-0:2.6.13-1.fc44.x86_ 100% | 3.7 MiB/s | 271.6 KiB | 00m00s [111/185] libevent-0:2.1.12-17.fc44.x86 100% | 4.1 MiB/s | 287.4 KiB | 00m00s [112/185] libtool-ltdl-0:2.5.4-10.fc44. 100% | 587.8 KiB/s | 37.0 KiB | 00m00s [113/185] cyrus-sasl-lib-0:2.1.28-35.fc 100% | 5.9 MiB/s | 800.7 KiB | 00m00s [114/185] gdbm-libs-1:1.23-11.fc44.x86_ 100% | 918.9 KiB/s | 58.8 KiB | 00m00s [115/185] libcap-0:2.78-1.fc44.x86_64 100% | 1.8 MiB/s | 88.1 KiB | 00m00s [116/185] elfutils-libelf-0:0.195-1.fc4 100% | 3.5 MiB/s | 210.0 KiB | 00m00s [117/185] elfutils-libs-0:0.195-1.fc44. 100% | 7.1 MiB/s | 283.0 KiB | 00m00s [118/185] rpm-sequoia-0:1.10.2-2.fc44.x 100% | 10.3 MiB/s | 911.0 KiB | 00m00s [119/185] file-libs-0:5.47-3.fc44.x86_6 100% | 70.9 MiB/s | 871.8 KiB | 00m00s [120/185] file-0:5.47-3.fc44.x86_64 100% | 16.0 MiB/s | 49.3 KiB | 00m00s [121/185] elfutils-0:0.195-1.fc44.x86_6 100% | 14.4 MiB/s | 588.4 KiB | 00m00s [122/185] elfutils-debuginfod-client-0: 100% | 1.2 MiB/s | 46.2 KiB | 00m00s [123/185] libgomp-0:16.1.1-2.fc44.x86_6 100% | 9.6 MiB/s | 392.4 KiB | 00m00s [124/185] binutils-0:2.46-3.fc44.x86_64 100% | 86.0 MiB/s | 6.1 MiB | 00m00s [125/185] alternatives-0:1.33-5.fc44.x8 100% | 592.0 KiB/s | 40.8 KiB | 00m00s [126/185] jansson-0:2.14-4.fc44.x86_64 100% | 736.2 KiB/s | 47.1 KiB | 00m00s [127/185] debugedit-0:5.3-2.fc44.x86_64 100% | 2.2 MiB/s | 87.8 KiB | 00m00s [128/185] libarchive-0:3.8.7-1.fc44.x86 100% | 10.8 MiB/s | 442.4 KiB | 00m00s [129/185] pkgconf-pkg-config-0:2.5.1-1. 100% | 150.3 KiB/s | 9.5 KiB | 00m00s [130/185] libxml2-0:2.12.10-6.fc44.x86_ 100% | 9.0 MiB/s | 724.6 KiB | 00m00s [131/185] lz4-libs-0:1.10.0-4.fc44.x86_ 100% | 1.2 MiB/s | 77.7 KiB | 00m00s [132/185] pkgconf-0:2.5.1-1.fc44.x86_64 100% | 772.9 KiB/s | 48.7 KiB | 00m00s [133/185] pkgconf-m4-0:2.5.1-1.fc44.noa 100% | 218.3 KiB/s | 13.8 KiB | 00m00s [134/185] libpkgconf-0:2.5.1-1.fc44.x86 100% | 677.4 KiB/s | 42.7 KiB | 00m00s [135/185] curl-0:8.18.0-6.fc44.x86_64 100% | 5.9 MiB/s | 240.0 KiB | 00m00s [136/185] libcap-ng-0:0.9.3-1.fc44.x86_ 100% | 795.9 KiB/s | 34.2 KiB | 00m00s [137/185] libsmartcols-0:2.41.5-1.fc44. 100% | 1.4 MiB/s | 87.4 KiB | 00m00s [138/185] systemd-libs-0:259.7-1.fc44.x 100% | 20.6 MiB/s | 866.4 KiB | 00m00s [139/185] libfdisk-0:2.41.5-1.fc44.x86_ 100% | 4.2 MiB/s | 168.6 KiB | 00m00s [140/185] libsemanage-0:3.10-2.fc44.x86 100% | 31.0 MiB/s | 127.1 KiB | 00m00s [141/185] liblastlog2-0:2.41.5-1.fc44.x 100% | 619.8 KiB/s | 24.2 KiB | 00m00s [142/185] R-srpm-macros-0:1.3.7-2.fc44. 100% | 281.1 KiB/s | 11.0 KiB | 00m00s [143/185] build-reproducibility-srpm-ma 100% | 342.3 KiB/s | 13.3 KiB | 00m00s [144/185] linkdupes-0:0.7.3-2.fc44.x86_ 100% | 8.4 MiB/s | 344.8 KiB | 00m00s [145/185] package-notes-srpm-macros-0:0 100% | 272.9 KiB/s | 10.4 KiB | 00m00s [146/185] pyproject-srpm-macros-0:1.22. 100% | 5.0 MiB/s | 15.4 KiB | 00m00s [147/185] add-determinism-0:0.7.3-2.fc4 100% | 10.6 MiB/s | 854.6 KiB | 00m00s [148/185] qt6-srpm-macros-0:6.11.1-1.fc 100% | 236.2 KiB/s | 9.2 KiB | 00m00s [149/185] ca-certificates-0:2025.2.80_v 100% | 23.8 MiB/s | 974.8 KiB | 00m00s [150/185] libgcrypt-0:1.12.2-1.fc44.x86 100% | 11.8 MiB/s | 629.8 KiB | 00m00s [151/185] gnutls-0:3.8.13-1.fc44.x86_64 100% | 32.4 MiB/s | 1.4 MiB | 00m00s [152/185] libidn2-0:2.3.8-3.fc44.x86_64 100% | 2.6 MiB/s | 175.6 KiB | 00m00s [153/185] libtasn1-0:4.21.0-1.fc44.x86_ 100% | 1.2 MiB/s | 76.0 KiB | 00m00s [154/185] libunistring-0:1.1-11.fc44.x8 100% | 6.8 MiB/s | 547.8 KiB | 00m00s [155/185] nettle-0:3.10.1-3.fc44.x86_64 100% | 5.8 MiB/s | 428.0 KiB | 00m00s [156/185] p11-kit-0:0.26.2-1.fc44.x86_6 100% | 6.9 MiB/s | 555.7 KiB | 00m00s [157/185] libffi-0:3.5.2-2.fc44.x86_64 100% | 672.6 KiB/s | 42.4 KiB | 00m00s [158/185] elfutils-default-yama-scope-0 100% | 244.1 KiB/s | 11.2 KiB | 00m00s [159/185] systemd-standalone-sysusers-0 100% | 3.8 MiB/s | 151.5 KiB | 00m00s [160/185] p11-kit-trust-0:0.26.2-1.fc44 100% | 2.2 MiB/s | 146.4 KiB | 00m00s [161/185] fedora-release-0:44-18.noarch 100% | 207.7 KiB/s | 12.5 KiB | 00m00s [162/185] gdb-minimal-0:17.1-6.fc44.x86 100% | 72.8 MiB/s | 4.7 MiB | 00m00s [163/185] fedora-release-identity-basic 100% | 259.3 KiB/s | 13.2 KiB | 00m00s [164/185] xxhash-libs-0:0.8.3-4.fc44.x8 100% | 654.3 KiB/s | 41.2 KiB | 00m00s [165/185] libcurl-0:8.18.0-6.fc44.x86_6 100% | 10.8 MiB/s | 454.8 KiB | 00m00s [166/185] libpsl-0:0.21.5-7.fc44.x86_64 100% | 1.0 MiB/s | 65.3 KiB | 00m00s [167/185] libssh-0:0.12.0-1.fc44.x86_64 100% | 4.2 MiB/s | 293.8 KiB | 00m00s [168/185] publicsuffix-list-dafsa-0:202 100% | 941.8 KiB/s | 60.3 KiB | 00m00s [169/185] libfido2-0:1.16.0-5.fc44.x86_ 100% | 1.6 MiB/s | 104.5 KiB | 00m00s [170/185] libssh-config-0:0.12.0-1.fc44 100% | 149.5 KiB/s | 9.4 KiB | 00m00s [171/185] libcbor-0:0.13.0-2.fc44.x86_6 100% | 570.7 KiB/s | 36.0 KiB | 00m00s [172/185] selinux-policy-0:44.3-1.fc44. 100% | 609.6 KiB/s | 23.2 KiB | 00m00s [173/185] selinux-policy-targeted-0:44. 100% | 121.0 MiB/s | 6.8 MiB | 00m00s [174/185] krb5-libs-0:1.22.2-4.fc44.x86 100% | 16.3 MiB/s | 802.6 KiB | 00m00s [175/185] rpm-plugin-selinux-0:6.0.1-2. 100% | 304.1 KiB/s | 19.2 KiB | 00m00s [176/185] keyutils-libs-0:1.6.3-7.fc44. 100% | 500.4 KiB/s | 31.5 KiB | 00m00s [177/185] policycoreutils-0:3.10-5.fc44 100% | 33.0 MiB/s | 236.6 KiB | 00m00s [178/185] libselinux-utils-0:3.10-2.fc4 100% | 36.8 MiB/s | 113.1 KiB | 00m00s [179/185] libcom_err-0:1.47.3-4.fc44.x8 100% | 430.3 KiB/s | 27.1 KiB | 00m00s [180/185] libverto-0:0.3.2-12.fc44.x86_ 100% | 335.3 KiB/s | 21.1 KiB | 00m00s [181/185] libnghttp2-0:1.68.0-4.fc44.x8 100% | 1.6 MiB/s | 76.5 KiB | 00m00s [182/185] libnghttp3-0:1.16.0-1.fc44.x8 100% | 1.9 MiB/s | 74.5 KiB | 00m00s [183/185] libbrotli-0:1.2.0-4.fc44.x86_ 100% | 85.0 MiB/s | 348.3 KiB | 00m00s [184/185] ngtcp2-0:1.22.1-1.fc44.x86_64 100% | 2.6 MiB/s | 157.4 KiB | 00m00s [185/185] ngtcp2-crypto-ossl-0:1.22.1-1 100% | 578.2 KiB/s | 27.8 KiB | 00m00s -------------------------------------------------------------------------------- [185/185] Total 100% | 14.9 MiB/s | 68.8 MiB | 00m05s Running transaction Importing OpenPGP key 0x6D9F90A6: UserID : "Fedora (44) " Fingerprint: 36F612DCF27F7D1A48A835E4DBFCF71C6D9F90A6 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-44-primary The key was successfully imported. [ 1/187] Verify package files 100% | 670.0 B/s | 185.0 B | 00m00s >>> Running %pretrans scriptlet: filesystem-0:3.18-52.fc44.x86_64 >>> Finished %pretrans scriptlet: filesystem-0:3.18-52.fc44.x86_64 >>> [RPM] /var/lib/mock/fedora-44-x86_64-1782739298.788803/root/var/cache/dnf/copr_base-3831a3d288f5509e/packages/libselinux-3.10-2.fc44.x86_64.rpm: Header OpenPGP V4 RSA/SHA256 signature, key ID e361170abfad04ff: NOKEY [ 2/187] Prepare transaction 100% | 3.6 KiB/s | 185.0 B | 00m00s [ 3/187] Installing libgcc-0:16.1.1-2. 100% | 266.0 MiB/s | 272.4 KiB | 00m00s [ 4/187] Installing libssh-config-0:0. 100% | 0.0 B/s | 816.0 B | 00m00s [ 5/187] Installing publicsuffix-list- 100% | 0.0 B/s | 71.1 KiB | 00m00s [ 6/187] Installing fedora-release-ide 100% | 0.0 B/s | 888.0 B | 00m00s [ 7/187] Installing fedora-gpg-keys-0: 100% | 44.5 MiB/s | 182.1 KiB | 00m00s [ 8/187] Installing fedora-repos-0:44- 100% | 0.0 B/s | 5.7 KiB | 00m00s [ 9/187] Installing fedora-release-com 100% | 24.3 MiB/s | 24.9 KiB | 00m00s [ 10/187] Installing fedora-release-0:4 100% | 15.1 KiB/s | 124.0 B | 00m00s >>> Running sysusers scriptlet: setup-0:2.15.0-28.fc44.noarch >>> Finished sysusers scriptlet: setup-0:2.15.0-28.fc44.noarch >>> Scriptlet output: >>> Creating group 'adm' with GID 4. >>> Creating group 'audio' with GID 63. >>> Creating group 'cdrom' with GID 11. >>> Creating group 'clock' with GID 103. >>> Creating group 'dialout' with GID 18. >>> Creating group 'disk' with GID 6. >>> Creating group 'floppy' with GID 19. >>> Creating group 'ftp' with GID 50. >>> Creating group 'games' with GID 20. >>> Creating group 'input' with GID 104. >>> Creating group 'kmem' with GID 9. >>> Creating group 'kvm' with GID 36. >>> Creating group 'lock' with GID 54. >>> Creating group 'lp' with GID 7. >>> Creating group 'mail' with GID 12. >>> Creating group 'man' with GID 15. >>> Creating group 'mem' with GID 8. >>> Creating group 'nobody' with GID 65534. >>> Creating group 'render' with GID 105. >>> Creating group 'root' with GID 0. >>> Creating group 'sgx' with GID 106. >>> Creating group 'sys' with GID 3. >>> Creating group 'tape' with GID 33. >>> Creating group 'tty' with GID 5. >>> Creating group 'users' with GID 100. >>> Creating group 'utmp' with GID 22. >>> Creating group 'video' with GID 39. >>> Creating group 'wheel' with GID 10. >>> Creating user 'adm' (adm) with UID 3 and GID 4. >>> Creating group 'bin' with GID 1. >>> Creating user 'bin' (bin) with UID 1 and GID 1. >>> Creating group 'daemon' with GID 2. >>> Creating user 'daemon' (daemon) with UID 2 and GID 2. >>> Creating user 'ftp' (FTP User) with UID 14 and GID 50. >>> Creating user 'games' (games) with UID 12 and GID 100. >>> Creating user 'halt' (halt) with UID 7 and GID 0. >>> Creating user 'lp' (lp) with UID 4 and GID 7. >>> Creating user 'mail' (mail) with UID 8 and GID 12. >>> Creating user 'nobody' (Kernel Overflow User) with UID 65534 and GID 65534. >>> Creating user 'operator' (operator) with UID 11 and GID 0. >>> Creating user 'root' (Super User) with UID 0 and GID 0. >>> Creating user 'shutdown' (shutdown) with UID 6 and GID 0. >>> Creating user 'sync' (sync) with UID 5 and GID 0. >>> [ 11/187] Installing setup-0:2.15.0-28. 100% | 51.0 MiB/s | 730.6 KiB | 00m00s >>> [RPM] /etc/hosts created as /etc/hosts.rpmnew [ 12/187] Installing filesystem-0:3.18- 100% | 3.0 MiB/s | 212.8 KiB | 00m00s [ 13/187] Installing qt6-srpm-macros-0: 100% | 0.0 B/s | 748.0 B | 00m00s [ 14/187] Installing package-notes-srpm 100% | 0.0 B/s | 2.1 KiB | 00m00s [ 15/187] Installing pkgconf-m4-0:2.5.1 100% | 0.0 B/s | 14.7 KiB | 00m00s [ 16/187] Installing gnulib-l10n-0:2024 100% | 215.5 MiB/s | 661.9 KiB | 00m00s [ 17/187] Installing coreutils-common-0 100% | 395.8 MiB/s | 10.7 MiB | 00m00s [ 18/187] Installing pcre2-syntax-0:10. 100% | 277.7 MiB/s | 284.3 KiB | 00m00s [ 19/187] Installing ncurses-base-0:6.6 100% | 86.7 MiB/s | 355.3 KiB | 00m00s [ 20/187] Installing bash-0:5.3.9-3.fc4 100% | 282.7 MiB/s | 8.5 MiB | 00m00s [ 21/187] Installing glibc-common-0:2.4 100% | 60.3 MiB/s | 1.0 MiB | 00m00s [ 22/187] Installing glibc-gconv-extra- 100% | 311.2 MiB/s | 7.5 MiB | 00m00s [ 23/187] Installing glibc-0:2.43-6.fc4 100% | 192.5 MiB/s | 6.9 MiB | 00m00s [ 24/187] Installing ncurses-libs-0:6.6 100% | 238.1 MiB/s | 975.4 KiB | 00m00s [ 25/187] Installing glibc-minimal-lang 100% | 0.0 B/s | 124.0 B | 00m00s [ 26/187] Installing zlib-ng-compat-0:2 100% | 162.6 MiB/s | 166.5 KiB | 00m00s [ 27/187] Installing bzip2-libs-0:1.0.8 100% | 79.7 MiB/s | 81.6 KiB | 00m00s [ 28/187] Installing libgpg-error-0:1.5 100% | 61.7 MiB/s | 947.5 KiB | 00m00s [ 29/187] Installing libstdc++-0:16.1.1 100% | 386.6 MiB/s | 3.1 MiB | 00m00s [ 30/187] Installing libassuan-0:2.5.7- 100% | 161.8 MiB/s | 165.7 KiB | 00m00s [ 31/187] Installing libgcrypt-0:1.12.2 100% | 331.7 MiB/s | 1.7 MiB | 00m00s [ 32/187] Installing readline-0:8.3-4.f 100% | 254.7 MiB/s | 521.6 KiB | 00m00s [ 33/187] Installing xz-libs-1:5.8.2-2. 100% | 213.7 MiB/s | 218.8 KiB | 00m00s [ 34/187] Installing gmp-1:6.3.0-5.fc44 100% | 399.2 MiB/s | 817.5 KiB | 00m00s [ 35/187] Installing libzstd-0:1.5.7-5. 100% | 311.6 MiB/s | 957.4 KiB | 00m00s [ 36/187] Installing elfutils-libelf-0: 100% | 387.3 MiB/s | 1.2 MiB | 00m00s [ 37/187] Installing libuuid-0:2.41.5-1 100% | 0.0 B/s | 38.3 KiB | 00m00s [ 38/187] Installing popt-0:1.19-10.fc4 100% | 68.0 MiB/s | 139.3 KiB | 00m00s [ 39/187] Installing npth-0:1.8-4.fc44. 100% | 0.0 B/s | 50.6 KiB | 00m00s [ 40/187] Installing systemd-libs-0:259 100% | 348.4 MiB/s | 2.4 MiB | 00m00s [ 41/187] Installing libblkid-0:2.41.5- 100% | 268.8 MiB/s | 275.3 KiB | 00m00s [ 42/187] Installing libxcrypt-0:4.5.2- 100% | 289.0 MiB/s | 295.9 KiB | 00m00s [ 43/187] Installing sqlite-libs-0:3.51 100% | 397.6 MiB/s | 1.6 MiB | 00m00s [ 44/187] Installing libsepol-0:3.10-1. 100% | 283.5 MiB/s | 871.0 KiB | 00m00s [ 45/187] Installing gnupg2-gpgconf-0:2 100% | 18.9 MiB/s | 251.8 KiB | 00m00s [ 46/187] Installing pcre2-0:10.47-1.fc 100% | 351.6 MiB/s | 720.0 KiB | 00m00s [ 47/187] Installing libselinux-0:3.10- 100% | 197.5 MiB/s | 202.3 KiB | 00m00s [ 48/187] Installing grep-0:3.12-3.fc44 100% | 62.7 MiB/s | 1.0 MiB | 00m00s [ 49/187] Installing findutils-1:4.10.0 100% | 110.0 MiB/s | 1.9 MiB | 00m00s [ 50/187] Installing libattr-0:2.5.2-8. 100% | 0.0 B/s | 25.2 KiB | 00m00s [ 51/187] Installing libacl-0:2.3.2-6.f 100% | 0.0 B/s | 36.6 KiB | 00m00s [ 52/187] Installing sed-0:4.9-7.fc44.x 100% | 56.3 MiB/s | 865.4 KiB | 00m00s [ 53/187] Installing libtasn1-0:4.21.0- 100% | 178.2 MiB/s | 182.4 KiB | 00m00s [ 54/187] Installing libunistring-0:1.1 100% | 346.9 MiB/s | 1.7 MiB | 00m00s [ 55/187] Installing libidn2-0:2.3.8-3. 100% | 61.0 MiB/s | 562.6 KiB | 00m00s [ 56/187] Installing crypto-policies-0: 100% | 38.5 MiB/s | 157.7 KiB | 00m00s [ 57/187] Installing xz-1:5.8.2-2.fc44. 100% | 76.1 MiB/s | 1.4 MiB | 00m00s [ 58/187] Installing libmount-0:2.41.5- 100% | 384.5 MiB/s | 393.7 KiB | 00m00s [ 59/187] Installing gnupg2-verify-0:2. 100% | 27.2 MiB/s | 361.7 KiB | 00m00s [ 60/187] Installing dwz-0:0.16-3.fc44. 100% | 22.0 MiB/s | 292.3 KiB | 00m00s [ 61/187] Installing mpfr-0:4.2.2-3.fc4 100% | 276.9 MiB/s | 850.8 KiB | 00m00s [ 62/187] Installing gawk-0:5.3.2-3.fc4 100% | 101.9 MiB/s | 1.8 MiB | 00m00s [ 63/187] Installing libksba-0:1.6.7-5. 100% | 203.6 MiB/s | 416.9 KiB | 00m00s [ 64/187] Installing unzip-0:6.0-69.fc4 100% | 33.8 MiB/s | 449.3 KiB | 00m00s [ 65/187] Installing file-libs-0:5.47-3 100% | 677.0 MiB/s | 12.2 MiB | 00m00s [ 66/187] Installing file-0:5.47-3.fc44 100% | 8.4 MiB/s | 102.6 KiB | 00m00s [ 67/187] Installing diffutils-0:3.12-5 100% | 98.3 MiB/s | 1.6 MiB | 00m00s [ 68/187] Installing libeconf-0:0.7.9-3 100% | 64.9 MiB/s | 66.4 KiB | 00m00s [ 69/187] Installing lua-libs-0:5.4.8-5 100% | 276.6 MiB/s | 283.2 KiB | 00m00s [ 70/187] Installing json-c-0:0.18-8.fc 100% | 81.9 MiB/s | 83.9 KiB | 00m00s [ 71/187] Installing alternatives-0:1.3 100% | 5.2 MiB/s | 63.6 KiB | 00m00s [ 72/187] Installing libcap-ng-0:0.9.3- 100% | 69.0 MiB/s | 70.6 KiB | 00m00s [ 73/187] Installing audit-libs-0:4.1.4 100% | 191.9 MiB/s | 393.0 KiB | 00m00s [ 74/187] Installing pam-libs-0:1.7.2-1 100% | 129.8 MiB/s | 132.9 KiB | 00m00s [ 75/187] Installing libcap-0:2.78-1.fc 100% | 16.3 MiB/s | 217.2 KiB | 00m00s [ 76/187] Installing libsemanage-0:3.10 100% | 310.7 MiB/s | 318.2 KiB | 00m00s [ 77/187] Installing libsmartcols-0:2.4 100% | 185.0 MiB/s | 189.5 KiB | 00m00s [ 78/187] Installing libffi-0:3.5.2-2.f 100% | 87.0 MiB/s | 89.1 KiB | 00m00s [ 79/187] Installing p11-kit-0:0.26.2-1 100% | 129.7 MiB/s | 2.6 MiB | 00m00s [ 80/187] Installing p11-kit-trust-0:0. 100% | 22.3 MiB/s | 480.0 KiB | 00m00s [ 81/187] Installing ngtcp2-0:1.22.1-1. 100% | 165.9 MiB/s | 339.8 KiB | 00m00s [ 82/187] Installing openssl-libs-1:3.5 100% | 383.0 MiB/s | 9.2 MiB | 00m00s [ 83/187] Installing coreutils-0:9.10-4 100% | 172.8 MiB/s | 5.7 MiB | 00m00s [ 84/187] Installing ca-certificates-0: 100% | 2.0 MiB/s | 2.5 MiB | 00m01s [ 85/187] Installing gzip-0:1.14-2.fc44 100% | 28.4 MiB/s | 407.1 KiB | 00m00s [ 86/187] Installing libfsverity-0:1.6- 100% | 0.0 B/s | 29.4 KiB | 00m00s [ 87/187] Installing libevent-0:2.1.12- 100% | 319.8 MiB/s | 982.4 KiB | 00m00s [ 88/187] Installing rpm-sequoia-0:1.10 100% | 337.1 MiB/s | 2.4 MiB | 00m00s [ 89/187] Installing ngtcp2-crypto-ossl 100% | 51.2 MiB/s | 52.5 KiB | 00m00s [ 90/187] Installing util-linux-core-0: 100% | 82.2 MiB/s | 1.5 MiB | 00m00s [ 91/187] Installing liblastlog2-0:2.41 100% | 7.1 MiB/s | 43.7 KiB | 00m00s [ 92/187] Installing zip-0:3.0-45.fc44. 100% | 45.7 MiB/s | 701.9 KiB | 00m00s [ 93/187] Installing gnupg2-keyboxd-0:2 100% | 32.9 MiB/s | 202.4 KiB | 00m00s [ 94/187] Installing libpsl-0:0.21.5-7. 100% | 75.6 MiB/s | 77.4 KiB | 00m00s [ 95/187] Installing tar-2:1.35-8.fc44. 100% | 148.9 MiB/s | 3.0 MiB | 00m00s [ 96/187] Installing linkdupes-0:0.7.3- 100% | 54.6 MiB/s | 782.3 KiB | 00m00s [ 97/187] Installing libselinux-utils-0 100% | 22.3 MiB/s | 320.1 KiB | 00m00s [ 98/187] Installing systemd-standalone 100% | 22.7 MiB/s | 302.2 KiB | 00m00s [ 99/187] Installing rpm-libs-0:6.0.1-2 100% | 313.4 MiB/s | 962.8 KiB | 00m00s [100/187] Installing libfdisk-0:2.41.5- 100% | 190.1 MiB/s | 389.4 KiB | 00m00s [101/187] Installing util-linux-0:2.41. 100% | 105.4 MiB/s | 3.6 MiB | 00m00s [102/187] Installing policycoreutils-0: 100% | 37.1 MiB/s | 912.9 KiB | 00m00s [103/187] Installing selinux-policy-0:4 100% | 1.6 MiB/s | 34.5 KiB | 00m00s [104/187] Installing selinux-policy-tar 100% | 209.9 MiB/s | 14.9 MiB | 00m00s [105/187] Installing libusb1-0:1.0.30-1 100% | 21.7 MiB/s | 177.7 KiB | 00m00s >>> Running sysusers scriptlet: tpm2-tss-0:4.1.3-9.fc44.x86_64 >>> Finished sysusers scriptlet: tpm2-tss-0:4.1.3-9.fc44.x86_64 >>> Scriptlet output: >>> Creating group 'tss' with GID 59. >>> Creating user 'tss' (Account used for TPM access) with UID 59 and GID 59. >>> [106/187] Installing tpm2-tss-0:4.1.3-9 100% | 272.2 MiB/s | 1.6 MiB | 00m00s [107/187] Installing ima-evm-utils-libs 100% | 60.4 MiB/s | 61.9 KiB | 00m00s [108/187] Installing gnupg2-gpg-agent-0 100% | 33.7 MiB/s | 690.5 KiB | 00m00s [109/187] Installing zstd-0:1.5.7-5.fc4 100% | 35.3 MiB/s | 506.0 KiB | 00m00s [110/187] Installing nettle-0:3.10.1-3. 100% | 259.6 MiB/s | 797.4 KiB | 00m00s [111/187] Installing gnutls-0:3.8.13-1. 100% | 384.9 MiB/s | 3.8 MiB | 00m00s [112/187] Installing libxml2-0:2.12.10- 100% | 104.2 MiB/s | 1.8 MiB | 00m00s [113/187] Installing bzip2-0:1.0.8-23.f 100% | 7.5 MiB/s | 99.5 KiB | 00m00s [114/187] Installing add-determinism-0: 100% | 128.4 MiB/s | 2.2 MiB | 00m00s [115/187] Installing build-reproducibil 100% | 0.0 B/s | 1.5 KiB | 00m00s [116/187] Installing cpio-0:2.15-9.fc44 100% | 73.6 MiB/s | 1.1 MiB | 00m00s [117/187] Installing ed-0:1.22.5-2.fc44 100% | 11.4 MiB/s | 152.0 KiB | 00m00s [118/187] Installing patch-0:2.8-4.fc44 100% | 17.1 MiB/s | 228.1 KiB | 00m00s [119/187] Installing libtool-ltdl-0:2.5 100% | 69.5 MiB/s | 71.1 KiB | 00m00s [120/187] Installing gdbm-libs-1:1.23-1 100% | 128.3 MiB/s | 131.3 KiB | 00m00s [121/187] Installing cyrus-sasl-lib-0:2 100% | 128.4 MiB/s | 2.3 MiB | 00m00s [122/187] Installing openldap-0:2.6.13- 100% | 219.3 MiB/s | 673.7 KiB | 00m00s [123/187] Installing gnupg2-dirmngr-0:2 100% | 32.7 MiB/s | 636.7 KiB | 00m00s [124/187] Installing gnupg2-0:2.4.9-16. 100% | 224.3 MiB/s | 6.5 MiB | 00m00s [125/187] Installing rpm-sign-libs-0:6. 100% | 39.5 MiB/s | 40.5 KiB | 00m00s [126/187] Installing gpgverify-0:2.2-4. 100% | 0.0 B/s | 9.4 KiB | 00m00s [127/187] Installing libgomp-0:16.1.1-2 100% | 282.6 MiB/s | 578.8 KiB | 00m00s [128/187] Installing jansson-0:2.14-4.f 100% | 88.2 MiB/s | 90.3 KiB | 00m00s [129/187] Installing lz4-libs-0:1.10.0- 100% | 154.6 MiB/s | 158.4 KiB | 00m00s [130/187] Installing libarchive-0:3.8.7 100% | 326.0 MiB/s | 1.0 MiB | 00m00s [131/187] Installing libpkgconf-0:2.5.1 100% | 89.1 MiB/s | 91.3 KiB | 00m00s [132/187] Installing pkgconf-0:2.5.1-1. 100% | 7.2 MiB/s | 95.2 KiB | 00m00s [133/187] Installing pkgconf-pkg-config 100% | 147.8 KiB/s | 1.8 KiB | 00m00s [134/187] Installing xxhash-libs-0:0.8. 100% | 93.2 MiB/s | 95.4 KiB | 00m00s [135/187] Installing libcbor-0:0.13.0-2 100% | 79.0 MiB/s | 80.9 KiB | 00m00s [136/187] Installing libfido2-0:1.16.0- 100% | 242.1 MiB/s | 247.9 KiB | 00m00s [137/187] Installing keyutils-libs-0:1. 100% | 54.3 MiB/s | 55.6 KiB | 00m00s [138/187] Installing libcom_err-0:1.47. 100% | 62.6 MiB/s | 64.1 KiB | 00m00s [139/187] Installing libverto-0:0.3.2-1 100% | 26.4 MiB/s | 27.1 KiB | 00m00s [140/187] Installing krb5-libs-0:1.22.2 100% | 299.3 MiB/s | 2.4 MiB | 00m00s [141/187] Installing libssh-0:0.12.0-1. 100% | 352.1 MiB/s | 721.2 KiB | 00m00s [142/187] Installing libnghttp2-0:1.68. 100% | 163.3 MiB/s | 167.3 KiB | 00m00s [143/187] Installing libnghttp3-0:1.16. 100% | 160.8 MiB/s | 164.6 KiB | 00m00s [144/187] Installing libbrotli-0:1.2.0- 100% | 282.3 MiB/s | 867.3 KiB | 00m00s [145/187] Installing libcurl-0:8.18.0-6 100% | 332.7 MiB/s | 1.0 MiB | 00m00s [146/187] Installing curl-0:8.18.0-6.fc 100% | 21.4 MiB/s | 482.6 KiB | 00m00s [147/187] Installing rpm-0:6.0.1-2.fc44 100% | 82.3 MiB/s | 2.6 MiB | 00m00s [148/187] Installing cmake-srpm-macros- 100% | 0.0 B/s | 804.0 B | 00m00s [149/187] Installing efi-srpm-macros-0: 100% | 0.0 B/s | 41.2 KiB | 00m00s [150/187] Installing java-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [151/187] Installing lua-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [152/187] Installing tree-sitter-srpm-m 100% | 0.0 B/s | 9.3 KiB | 00m00s [153/187] Installing zig-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [154/187] Installing filesystem-srpm-ma 100% | 0.0 B/s | 38.9 KiB | 00m00s [155/187] Installing elfutils-default-y 100% | 408.6 KiB/s | 2.0 KiB | 00m00s [156/187] Installing elfutils-libs-0:0. 100% | 233.4 MiB/s | 717.1 KiB | 00m00s [157/187] Installing elfutils-debuginfo 100% | 6.5 MiB/s | 86.1 KiB | 00m00s [158/187] Installing elfutils-0:0.195-1 100% | 148.8 MiB/s | 3.0 MiB | 00m00s [159/187] Installing binutils-0:2.46-3. 100% | 332.5 MiB/s | 27.3 MiB | 00m00s [160/187] Installing gdb-minimal-0:17.1 100% | 294.9 MiB/s | 14.2 MiB | 00m00s [161/187] Installing debugedit-0:5.3-2. 100% | 16.8 MiB/s | 224.0 KiB | 00m00s [162/187] Installing rpm-build-libs-0:6 100% | 270.6 MiB/s | 277.1 KiB | 00m00s [163/187] Installing rust-srpm-macros-0 100% | 0.0 B/s | 6.4 KiB | 00m00s [164/187] Installing qt5-srpm-macros-0: 100% | 0.0 B/s | 776.0 B | 00m00s [165/187] Installing perl-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [166/187] Installing openblas-srpm-macr 100% | 0.0 B/s | 392.0 B | 00m00s [167/187] Installing ocaml-srpm-macros- 100% | 0.0 B/s | 2.1 KiB | 00m00s [168/187] Installing kernel-srpm-macros 100% | 0.0 B/s | 2.3 KiB | 00m00s [169/187] Installing gnat-srpm-macros-0 100% | 0.0 B/s | 1.3 KiB | 00m00s [170/187] Installing ghc-srpm-macros-0: 100% | 0.0 B/s | 1.0 KiB | 00m00s [171/187] Installing gap-srpm-macros-0: 100% | 0.0 B/s | 2.7 KiB | 00m00s [172/187] Installing fpc-srpm-macros-0: 100% | 0.0 B/s | 420.0 B | 00m00s [173/187] Installing ansible-srpm-macro 100% | 0.0 B/s | 36.2 KiB | 00m00s [174/187] Installing gnome-srpm-macros- 100% | 0.0 B/s | 4.1 KiB | 00m00s [175/187] Installing redhat-rpm-config- 100% | 30.9 MiB/s | 189.9 KiB | 00m00s [176/187] Installing forge-srpm-macros- 100% | 39.3 MiB/s | 40.3 KiB | 00m00s [177/187] Installing rpm-build-0:6.0.1- 100% | 21.2 MiB/s | 303.7 KiB | 00m00s [178/187] Installing erlang-srpm-macros 100% | 0.0 B/s | 2.5 KiB | 00m00s [179/187] Installing pyproject-srpm-mac 100% | 0.0 B/s | 3.8 KiB | 00m00s [180/187] Installing fonts-srpm-macros- 100% | 0.0 B/s | 57.0 KiB | 00m00s [181/187] Installing go-srpm-macros-0:3 100% | 0.0 B/s | 63.0 KiB | 00m00s [182/187] Installing python-srpm-macros 100% | 0.0 B/s | 52.9 KiB | 00m00s [183/187] Installing R-srpm-macros-0:1. 100% | 0.0 B/s | 4.4 KiB | 00m00s [184/187] Installing rpm-plugin-selinux 100% | 0.0 B/s | 12.9 KiB | 00m00s [185/187] Installing which-0:2.25-1.fc4 100% | 6.0 MiB/s | 85.8 KiB | 00m00s [186/187] Installing shadow-utils-2:4.1 100% | 143.9 MiB/s | 4.0 MiB | 00m00s [187/187] Installing info-0:7.2-9.fc44. 100% | 57.1 KiB/s | 366.0 KiB | 00m06s Warning: skipped OpenPGP checks for 8 packages from repository: copr_base Complete! Finish: installing minimal buildroot with dnf5 Start: creating root cache Finish: creating root cache Finish: chroot init INFO: Installed packages: INFO: R-srpm-macros-1.3.7-2.fc44.noarch add-determinism-0.7.3-2.fc44.x86_64 alternatives-1.33-5.fc44.x86_64 ansible-srpm-macros-1-20.1.fc44.noarch audit-libs-4.1.4-1.fc44.x86_64 bash-5.3.9-3.fc44.x86_64 binutils-2.46-3.fc44.x86_64 build-reproducibility-srpm-macros-0.7.3-2.fc44.noarch bzip2-1.0.8-23.fc44.x86_64 bzip2-libs-1.0.8-23.fc44.x86_64 ca-certificates-2025.2.80_v9.0.304-7.fc44.noarch cmake-srpm-macros-4.3.0-1.fc44.noarch coreutils-9.10-4.fc44.x86_64 coreutils-common-9.10-4.fc44.x86_64 cpio-2.15-9.fc44.x86_64 crypto-policies-20251128-3.git19878fe.fc44.noarch curl-8.18.0-6.fc44.x86_64 cyrus-sasl-lib-2.1.28-35.fc44.x86_64 debugedit-5.3-2.fc44.x86_64 diffutils-3.12-5.fc44.x86_64 dwz-0.16-3.fc44.x86_64 ed-1.22.5-2.fc44.x86_64 efi-srpm-macros-6-6.fc44.noarch elfutils-0.195-1.fc44.x86_64 elfutils-debuginfod-client-0.195-1.fc44.x86_64 elfutils-default-yama-scope-0.195-1.fc44.noarch elfutils-libelf-0.195-1.fc44.x86_64 elfutils-libs-0.195-1.fc44.x86_64 erlang-srpm-macros-0.3.11-1.fc44.noarch fedora-gpg-keys-44-1.noarch fedora-release-44-18.noarch fedora-release-common-44-18.noarch fedora-release-identity-basic-44-18.noarch fedora-repos-44-1.noarch file-5.47-3.fc44.x86_64 file-libs-5.47-3.fc44.x86_64 filesystem-3.18-52.fc44.x86_64 filesystem-srpm-macros-3.18-52.fc44.noarch findutils-4.10.0-7.fc44.x86_64 fonts-srpm-macros-5.0.0-2.fc44.noarch forge-srpm-macros-0.4.0-4.fc44.noarch fpc-srpm-macros-1.3-16.fc44.noarch gap-srpm-macros-2-2.fc44.noarch gawk-5.3.2-3.fc44.x86_64 gdb-minimal-17.1-6.fc44.x86_64 gdbm-libs-1.23-11.fc44.x86_64 ghc-srpm-macros-1.10-1.fc44.noarch glibc-2.43-6.fc44.x86_64 glibc-common-2.43-6.fc44.x86_64 glibc-gconv-extra-2.43-6.fc44.x86_64 glibc-minimal-langpack-2.43-6.fc44.x86_64 gmp-6.3.0-5.fc44.x86_64 gnat-srpm-macros-7-2.fc44.noarch gnome-srpm-macros-1.0-1.fc44.noarch gnulib-l10n-20241231-2.fc44.noarch gnupg2-2.4.9-16.fc44.x86_64 gnupg2-dirmngr-2.4.9-16.fc44.x86_64 gnupg2-gpg-agent-2.4.9-16.fc44.x86_64 gnupg2-gpgconf-2.4.9-16.fc44.x86_64 gnupg2-keyboxd-2.4.9-16.fc44.x86_64 gnupg2-verify-2.4.9-16.fc44.x86_64 gnutls-3.8.13-1.fc44.x86_64 go-srpm-macros-3.8.0-2.fc44.noarch gpg-pubkey-36f612dcf27f7d1a48a835e4dbfcf71c6d9f90a6-6786af3b gpgverify-2.2-4.fc44.noarch grep-3.12-3.fc44.x86_64 gzip-1.14-2.fc44.x86_64 ima-evm-utils-libs-1.6.2-8.fc44.x86_64 info-7.2-9.fc44.x86_64 jansson-2.14-4.fc44.x86_64 java-srpm-macros-1-8.fc44.noarch json-c-0.18-8.fc44.x86_64 kernel-srpm-macros-1.0-28.fc44.noarch keyutils-libs-1.6.3-7.fc44.x86_64 krb5-libs-1.22.2-4.fc44.x86_64 libacl-2.3.2-6.fc44.x86_64 libarchive-3.8.7-1.fc44.x86_64 libassuan-2.5.7-5.fc44.x86_64 libattr-2.5.2-8.fc44.x86_64 libblkid-2.41.5-1.fc44.x86_64 libbrotli-1.2.0-4.fc44.x86_64 libcap-2.78-1.fc44.x86_64 libcap-ng-0.9.3-1.fc44.x86_64 libcbor-0.13.0-2.fc44.x86_64 libcom_err-1.47.3-4.fc44.x86_64 libcurl-8.18.0-6.fc44.x86_64 libeconf-0.7.9-3.fc44.x86_64 libevent-2.1.12-17.fc44.x86_64 libfdisk-2.41.5-1.fc44.x86_64 libffi-3.5.2-2.fc44.x86_64 libfido2-1.16.0-5.fc44.x86_64 libfsverity-1.6-4.fc44.x86_64 libgcc-16.1.1-2.fc44.x86_64 libgcrypt-1.12.2-1.fc44.x86_64 libgomp-16.1.1-2.fc44.x86_64 libgpg-error-1.58-2.fc44.x86_64 libidn2-2.3.8-3.fc44.x86_64 libksba-1.6.7-5.fc44.x86_64 liblastlog2-2.41.5-1.fc44.x86_64 libmount-2.41.5-1.fc44.x86_64 libnghttp2-1.68.0-4.fc44.x86_64 libnghttp3-1.16.0-1.fc44.x86_64 libpkgconf-2.5.1-1.fc44.x86_64 libpsl-0.21.5-7.fc44.x86_64 libselinux-3.10-2.fc44.x86_64 libselinux-utils-3.10-2.fc44.x86_64 libsemanage-3.10-2.fc44.x86_64 libsepol-3.10-1.fc44.x86_64 libsmartcols-2.41.5-1.fc44.x86_64 libssh-0.12.0-1.fc44.x86_64 libssh-config-0.12.0-1.fc44.noarch libstdc++-16.1.1-2.fc44.x86_64 libtasn1-4.21.0-1.fc44.x86_64 libtool-ltdl-2.5.4-10.fc44.x86_64 libunistring-1.1-11.fc44.x86_64 libusb1-1.0.30-1.fc44.x86_64 libuuid-2.41.5-1.fc44.x86_64 libverto-0.3.2-12.fc44.x86_64 libxcrypt-4.5.2-3.fc44.x86_64 libxml2-2.12.10-6.fc44.x86_64 libzstd-1.5.7-5.fc44.x86_64 linkdupes-0.7.3-2.fc44.x86_64 lua-libs-5.4.8-5.fc44.x86_64 lua-srpm-macros-1-17.fc44.noarch lz4-libs-1.10.0-4.fc44.x86_64 mpfr-4.2.2-3.fc44.x86_64 ncurses-base-6.6-1.fc44.noarch ncurses-libs-6.6-1.fc44.x86_64 nettle-3.10.1-3.fc44.x86_64 ngtcp2-1.22.1-1.fc44.x86_64 ngtcp2-crypto-ossl-1.22.1-1.fc44.x86_64 npth-1.8-4.fc44.x86_64 ocaml-srpm-macros-11-3.fc44.noarch openblas-srpm-macros-2-21.fc44.noarch openldap-2.6.13-1.fc44.x86_64 openssl-libs-3.5.7-1.fc44.x86_64 p11-kit-0.26.2-1.fc44.x86_64 p11-kit-trust-0.26.2-1.fc44.x86_64 package-notes-srpm-macros-0.20-1.fc44.noarch pam-libs-1.7.2-1.fc44.x86_64 patch-2.8-4.fc44.x86_64 pcre2-10.47-1.fc44.1.x86_64 pcre2-syntax-10.47-1.fc44.1.noarch perl-srpm-macros-1-61.fc44.noarch pkgconf-2.5.1-1.fc44.x86_64 pkgconf-m4-2.5.1-1.fc44.noarch pkgconf-pkg-config-2.5.1-1.fc44.x86_64 policycoreutils-3.10-5.fc44.x86_64 popt-1.19-10.fc44.x86_64 publicsuffix-list-dafsa-20260116-1.fc44.noarch pyproject-srpm-macros-1.22.2-1.fc44.noarch python-srpm-macros-3.14-12.fc44.noarch qt5-srpm-macros-5.15.18-2.fc44.noarch qt6-srpm-macros-6.11.1-1.fc44.noarch readline-8.3-4.fc44.x86_64 redhat-rpm-config-344-2.fc44.noarch rpm-6.0.1-2.fc44.x86_64 rpm-build-6.0.1-2.fc44.x86_64 rpm-build-libs-6.0.1-2.fc44.x86_64 rpm-libs-6.0.1-2.fc44.x86_64 rpm-plugin-selinux-6.0.1-2.fc44.x86_64 rpm-sequoia-1.10.2-2.fc44.x86_64 rpm-sign-libs-6.0.1-2.fc44.x86_64 rust-srpm-macros-28.4-3.fc44.noarch sed-4.9-7.fc44.x86_64 selinux-policy-44.3-1.fc44.noarch selinux-policy-targeted-44.3-1.fc44.noarch setup-2.15.0-28.fc44.noarch shadow-utils-4.19.0-7.fc44.x86_64 sqlite-libs-3.51.2-1.fc44.x86_64 systemd-libs-259.7-1.fc44.x86_64 systemd-standalone-sysusers-259.7-1.fc44.x86_64 tar-1.35-8.fc44.x86_64 tpm2-tss-4.1.3-9.fc44.x86_64 tree-sitter-srpm-macros-0.4.2-2.fc44.noarch unzip-6.0-69.fc44.x86_64 util-linux-2.41.5-1.fc44.x86_64 util-linux-core-2.41.5-1.fc44.x86_64 which-2.25-1.fc44.x86_64 xxhash-libs-0.8.3-4.fc44.x86_64 xz-5.8.2-2.fc44.x86_64 xz-libs-5.8.2-2.fc44.x86_64 zig-srpm-macros-1-8.fc44.noarch zip-3.0-45.fc44.x86_64 zlib-ng-compat-2.3.3-3.fc44.x86_64 zstd-1.5.7-5.fc44.x86_64 Start: buildsrpm Start: rpmbuild -bs Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1782691200 Wrote: /builddir/build/SRPMS/esptool-5.3.1-1.fc44.src.rpm Finish: rpmbuild -bs INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-44-x86_64-1782739298.788803/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names Finish: buildsrpm INFO: Done(/var/lib/copr-rpmbuild/workspace/workdir-8bf70xdq/esptool/esptool.spec) Config(child) 0 minutes 30 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot INFO: Start(/var/lib/copr-rpmbuild/results/esptool-5.3.1-1.fc44.src.rpm) Config(fedora-44-x86_64) Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-44-x86_64-bootstrap-1782739298.788803/root. INFO: reusing tmpfs at /var/lib/mock/fedora-44-x86_64-bootstrap-1782739298.788803/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-44-x86_64-1782739298.788803/root. INFO: calling preinit hooks INFO: enabled root cache Start: unpacking root cache Finish: unpacking root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-6.0.1-2.fc44.x86_64 rpm-sequoia-1.10.2-2.fc44.x86_64 dnf5-5.4.2.1-1.fc44.x86_64 dnf5-plugins-5.4.2.1-1.fc44.x86_64 Finish: chroot init Start: build phase for esptool-5.3.1-1.fc44.src.rpm Start: build setup for esptool-5.3.1-1.fc44.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1782691200 Wrote: /builddir/build/SRPMS/esptool-5.3.1-1.fc44.src.rpm Updating and loading repositories: updates 100% | 19.4 KiB/s | 8.3 KiB | 00m00s fedora 100% | 80.5 KiB/s | 27.2 KiB | 00m00s Copr repository 100% | 25.2 KiB/s | 1.5 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing: python3-devel x86_64 0:3.14.6-1.fc44 updates 2.0 MiB python3-pyelftools noarch 0:0.33-1.fc44 copr_base 2.1 MiB python3-pytest noarch 0:9.0.3-3.fc44 copr_base 23.4 MiB python3-pytest-rerunfailures noarch 0:15.0-8.fc44 copr_base 84.9 KiB python3-requests noarch 0:2.33.1-4.fc44 copr_base 477.3 KiB Installing dependencies: expat x86_64 0:2.8.1-1.fc44 updates 327.4 KiB mpdecimal x86_64 0:4.0.1-3.fc44 fedora 217.1 KiB pyproject-rpm-macros noarch 0:1.22.2-1.fc44 copr_base 147.0 KiB python-pip-wheel noarch 0:26.1.1-7.fc44 copr_base 1.2 MiB python-rpm-macros noarch 0:3.14-12.fc44 fedora 28.0 KiB python3 x86_64 0:3.14.6-1.fc44 updates 28.7 KiB python3-charset-normalizer noarch 0:3.4.7-1.fc44 copr_base 405.6 KiB python3-idna noarch 0:3.11-2.fc44 fedora 738.4 KiB python3-iniconfig noarch 0:2.3.0-4.fc44 copr_base 49.8 KiB python3-libs x86_64 0:3.14.6-1.fc44 updates 43.9 MiB python3-packaging noarch 0:25.0-8.fc44 fedora 607.4 KiB python3-pluggy noarch 0:1.6.0-7.fc44 copr_base 211.5 KiB python3-pygments noarch 0:2.19.1-9.fc44 fedora 11.3 MiB python3-rpm-generators noarch 0:14-14.fc44 fedora 81.7 KiB python3-rpm-macros noarch 0:3.14-12.fc44 fedora 6.5 KiB python3-urllib3 noarch 0:2.7.0-1.fc44 updates 1.1 MiB tzdata noarch 0:2026b-1.fc44 updates 1.2 MiB Transaction Summary: Installing: 22 packages Total size of inbound packages is 19 MiB. Need to download 19 MiB. After this operation, 90 MiB extra will be used (install 90 MiB, remove 0 B). [ 1/22] python3-pytest-0:9.0.3-3.fc44.n 100% | 113.6 MiB/s | 2.3 MiB | 00m00s [ 2/22] python3-pyelftools-0:0.33-1.fc4 100% | 17.0 MiB/s | 419.0 KiB | 00m00s [ 3/22] python3-requests-0:2.33.1-4.fc4 100% | 29.3 MiB/s | 150.2 KiB | 00m00s [ 4/22] python3-devel-0:3.14.6-1.fc44.x 100% | 6.8 MiB/s | 438.4 KiB | 00m00s [ 5/22] python3-libs-0:3.14.6-1.fc44.x8 100% | 96.5 MiB/s | 10.1 MiB | 00m00s [ 6/22] python3-packaging-0:25.0-8.fc44 100% | 446.5 KiB/s | 161.2 KiB | 00m00s [ 7/22] python3-idna-0:3.11-2.fc44.noar 100% | 1.5 MiB/s | 124.7 KiB | 00m00s [ 8/22] expat-0:2.8.1-1.fc44.x86_64 100% | 15.8 MiB/s | 129.7 KiB | 00m00s [ 9/22] mpdecimal-0:4.0.1-3.fc44.x86_64 100% | 1.3 MiB/s | 99.1 KiB | 00m00s [10/22] python3-0:3.14.6-1.fc44.x86_64 100% | 3.5 MiB/s | 28.8 KiB | 00m00s [11/22] python3-urllib3-0:2.7.0-1.fc44. 100% | 24.5 MiB/s | 301.6 KiB | 00m00s [12/22] python3-charset-normalizer-0:3. 100% | 39.5 MiB/s | 121.2 KiB | 00m00s [13/22] python3-iniconfig-0:2.3.0-4.fc4 100% | 12.7 MiB/s | 26.1 KiB | 00m00s [14/22] python3-pluggy-0:1.6.0-7.fc44.n 100% | 13.7 MiB/s | 56.1 KiB | 00m00s [15/22] tzdata-0:2026b-1.fc44.noarch 100% | 43.5 MiB/s | 713.4 KiB | 00m00s [16/22] python-pip-wheel-0:26.1.1-7.fc4 100% | 146.8 MiB/s | 1.2 MiB | 00m00s [17/22] python-rpm-macros-0:3.14-12.fc4 100% | 338.3 KiB/s | 20.0 KiB | 00m00s [18/22] python3-pygments-0:2.19.1-9.fc4 100% | 4.5 MiB/s | 2.7 MiB | 00m01s [19/22] python3-rpm-generators-0:14-14. 100% | 468.6 KiB/s | 28.6 KiB | 00m00s [20/22] pyproject-rpm-macros-0:1.22.2-1 100% | 17.3 MiB/s | 53.1 KiB | 00m00s [21/22] python3-rpm-macros-0:3.14-12.fc 100% | 234.3 KiB/s | 12.4 KiB | 00m00s [22/22] python3-pytest-rerunfailures-0: 100% | 22.9 KiB/s | 32.1 KiB | 00m01s -------------------------------------------------------------------------------- [22/22] Total 100% | 13.4 MiB/s | 19.1 MiB | 00m01s Running transaction [ 1/24] Verify package files 100% | 293.0 B/s | 22.0 B | 00m00s [ 2/24] Prepare transaction 100% | 564.0 B/s | 22.0 B | 00m00s [ 3/24] Installing python-rpm-macros-0: 100% | 28.2 MiB/s | 28.9 KiB | 00m00s [ 4/24] Installing python3-rpm-macros-0 100% | 0.0 B/s | 6.8 KiB | 00m00s [ 5/24] Installing pyproject-rpm-macros 100% | 145.8 MiB/s | 149.3 KiB | 00m00s [ 6/24] Installing python-pip-wheel-0:2 100% | 207.6 MiB/s | 1.2 MiB | 00m00s [ 7/24] Installing tzdata-0:2026b-1.fc4 100% | 52.1 MiB/s | 1.5 MiB | 00m00s [ 8/24] Installing mpdecimal-0:4.0.1-3. 100% | 213.5 MiB/s | 218.6 KiB | 00m00s [ 9/24] Installing expat-0:2.8.1-1.fc44 100% | 16.1 MiB/s | 329.5 KiB | 00m00s [10/24] Installing python3-libs-0:3.14. 100% | 337.9 MiB/s | 44.3 MiB | 00m00s [11/24] Installing python3-0:3.14.6-1.f 100% | 2.3 MiB/s | 30.5 KiB | 00m00s [12/24] Installing python3-packaging-0: 100% | 201.8 MiB/s | 619.9 KiB | 00m00s [13/24] Installing python3-idna-0:3.11- 100% | 242.5 MiB/s | 744.9 KiB | 00m00s [14/24] Installing python3-urllib3-0:2. 100% | 227.7 MiB/s | 1.1 MiB | 00m00s [15/24] Installing python3-rpm-generato 100% | 27.0 MiB/s | 82.9 KiB | 00m00s [16/24] Installing python3-pygments-0:2 100% | 225.2 MiB/s | 11.5 MiB | 00m00s [17/24] Installing python3-charset-norm 100% | 29.0 MiB/s | 415.8 KiB | 00m00s [18/24] Installing python3-iniconfig-0: 100% | 52.9 MiB/s | 54.1 KiB | 00m00s [19/24] Installing python3-pluggy-0:1.6 100% | 70.9 MiB/s | 217.9 KiB | 00m00s [20/24] Installing python3-pytest-0:9.0 100% | 380.8 MiB/s | 23.6 MiB | 00m00s [21/24] Installing python3-pytest-rerun 100% | 85.5 MiB/s | 87.6 KiB | 00m00s [22/24] Installing python3-requests-0:2 100% | 159.3 MiB/s | 489.5 KiB | 00m00s [23/24] Installing python3-devel-0:3.14 100% | 95.5 MiB/s | 2.0 MiB | 00m00s [24/24] Installing python3-pyelftools-0 100% | 54.1 MiB/s | 2.2 MiB | 00m00s Warning: skipped OpenPGP checks for 9 packages from repository: copr_base Complete! Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1782691200 Wrote: /builddir/build/SRPMS/esptool-5.3.1-1.fc44.src.rpm Updating and loading repositories: updates 100% | 21.2 KiB/s | 8.3 KiB | 00m00s fedora 100% | 247.4 KiB/s | 27.2 KiB | 00m00s Copr repository 100% | 81.0 KiB/s | 1.5 KiB | 00m00s Repositories loaded. Nothing to do. Package "python3-devel-3.14.6-1.fc44.x86_64" is already installed. Package "python3-pyelftools-0.33-1.fc44.noarch" is already installed. Package "python3-pytest-9.0.3-3.fc44.noarch" is already installed. Package "python3-pytest-rerunfailures-15.0-8.fc44.noarch" is already installed. Package "python3-requests-2.33.1-4.fc44.noarch" is already installed. Finish: build setup for esptool-5.3.1-1.fc44.src.rpm Start: rpmbuild esptool-5.3.1-1.fc44.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1782691200 Executing(%mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.VmfwpK Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.9Uqdw7 + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + cd /builddir/build/BUILD/esptool-5.3.1-build + rm -rf esptool-5.3.1 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/esptool-5.3.1.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd esptool-5.3.1 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + RPM_EC=0 ++ jobs -p + exit 0 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.QvQ1Io + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + cd esptool-5.3.1 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(packaging)' + echo 'python3dist(pip) >= 19' + '[' -f pyproject.toml ']' + echo '(python3dist(tomli) if python3-devel < 3.11)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + echo -n + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + RPM_TOXENV=py314 + FEDORA=44 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir --output /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-buildrequires --dep-overrides-file /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-dep-overrides Handling setuptools>=64 from build-system.requires Requirement not satisfied: setuptools>=64 Exiting dependency generation pass: build backend + cat /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-buildrequires + rm -rfv '*.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/esptool-5.3.1-1.fc44.buildreqs.nosrc.rpm INFO: Going to install missing dynamic buildrequires Updating and loading repositories: updates 100% | 2.5 KiB/s | 8.3 KiB | 00m03s fedora 100% | 8.8 KiB/s | 27.2 KiB | 00m03s Copr repository 100% | 523.0 B/s | 1.5 KiB | 00m03s Repositories loaded. Package "pyproject-rpm-macros-1.22.2-1.fc44.noarch" is already installed. Package "python3-devel-3.14.6-1.fc44.x86_64" is already installed. Package "python3-pyelftools-0.33-1.fc44.noarch" is already installed. Package "python3-pytest-9.0.3-3.fc44.noarch" is already installed. Package "python3-pytest-rerunfailures-15.0-8.fc44.noarch" is already installed. Package "python3-requests-2.33.1-4.fc44.noarch" is already installed. Package "python3-packaging-25.0-8.fc44.noarch" is already installed. Package Arch Version Repository Size Installing: python3-pip noarch 0:26.1.1-7.fc44 copr_base 11.9 MiB python3-setuptools noarch 0:80.10.2-3.fc44 fedora 7.5 MiB Transaction Summary: Installing: 2 packages Total size of inbound packages is 4 MiB. Need to download 4 MiB. After this operation, 19 MiB extra will be used (install 19 MiB, remove 0 B). [1/2] python3-pip-0:26.1.1-7.fc44.noarc 100% | 125.8 MiB/s | 2.5 MiB | 00m00s [2/2] python3-setuptools-0:80.10.2-3.fc 100% | 2.2 MiB/s | 1.8 MiB | 00m01s -------------------------------------------------------------------------------- [2/2] Total 100% | 5.4 MiB/s | 4.3 MiB | 00m01s Running transaction [1/4] Verify package files 100% | 117.0 B/s | 2.0 B | 00m00s [2/4] Prepare transaction 100% | 90.0 B/s | 2.0 B | 00m00s [3/4] Installing python3-setuptools-0:8 100% | 218.6 MiB/s | 7.7 MiB | 00m00s [4/4] Installing python3-pip-0:26.1.1-7 100% | 161.7 MiB/s | 12.1 MiB | 00m00s Warning: skipped OpenPGP checks for 1 package from repository: copr_base Complete! Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1782691200 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.nJ0CEH + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + cd esptool-5.3.1 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(packaging)' + echo 'python3dist(pip) >= 19' + '[' -f pyproject.toml ']' + echo '(python3dist(tomli) if python3-devel < 3.11)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + echo -n + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + RPM_TOXENV=py314 + FEDORA=44 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir --output /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-buildrequires --dep-overrides-file /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-dep-overrides Handling setuptools>=64 from build-system.requires Requirement satisfied: setuptools>=64 (installed: setuptools 80.10.2) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated !! ******************************************************************************** Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). By 2027-Feb-18, you need to update your project and remove deprecated calls or your builds will no longer be supported. See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! corresp(dist, value, root_dir) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! dist._finalize_license_expression() /usr/lib/python3.14/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running egg_info creating esptool.egg-info writing esptool.egg-info/PKG-INFO writing dependency_links to esptool.egg-info/dependency_links.txt writing entry points to esptool.egg-info/entry_points.txt writing requirements to esptool.egg-info/requires.txt writing top-level names to esptool.egg-info/top_level.txt writing manifest file 'esptool.egg-info/SOURCES.txt' reading manifest file 'esptool.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching '.github' no previously-included directories found matching 'docs' warning: no previously-included files found matching '.git*' adding license file 'LICENSE' writing manifest file 'esptool.egg-info/SOURCES.txt' running dist_info writing esptool.egg-info/PKG-INFO writing dependency_links to esptool.egg-info/dependency_links.txt writing entry points to esptool.egg-info/entry_points.txt writing requirements to esptool.egg-info/requires.txt writing top-level names to esptool.egg-info/top_level.txt reading manifest file 'esptool.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching '.github' no previously-included directories found matching 'docs' warning: no previously-included files found matching '.git*' adding license file 'LICENSE' writing manifest file 'esptool.egg-info/SOURCES.txt' creating '/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/esptool-5.3.1.dist-info' Handling bitstring!=4.2.0,>=3.1.6 from hook generated metadata: Requires-Dist (esptool) Requirement not satisfied: bitstring!=4.2.0,>=3.1.6 Handling cryptography>=43.0.0 from hook generated metadata: Requires-Dist (esptool) Requirement not satisfied: cryptography>=43.0.0 Handling cryptography<49.0.0; platform_system == "Darwin" and platform_machine == "x86_64" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: cryptography<49.0.0; platform_system == "Darwin" and platform_machine == "x86_64" Handling pyserial>=3.3 from hook generated metadata: Requires-Dist (esptool) Requirement not satisfied: pyserial>=3.3 Handling reedsolo<1.8,>=1.5.3 from hook generated metadata: Requires-Dist (esptool) Requirement not satisfied: reedsolo<1.8,>=1.5.3 Handling PyYAML>=5.1 from hook generated metadata: Requires-Dist (esptool) Requirement not satisfied: PyYAML>=5.1 Handling intelhex from hook generated metadata: Requires-Dist (esptool) Requirement not satisfied: intelhex Handling rich_click<2 from hook generated metadata: Requires-Dist (esptool) Requirement not satisfied: rich_click<2 Handling click<9 from hook generated metadata: Requires-Dist (esptool) Requirement not satisfied: click<9 Handling pyelftools; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pyelftools; extra == "dev" Handling coverage~=6.0; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: coverage~=6.0; extra == "dev" Handling pre-commit; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pre-commit; extra == "dev" Handling pytest; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pytest; extra == "dev" Handling pytest-rerunfailures; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pytest-rerunfailures; extra == "dev" Handling requests; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: requests; extra == "dev" Handling czespressif; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: czespressif; extra == "dev" Handling python-pkcs11; extra == "hsm" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: python-pkcs11; extra == "hsm" Handling esp-docs~=2.1; extra == "docs" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: esp-docs~=2.1; extra == "docs" Handling sphinx-tabs; extra == "docs" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: sphinx-tabs; extra == "docs" + cat /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-buildrequires + rm -rfv esptool-5.3.1.dist-info/ removed 'esptool-5.3.1.dist-info/licenses/LICENSE' removed directory 'esptool-5.3.1.dist-info/licenses' removed 'esptool-5.3.1.dist-info/METADATA' removed 'esptool-5.3.1.dist-info/entry_points.txt' removed 'esptool-5.3.1.dist-info/top_level.txt' removed directory 'esptool-5.3.1.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/esptool-5.3.1-1.fc44.buildreqs.nosrc.rpm INFO: Going to install missing dynamic buildrequires Updating and loading repositories: updates 100% | 37.9 KiB/s | 8.3 KiB | 00m00s fedora 100% | 173.4 KiB/s | 27.2 KiB | 00m00s Copr repository 100% | 49.6 KiB/s | 1.5 KiB | 00m00s Repositories loaded. Package "pyproject-rpm-macros-1.22.2-1.fc44.noarch" is already installed. Package "python3-devel-3.14.6-1.fc44.x86_64" is already installed. Package "python3-pyelftools-0.33-1.fc44.noarch" is already installed. Package "python3-pytest-9.0.3-3.fc44.noarch" is already installed. Package "python3-pytest-rerunfailures-15.0-8.fc44.noarch" is already installed. Package "python3-requests-2.33.1-4.fc44.noarch" is already installed. Package "python3-packaging-25.0-8.fc44.noarch" is already installed. Package "python3-pip-26.1.1-7.fc44.noarch" is already installed. Package "python3-setuptools-80.10.2-3.fc44.noarch" is already installed. Package Arch Version Repository Size Installing: python3-bitstring noarch 0:4.1.4-12.fc44 copr_base 856.2 KiB python3-click noarch 1:8.3.3-1.fc44 copr_base 1.2 MiB python3-cryptography x86_64 0:48.0.0-3.fc44 copr_base 6.4 MiB python3-intelhex noarch 0:2.3.0-23.fc44 copr_base 399.3 KiB python3-pyserial noarch 0:3.5-24.fc44 copr_base 872.6 KiB python3-pyyaml x86_64 0:6.0.3-3.fc44 fedora 789.4 KiB python3-reedsolo x86_64 0:1.7.0-15.fc44 fedora 624.7 KiB python3-rich-click noarch 0:1.8.9-4.fc44 fedora 320.9 KiB Installing dependencies: libyaml x86_64 0:0.2.5-18.fc44 fedora 138.5 KiB python3-bitarray x86_64 0:2.8.5-13.fc44 copr_base 1.3 MiB python3-cffi x86_64 0:2.0.0-4.fc44 copr_base 1.4 MiB python3-markdown-it-py noarch 0:3.0.0-14.fc44 fedora 541.5 KiB python3-mdurl noarch 0:0.1.2-14.fc44 fedora 44.0 KiB python3-pycparser noarch 0:3.00-1.fc44 copr_base 669.5 KiB python3-rich noarch 0:14.3.2-1.fc44 fedora 3.4 MiB python3-typing-extensions noarch 0:4.15.0-3.fc44 fedora 538.4 KiB Transaction Summary: Installing: 16 packages Total size of inbound packages is 5 MiB. Need to download 5 MiB. After this operation, 19 MiB extra will be used (install 19 MiB, remove 0 B). [ 1/16] python3-bitstring-0:4.1.4-12.fc 100% | 10.1 MiB/s | 165.1 KiB | 00m00s [ 2/16] python3-click-1:8.3.3-1.fc44.no 100% | 3.8 MiB/s | 261.2 KiB | 00m00s [ 3/16] python3-cryptography-0:48.0.0-3 100% | 131.0 MiB/s | 1.7 MiB | 00m00s [ 4/16] python3-intelhex-0:2.3.0-23.fc4 100% | 18.0 MiB/s | 92.0 KiB | 00m00s [ 5/16] python3-pyserial-0:3.5-24.fc44. 100% | 34.6 MiB/s | 212.8 KiB | 00m00s [ 6/16] python3-rich-click-0:1.8.9-4.fc 100% | 361.3 KiB/s | 97.2 KiB | 00m00s [ 7/16] python3-reedsolo-0:1.7.0-15.fc4 100% | 559.6 KiB/s | 228.9 KiB | 00m00s [ 8/16] python3-typing-extensions-0:4.1 100% | 1.7 MiB/s | 112.4 KiB | 00m00s [ 9/16] python3-pyyaml-0:6.0.3-3.fc44.x 100% | 611.6 KiB/s | 238.5 KiB | 00m00s [10/16] libyaml-0:0.2.5-18.fc44.x86_64 100% | 970.0 KiB/s | 63.0 KiB | 00m00s [11/16] python3-rich-0:14.3.2-1.fc44.no 100% | 2.0 MiB/s | 663.8 KiB | 00m00s [12/16] python3-cffi-0:2.0.0-4.fc44.x86 100% | 76.4 MiB/s | 313.1 KiB | 00m00s [13/16] python3-pycparser-0:3.00-1.fc44 100% | 43.7 MiB/s | 134.1 KiB | 00m00s [14/16] python3-mdurl-0:0.1.2-14.fc44.n 100% | 482.6 KiB/s | 31.4 KiB | 00m00s [15/16] python3-bitarray-0:2.8.5-13.fc4 100% | 33.8 MiB/s | 242.4 KiB | 00m00s [16/16] python3-markdown-it-py-0:3.0.0- 100% | 1.5 MiB/s | 205.2 KiB | 00m00s -------------------------------------------------------------------------------- [16/16] Total 100% | 7.4 MiB/s | 4.7 MiB | 00m01s Running transaction [ 1/18] Verify package files 100% | 800.0 B/s | 16.0 B | 00m00s [ 2/18] Prepare transaction 100% | 615.0 B/s | 16.0 B | 00m00s [ 3/18] Installing python3-bitarray-0:2 100% | 316.0 MiB/s | 1.3 MiB | 00m00s [ 4/18] Installing python3-pycparser-0: 100% | 221.1 MiB/s | 679.4 KiB | 00m00s [ 5/18] Installing python3-cffi-0:2.0.0 100% | 344.2 MiB/s | 1.4 MiB | 00m00s [ 6/18] Installing python3-mdurl-0:0.1. 100% | 48.3 MiB/s | 49.4 KiB | 00m00s [ 7/18] Installing python3-markdown-it- 100% | 30.1 MiB/s | 585.7 KiB | 00m00s [ 8/18] Installing python3-rich-0:14.3. 100% | 316.0 MiB/s | 3.5 MiB | 00m00s [ 9/18] Installing libyaml-0:0.2.5-18.f 100% | 136.6 MiB/s | 139.9 KiB | 00m00s [10/18] Installing python3-typing-exten 100% | 264.0 MiB/s | 540.7 KiB | 00m00s [11/18] Installing python3-click-1:8.3. 100% | 312.0 MiB/s | 1.2 MiB | 00m00s [12/18] Installing python3-rich-click-0 100% | 23.1 MiB/s | 331.3 KiB | 00m00s [13/18] Installing python3-pyyaml-0:6.0 100% | 196.1 MiB/s | 803.4 KiB | 00m00s [14/18] Installing python3-cryptography 100% | 269.7 MiB/s | 6.5 MiB | 00m00s [15/18] Installing python3-bitstring-0: 100% | 282.0 MiB/s | 866.2 KiB | 00m00s [16/18] Installing python3-pyserial-0:3 100% | 54.6 MiB/s | 894.4 KiB | 00m00s [17/18] Installing python3-intelhex-0:2 100% | 197.9 MiB/s | 405.3 KiB | 00m00s [18/18] Installing python3-reedsolo-0:1 100% | 40.9 MiB/s | 627.6 KiB | 00m00s Warning: skipped OpenPGP checks for 8 packages from repository: copr_base Complete! Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1782691200 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.4IEKzb + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + cd esptool-5.3.1 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(packaging)' + echo 'python3dist(pip) >= 19' + '[' -f pyproject.toml ']' + echo '(python3dist(tomli) if python3-devel < 3.11)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + echo -n + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + RPM_TOXENV=py314 + FEDORA=44 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir --output /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-buildrequires --dep-overrides-file /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-dep-overrides Handling setuptools>=64 from build-system.requires Requirement satisfied: setuptools>=64 (installed: setuptools 80.10.2) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated !! ******************************************************************************** Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). By 2027-Feb-18, you need to update your project and remove deprecated calls or your builds will no longer be supported. See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! corresp(dist, value, root_dir) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! dist._finalize_license_expression() /usr/lib/python3.14/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running egg_info writing esptool.egg-info/PKG-INFO writing dependency_links to esptool.egg-info/dependency_links.txt writing entry points to esptool.egg-info/entry_points.txt writing requirements to esptool.egg-info/requires.txt writing top-level names to esptool.egg-info/top_level.txt reading manifest file 'esptool.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching '.github' no previously-included directories found matching 'docs' warning: no previously-included files found matching '.git*' adding license file 'LICENSE' writing manifest file 'esptool.egg-info/SOURCES.txt' running dist_info writing esptool.egg-info/PKG-INFO writing dependency_links to esptool.egg-info/dependency_links.txt writing entry points to esptool.egg-info/entry_points.txt writing requirements to esptool.egg-info/requires.txt writing top-level names to esptool.egg-info/top_level.txt reading manifest file 'esptool.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching '.github' no previously-included directories found matching 'docs' warning: no previously-included files found matching '.git*' adding license file 'LICENSE' writing manifest file 'esptool.egg-info/SOURCES.txt' creating '/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/esptool-5.3.1.dist-info' Handling bitstring!=4.2.0,>=3.1.6 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: bitstring!=4.2.0,>=3.1.6 (installed: bitstring 4.1.4) Handling cryptography>=43.0.0 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: cryptography>=43.0.0 (installed: cryptography 48.0.0) Handling cryptography<49.0.0; platform_system == "Darwin" and platform_machine == "x86_64" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: cryptography<49.0.0; platform_system == "Darwin" and platform_machine == "x86_64" Handling pyserial>=3.3 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: pyserial>=3.3 (installed: pyserial 3.5) Handling reedsolo<1.8,>=1.5.3 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: reedsolo<1.8,>=1.5.3 (installed: reedsolo 1.7.0) Handling PyYAML>=5.1 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: PyYAML>=5.1 (installed: PyYAML 6.0.3) Handling intelhex from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: intelhex (installed: intelhex 2.3.0) Handling rich_click<2 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: rich_click<2 (installed: rich_click 1.8.9) Handling click<9 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: click<9 (installed: click 8.3.3) Handling pyelftools; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pyelftools; extra == "dev" Handling coverage~=6.0; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: coverage~=6.0; extra == "dev" Handling pre-commit; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pre-commit; extra == "dev" Handling pytest; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pytest; extra == "dev" Handling pytest-rerunfailures; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pytest-rerunfailures; extra == "dev" Handling requests; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: requests; extra == "dev" Handling czespressif; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: czespressif; extra == "dev" Handling python-pkcs11; extra == "hsm" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: python-pkcs11; extra == "hsm" Handling esp-docs~=2.1; extra == "docs" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: esp-docs~=2.1; extra == "docs" Handling sphinx-tabs; extra == "docs" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: sphinx-tabs; extra == "docs" + cat /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-buildrequires + rm -rfv esptool-5.3.1.dist-info/ removed 'esptool-5.3.1.dist-info/licenses/LICENSE' removed directory 'esptool-5.3.1.dist-info/licenses' removed 'esptool-5.3.1.dist-info/METADATA' removed 'esptool-5.3.1.dist-info/top_level.txt' removed 'esptool-5.3.1.dist-info/entry_points.txt' removed directory 'esptool-5.3.1.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/esptool-5.3.1-1.fc44.buildreqs.nosrc.rpm INFO: Going to install missing dynamic buildrequires Updating and loading repositories: updates 100% | 11.4 KiB/s | 8.3 KiB | 00m01s fedora 100% | 41.2 KiB/s | 27.2 KiB | 00m01s Copr repository 100% | 2.6 KiB/s | 1.5 KiB | 00m01s Repositories loaded. Nothing to do. Package "pyproject-rpm-macros-1.22.2-1.fc44.noarch" is already installed. Package "python3-devel-3.14.6-1.fc44.x86_64" is already installed. Package "python3-pyelftools-0.33-1.fc44.noarch" is already installed. Package "python3-pytest-9.0.3-3.fc44.noarch" is already installed. Package "python3-pytest-rerunfailures-15.0-8.fc44.noarch" is already installed. Package "python3-requests-2.33.1-4.fc44.noarch" is already installed. Package "python3-click-1:8.3.3-1.fc44.noarch" is already installed. Package "python3-cryptography-48.0.0-3.fc44.x86_64" is already installed. Package "python3-intelhex-2.3.0-23.fc44.noarch" is already installed. Package "python3-packaging-25.0-8.fc44.noarch" is already installed. Package "python3-pip-26.1.1-7.fc44.noarch" is already installed. Package "python3-pyserial-3.5-24.fc44.noarch" is already installed. Package "python3-pyyaml-6.0.3-3.fc44.x86_64" is already installed. Package "python3-rich-click-1.8.9-4.fc44.noarch" is already installed. Package "python3-setuptools-80.10.2-3.fc44.noarch" is already installed. Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1782691200 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.GryMmo + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + cd esptool-5.3.1 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(packaging)' + echo 'python3dist(pip) >= 19' + '[' -f pyproject.toml ']' + echo '(python3dist(tomli) if python3-devel < 3.11)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + echo -n + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + RPM_TOXENV=py314 + FEDORA=44 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir --output /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-buildrequires --dep-overrides-file /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-dep-overrides Handling setuptools>=64 from build-system.requires Requirement satisfied: setuptools>=64 (installed: setuptools 80.10.2) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated !! ******************************************************************************** Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). By 2027-Feb-18, you need to update your project and remove deprecated calls or your builds will no longer be supported. See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! corresp(dist, value, root_dir) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! dist._finalize_license_expression() /usr/lib/python3.14/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running egg_info writing esptool.egg-info/PKG-INFO writing dependency_links to esptool.egg-info/dependency_links.txt writing entry points to esptool.egg-info/entry_points.txt writing requirements to esptool.egg-info/requires.txt writing top-level names to esptool.egg-info/top_level.txt reading manifest file 'esptool.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching '.github' no previously-included directories found matching 'docs' warning: no previously-included files found matching '.git*' adding license file 'LICENSE' writing manifest file 'esptool.egg-info/SOURCES.txt' running dist_info writing esptool.egg-info/PKG-INFO writing dependency_links to esptool.egg-info/dependency_links.txt writing entry points to esptool.egg-info/entry_points.txt writing requirements to esptool.egg-info/requires.txt writing top-level names to esptool.egg-info/top_level.txt reading manifest file 'esptool.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching '.github' no previously-included directories found matching 'docs' warning: no previously-included files found matching '.git*' adding license file 'LICENSE' writing manifest file 'esptool.egg-info/SOURCES.txt' creating '/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/esptool-5.3.1.dist-info' Handling bitstring!=4.2.0,>=3.1.6 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: bitstring!=4.2.0,>=3.1.6 (installed: bitstring 4.1.4) Handling cryptography>=43.0.0 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: cryptography>=43.0.0 (installed: cryptography 48.0.0) Handling cryptography<49.0.0; platform_system == "Darwin" and platform_machine == "x86_64" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: cryptography<49.0.0; platform_system == "Darwin" and platform_machine == "x86_64" Handling pyserial>=3.3 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: pyserial>=3.3 (installed: pyserial 3.5) Handling reedsolo<1.8,>=1.5.3 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: reedsolo<1.8,>=1.5.3 (installed: reedsolo 1.7.0) Handling PyYAML>=5.1 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: PyYAML>=5.1 (installed: PyYAML 6.0.3) Handling intelhex from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: intelhex (installed: intelhex 2.3.0) Handling rich_click<2 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: rich_click<2 (installed: rich_click 1.8.9) Handling click<9 from hook generated metadata: Requires-Dist (esptool) Requirement satisfied: click<9 (installed: click 8.3.3) Handling pyelftools; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pyelftools; extra == "dev" Handling coverage~=6.0; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: coverage~=6.0; extra == "dev" Handling pre-commit; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pre-commit; extra == "dev" Handling pytest; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pytest; extra == "dev" Handling pytest-rerunfailures; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: pytest-rerunfailures; extra == "dev" Handling requests; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: requests; extra == "dev" Handling czespressif; extra == "dev" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: czespressif; extra == "dev" Handling python-pkcs11; extra == "hsm" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: python-pkcs11; extra == "hsm" Handling esp-docs~=2.1; extra == "docs" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: esp-docs~=2.1; extra == "docs" Handling sphinx-tabs; extra == "docs" from hook generated metadata: Requires-Dist (esptool) Ignoring alien requirement: sphinx-tabs; extra == "docs" + cat /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-buildrequires + rm -rfv esptool-5.3.1.dist-info/ removed 'esptool-5.3.1.dist-info/licenses/LICENSE' removed directory 'esptool-5.3.1.dist-info/licenses' removed 'esptool-5.3.1.dist-info/METADATA' removed 'esptool-5.3.1.dist-info/entry_points.txt' removed 'esptool-5.3.1.dist-info/top_level.txt' removed directory 'esptool-5.3.1.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.KkHDEn + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd esptool-5.3.1 + mkdir -p /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_wheel.py /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir Processing ./. Preparing metadata (pyproject.toml): started Running command Preparing metadata (pyproject.toml) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated !! ******************************************************************************** Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). By 2027-Feb-18, you need to update your project and remove deprecated calls or your builds will no longer be supported. See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! corresp(dist, value, root_dir) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! dist._finalize_license_expression() /usr/lib/python3.14/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running dist_info creating /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info writing /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info/PKG-INFO writing dependency_links to /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info/dependency_links.txt writing entry points to /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info/entry_points.txt writing requirements to /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info/requires.txt writing top-level names to /builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info/top_level.txt writing manifest file '/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info/SOURCES.txt' reading manifest file '/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching '.github' no previously-included directories found matching 'docs' warning: no previously-included files found matching '.git*' adding license file 'LICENSE' writing manifest file '/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool.egg-info/SOURCES.txt' creating '/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir/pip-modern-metadata-rao9o_gy/esptool-5.3.1.dist-info' Preparing metadata (pyproject.toml): finished with status 'done' Building wheels for collected packages: esptool Building wheel for esptool (pyproject.toml): started Running command Building wheel for esptool (pyproject.toml) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated !! ******************************************************************************** Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). By 2027-Feb-18, you need to update your project and remove deprecated calls or your builds will no longer be supported. See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! corresp(dist, value, root_dir) /usr/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! dist._finalize_license_expression() /usr/lib/python3.14/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running bdist_wheel running build running build_py creating build/lib/esptool copying esptool/util.py -> build/lib/esptool copying esptool/uf2_writer.py -> build/lib/esptool copying esptool/reset.py -> build/lib/esptool copying esptool/logger.py -> build/lib/esptool copying esptool/loader.py -> build/lib/esptool copying esptool/config.py -> build/lib/esptool copying esptool/cmds.py -> build/lib/esptool copying esptool/cli_util.py -> build/lib/esptool copying esptool/bin_image.py -> build/lib/esptool copying esptool/__main__.py -> build/lib/esptool copying esptool/__init__.py -> build/lib/esptool creating build/lib/espsecure copying espsecure/__main__.py -> build/lib/espsecure copying espsecure/__init__.py -> build/lib/espsecure creating build/lib/espefuse copying espefuse/efuse_interface.py -> build/lib/espefuse copying espefuse/cli_util.py -> build/lib/espefuse copying espefuse/__main__.py -> build/lib/espefuse copying espefuse/__init__.py -> build/lib/espefuse creating build/lib/esp_rfc2217_server copying esp_rfc2217_server/redirector.py -> build/lib/esp_rfc2217_server copying esp_rfc2217_server/esp_port_manager.py -> build/lib/esp_rfc2217_server copying esp_rfc2217_server/__main__.py -> build/lib/esp_rfc2217_server copying esp_rfc2217_server/__init__.py -> build/lib/esp_rfc2217_server creating build/lib/esptool/targets copying esptool/targets/esp8266.py -> build/lib/esptool/targets copying esptool/targets/esp32s31.py -> build/lib/esptool/targets copying esptool/targets/esp32s3.py -> build/lib/esptool/targets copying esptool/targets/esp32s2.py -> build/lib/esptool/targets copying esptool/targets/esp32p4.py -> build/lib/esptool/targets copying esptool/targets/esp32h4.py -> build/lib/esptool/targets copying esptool/targets/esp32h21.py -> build/lib/esptool/targets copying esptool/targets/esp32h2.py -> build/lib/esptool/targets copying esptool/targets/esp32e22.py -> build/lib/esptool/targets copying esptool/targets/esp32c61.py -> build/lib/esptool/targets copying esptool/targets/esp32c6.py -> build/lib/esptool/targets copying esptool/targets/esp32c5.py -> build/lib/esptool/targets copying esptool/targets/esp32c3.py -> build/lib/esptool/targets copying esptool/targets/esp32c2.py -> build/lib/esptool/targets copying esptool/targets/esp32.py -> build/lib/esptool/targets copying esptool/targets/__init__.py -> build/lib/esptool/targets creating build/lib/espsecure/esp_hsm_sign copying espsecure/esp_hsm_sign/exceptions.py -> build/lib/espsecure/esp_hsm_sign copying espsecure/esp_hsm_sign/__init__.py -> build/lib/espsecure/esp_hsm_sign creating build/lib/espefuse/efuse copying espefuse/efuse/util.py -> build/lib/espefuse/efuse copying espefuse/efuse/mem_definition_base.py -> build/lib/espefuse/efuse copying espefuse/efuse/emulate_efuse_controller_base.py -> build/lib/espefuse/efuse copying espefuse/efuse/csv_table_parser.py -> build/lib/espefuse/efuse copying espefuse/efuse/base_operations.py -> build/lib/espefuse/efuse copying espefuse/efuse/base_fields.py -> build/lib/espefuse/efuse copying espefuse/efuse/__init__.py -> build/lib/espefuse/efuse creating build/lib/espefuse/efuse/esp32s31 copying espefuse/efuse/esp32s31/operations.py -> build/lib/espefuse/efuse/esp32s31 copying espefuse/efuse/esp32s31/mem_definition.py -> build/lib/espefuse/efuse/esp32s31 copying espefuse/efuse/esp32s31/fields.py -> build/lib/espefuse/efuse/esp32s31 copying espefuse/efuse/esp32s31/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32s31 copying espefuse/efuse/esp32s31/__init__.py -> build/lib/espefuse/efuse/esp32s31 creating build/lib/espefuse/efuse/esp32s3 copying espefuse/efuse/esp32s3/operations.py -> build/lib/espefuse/efuse/esp32s3 copying espefuse/efuse/esp32s3/mem_definition.py -> build/lib/espefuse/efuse/esp32s3 copying espefuse/efuse/esp32s3/fields.py -> build/lib/espefuse/efuse/esp32s3 copying espefuse/efuse/esp32s3/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32s3 copying espefuse/efuse/esp32s3/__init__.py -> build/lib/espefuse/efuse/esp32s3 creating build/lib/espefuse/efuse/esp32s2 copying espefuse/efuse/esp32s2/operations.py -> build/lib/espefuse/efuse/esp32s2 copying espefuse/efuse/esp32s2/mem_definition.py -> build/lib/espefuse/efuse/esp32s2 copying espefuse/efuse/esp32s2/fields.py -> build/lib/espefuse/efuse/esp32s2 copying espefuse/efuse/esp32s2/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32s2 copying espefuse/efuse/esp32s2/__init__.py -> build/lib/espefuse/efuse/esp32s2 creating build/lib/espefuse/efuse/esp32p4 copying espefuse/efuse/esp32p4/operations.py -> build/lib/espefuse/efuse/esp32p4 copying espefuse/efuse/esp32p4/mem_definition.py -> build/lib/espefuse/efuse/esp32p4 copying espefuse/efuse/esp32p4/fields.py -> build/lib/espefuse/efuse/esp32p4 copying espefuse/efuse/esp32p4/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32p4 copying espefuse/efuse/esp32p4/__init__.py -> build/lib/espefuse/efuse/esp32p4 creating build/lib/espefuse/efuse/esp32h4 copying espefuse/efuse/esp32h4/operations.py -> build/lib/espefuse/efuse/esp32h4 copying espefuse/efuse/esp32h4/mem_definition.py -> build/lib/espefuse/efuse/esp32h4 copying espefuse/efuse/esp32h4/fields.py -> build/lib/espefuse/efuse/esp32h4 copying espefuse/efuse/esp32h4/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32h4 copying espefuse/efuse/esp32h4/__init__.py -> build/lib/espefuse/efuse/esp32h4 creating build/lib/espefuse/efuse/esp32h21 copying espefuse/efuse/esp32h21/operations.py -> build/lib/espefuse/efuse/esp32h21 copying espefuse/efuse/esp32h21/mem_definition.py -> build/lib/espefuse/efuse/esp32h21 copying espefuse/efuse/esp32h21/fields.py -> build/lib/espefuse/efuse/esp32h21 copying espefuse/efuse/esp32h21/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32h21 copying espefuse/efuse/esp32h21/__init__.py -> build/lib/espefuse/efuse/esp32h21 creating build/lib/espefuse/efuse/esp32h2 copying espefuse/efuse/esp32h2/operations.py -> build/lib/espefuse/efuse/esp32h2 copying espefuse/efuse/esp32h2/mem_definition.py -> build/lib/espefuse/efuse/esp32h2 copying espefuse/efuse/esp32h2/fields.py -> build/lib/espefuse/efuse/esp32h2 copying espefuse/efuse/esp32h2/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32h2 copying espefuse/efuse/esp32h2/__init__.py -> build/lib/espefuse/efuse/esp32h2 creating build/lib/espefuse/efuse/esp32e22 copying espefuse/efuse/esp32e22/operations.py -> build/lib/espefuse/efuse/esp32e22 copying espefuse/efuse/esp32e22/mem_definition.py -> build/lib/espefuse/efuse/esp32e22 copying espefuse/efuse/esp32e22/fields.py -> build/lib/espefuse/efuse/esp32e22 copying espefuse/efuse/esp32e22/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32e22 copying espefuse/efuse/esp32e22/__init__.py -> build/lib/espefuse/efuse/esp32e22 creating build/lib/espefuse/efuse/esp32c61 copying espefuse/efuse/esp32c61/operations.py -> build/lib/espefuse/efuse/esp32c61 copying espefuse/efuse/esp32c61/mem_definition.py -> build/lib/espefuse/efuse/esp32c61 copying espefuse/efuse/esp32c61/fields.py -> build/lib/espefuse/efuse/esp32c61 copying espefuse/efuse/esp32c61/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32c61 copying espefuse/efuse/esp32c61/__init__.py -> build/lib/espefuse/efuse/esp32c61 creating build/lib/espefuse/efuse/esp32c6 copying espefuse/efuse/esp32c6/operations.py -> build/lib/espefuse/efuse/esp32c6 copying espefuse/efuse/esp32c6/mem_definition.py -> build/lib/espefuse/efuse/esp32c6 copying espefuse/efuse/esp32c6/fields.py -> build/lib/espefuse/efuse/esp32c6 copying espefuse/efuse/esp32c6/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32c6 copying espefuse/efuse/esp32c6/__init__.py -> build/lib/espefuse/efuse/esp32c6 creating build/lib/espefuse/efuse/esp32c5 copying espefuse/efuse/esp32c5/operations.py -> build/lib/espefuse/efuse/esp32c5 copying espefuse/efuse/esp32c5/mem_definition.py -> build/lib/espefuse/efuse/esp32c5 copying espefuse/efuse/esp32c5/fields.py -> build/lib/espefuse/efuse/esp32c5 copying espefuse/efuse/esp32c5/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32c5 copying espefuse/efuse/esp32c5/__init__.py -> build/lib/espefuse/efuse/esp32c5 creating build/lib/espefuse/efuse/esp32c3 copying espefuse/efuse/esp32c3/operations.py -> build/lib/espefuse/efuse/esp32c3 copying espefuse/efuse/esp32c3/mem_definition.py -> build/lib/espefuse/efuse/esp32c3 copying espefuse/efuse/esp32c3/fields.py -> build/lib/espefuse/efuse/esp32c3 copying espefuse/efuse/esp32c3/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32c3 copying espefuse/efuse/esp32c3/__init__.py -> build/lib/espefuse/efuse/esp32c3 creating build/lib/espefuse/efuse/esp32c2 copying espefuse/efuse/esp32c2/operations.py -> build/lib/espefuse/efuse/esp32c2 copying espefuse/efuse/esp32c2/mem_definition.py -> build/lib/espefuse/efuse/esp32c2 copying espefuse/efuse/esp32c2/fields.py -> build/lib/espefuse/efuse/esp32c2 copying espefuse/efuse/esp32c2/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32c2 copying espefuse/efuse/esp32c2/__init__.py -> build/lib/espefuse/efuse/esp32c2 creating build/lib/espefuse/efuse/esp32 copying espefuse/efuse/esp32/operations.py -> build/lib/espefuse/efuse/esp32 copying espefuse/efuse/esp32/mem_definition.py -> build/lib/espefuse/efuse/esp32 copying espefuse/efuse/esp32/fields.py -> build/lib/espefuse/efuse/esp32 copying espefuse/efuse/esp32/emulate_efuse_controller.py -> build/lib/espefuse/efuse/esp32 copying espefuse/efuse/esp32/__init__.py -> build/lib/espefuse/efuse/esp32 running egg_info writing esptool.egg-info/PKG-INFO writing dependency_links to esptool.egg-info/dependency_links.txt writing entry points to esptool.egg-info/entry_points.txt writing requirements to esptool.egg-info/requires.txt writing top-level names to esptool.egg-info/top_level.txt reading manifest file 'esptool.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching '.github' no previously-included directories found matching 'docs' warning: no previously-included files found matching '.git*' adding license file 'LICENSE' writing manifest file 'esptool.egg-info/SOURCES.txt' creating build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/LICENSE-APACHE -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/LICENSE-MIT -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/README.md -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32c2.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32c3.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32c5.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32c6.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32c61.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32h2.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32h4.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32p4-rev1.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32p4.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32s2.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32s3.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp32s31.json -> build/lib/esptool/targets/stub_flasher/2 copying esptool/targets/stub_flasher/2/esp8266.json -> build/lib/esptool/targets/stub_flasher/2 creating build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/README.md -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32c2.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32c3.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32c5.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32c6.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32h2.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32p4-rev1.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32s2.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp32s3.json -> build/lib/esptool/targets/stub_flasher/1 copying esptool/targets/stub_flasher/1/esp8266.json -> build/lib/esptool/targets/stub_flasher/1 creating build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32c2.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32c3.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32c5.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32c6.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32c61.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32e22.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32h2.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32h21.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32h2_v0.0_v1.1.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32h4.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32p4.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32p4_v3.0.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32s2.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32s3.yaml -> build/lib/espefuse/efuse_defs copying espefuse/efuse_defs/esp32s31.yaml -> build/lib/espefuse/efuse_defs running build_scripts creating build/scripts-3.14 copying and adjusting esptool.py -> build/scripts-3.14 copying and adjusting espefuse.py -> build/scripts-3.14 copying and adjusting espsecure.py -> build/scripts-3.14 copying and adjusting esp_rfc2217_server.py -> build/scripts-3.14 changing mode of build/scripts-3.14/esptool.py from 644 to 755 changing mode of build/scripts-3.14/espefuse.py from 644 to 755 changing mode of build/scripts-3.14/espsecure.py from 644 to 755 changing mode of build/scripts-3.14/esp_rfc2217_server.py from 644 to 755 installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/esp_rfc2217_server copying build/lib/esp_rfc2217_server/__init__.py -> build/bdist.linux-x86_64/wheel/./esp_rfc2217_server copying build/lib/esp_rfc2217_server/__main__.py -> build/bdist.linux-x86_64/wheel/./esp_rfc2217_server copying build/lib/esp_rfc2217_server/esp_port_manager.py -> build/bdist.linux-x86_64/wheel/./esp_rfc2217_server copying build/lib/esp_rfc2217_server/redirector.py -> build/bdist.linux-x86_64/wheel/./esp_rfc2217_server creating build/bdist.linux-x86_64/wheel/espefuse creating build/bdist.linux-x86_64/wheel/espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32s31.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32s3.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32s2.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32p4_v3.0.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32p4.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32h4.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32h2_v0.0_v1.1.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32h21.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32h2.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32e22.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32c61.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32c6.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32c5.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32c3.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32c2.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs copying build/lib/espefuse/efuse_defs/esp32.yaml -> build/bdist.linux-x86_64/wheel/./espefuse/efuse_defs creating build/bdist.linux-x86_64/wheel/espefuse/efuse creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32 copying build/lib/espefuse/efuse/esp32/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32 copying build/lib/espefuse/efuse/esp32/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32 copying build/lib/espefuse/efuse/esp32/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32 copying build/lib/espefuse/efuse/esp32/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32 copying build/lib/espefuse/efuse/esp32/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32c2 copying build/lib/espefuse/efuse/esp32c2/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c2 copying build/lib/espefuse/efuse/esp32c2/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c2 copying build/lib/espefuse/efuse/esp32c2/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c2 copying build/lib/espefuse/efuse/esp32c2/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c2 copying build/lib/espefuse/efuse/esp32c2/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c2 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32c3 copying build/lib/espefuse/efuse/esp32c3/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c3 copying build/lib/espefuse/efuse/esp32c3/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c3 copying build/lib/espefuse/efuse/esp32c3/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c3 copying build/lib/espefuse/efuse/esp32c3/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c3 copying build/lib/espefuse/efuse/esp32c3/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c3 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32c5 copying build/lib/espefuse/efuse/esp32c5/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c5 copying build/lib/espefuse/efuse/esp32c5/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c5 copying build/lib/espefuse/efuse/esp32c5/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c5 copying build/lib/espefuse/efuse/esp32c5/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c5 copying build/lib/espefuse/efuse/esp32c5/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c5 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32c6 copying build/lib/espefuse/efuse/esp32c6/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c6 copying build/lib/espefuse/efuse/esp32c6/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c6 copying build/lib/espefuse/efuse/esp32c6/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c6 copying build/lib/espefuse/efuse/esp32c6/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c6 copying build/lib/espefuse/efuse/esp32c6/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c6 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32c61 copying build/lib/espefuse/efuse/esp32c61/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c61 copying build/lib/espefuse/efuse/esp32c61/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c61 copying build/lib/espefuse/efuse/esp32c61/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c61 copying build/lib/espefuse/efuse/esp32c61/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c61 copying build/lib/espefuse/efuse/esp32c61/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32c61 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32e22 copying build/lib/espefuse/efuse/esp32e22/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32e22 copying build/lib/espefuse/efuse/esp32e22/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32e22 copying build/lib/espefuse/efuse/esp32e22/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32e22 copying build/lib/espefuse/efuse/esp32e22/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32e22 copying build/lib/espefuse/efuse/esp32e22/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32e22 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32h2 copying build/lib/espefuse/efuse/esp32h2/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h2 copying build/lib/espefuse/efuse/esp32h2/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h2 copying build/lib/espefuse/efuse/esp32h2/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h2 copying build/lib/espefuse/efuse/esp32h2/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h2 copying build/lib/espefuse/efuse/esp32h2/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h2 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32h21 copying build/lib/espefuse/efuse/esp32h21/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h21 copying build/lib/espefuse/efuse/esp32h21/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h21 copying build/lib/espefuse/efuse/esp32h21/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h21 copying build/lib/espefuse/efuse/esp32h21/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h21 copying build/lib/espefuse/efuse/esp32h21/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h21 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32h4 copying build/lib/espefuse/efuse/esp32h4/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h4 copying build/lib/espefuse/efuse/esp32h4/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h4 copying build/lib/espefuse/efuse/esp32h4/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h4 copying build/lib/espefuse/efuse/esp32h4/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h4 copying build/lib/espefuse/efuse/esp32h4/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32h4 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32p4 copying build/lib/espefuse/efuse/esp32p4/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32p4 copying build/lib/espefuse/efuse/esp32p4/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32p4 copying build/lib/espefuse/efuse/esp32p4/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32p4 copying build/lib/espefuse/efuse/esp32p4/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32p4 copying build/lib/espefuse/efuse/esp32p4/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32p4 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32s2 copying build/lib/espefuse/efuse/esp32s2/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s2 copying build/lib/espefuse/efuse/esp32s2/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s2 copying build/lib/espefuse/efuse/esp32s2/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s2 copying build/lib/espefuse/efuse/esp32s2/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s2 copying build/lib/espefuse/efuse/esp32s2/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s2 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32s3 copying build/lib/espefuse/efuse/esp32s3/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s3 copying build/lib/espefuse/efuse/esp32s3/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s3 copying build/lib/espefuse/efuse/esp32s3/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s3 copying build/lib/espefuse/efuse/esp32s3/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s3 copying build/lib/espefuse/efuse/esp32s3/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s3 creating build/bdist.linux-x86_64/wheel/espefuse/efuse/esp32s31 copying build/lib/espefuse/efuse/esp32s31/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s31 copying build/lib/espefuse/efuse/esp32s31/emulate_efuse_controller.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s31 copying build/lib/espefuse/efuse/esp32s31/fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s31 copying build/lib/espefuse/efuse/esp32s31/mem_definition.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s31 copying build/lib/espefuse/efuse/esp32s31/operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse/esp32s31 copying build/lib/espefuse/efuse/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse copying build/lib/espefuse/efuse/base_fields.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse copying build/lib/espefuse/efuse/base_operations.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse copying build/lib/espefuse/efuse/csv_table_parser.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse copying build/lib/espefuse/efuse/emulate_efuse_controller_base.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse copying build/lib/espefuse/efuse/mem_definition_base.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse copying build/lib/espefuse/efuse/util.py -> build/bdist.linux-x86_64/wheel/./espefuse/efuse copying build/lib/espefuse/__init__.py -> build/bdist.linux-x86_64/wheel/./espefuse copying build/lib/espefuse/__main__.py -> build/bdist.linux-x86_64/wheel/./espefuse copying build/lib/espefuse/cli_util.py -> build/bdist.linux-x86_64/wheel/./espefuse copying build/lib/espefuse/efuse_interface.py -> build/bdist.linux-x86_64/wheel/./espefuse creating build/bdist.linux-x86_64/wheel/espsecure creating build/bdist.linux-x86_64/wheel/espsecure/esp_hsm_sign copying build/lib/espsecure/esp_hsm_sign/__init__.py -> build/bdist.linux-x86_64/wheel/./espsecure/esp_hsm_sign copying build/lib/espsecure/esp_hsm_sign/exceptions.py -> build/bdist.linux-x86_64/wheel/./espsecure/esp_hsm_sign copying build/lib/espsecure/__init__.py -> build/bdist.linux-x86_64/wheel/./espsecure copying build/lib/espsecure/__main__.py -> build/bdist.linux-x86_64/wheel/./espsecure creating build/bdist.linux-x86_64/wheel/esptool creating build/bdist.linux-x86_64/wheel/esptool/targets creating build/bdist.linux-x86_64/wheel/esptool/targets/stub_flasher creating build/bdist.linux-x86_64/wheel/esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp8266.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32s3.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32s2.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32p4-rev1.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32h2.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32c6.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32c5.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32c3.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32c2.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/esp32.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 copying build/lib/esptool/targets/stub_flasher/1/README.md -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/1 creating build/bdist.linux-x86_64/wheel/esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp8266.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32s31.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32s3.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32s2.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32p4.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32p4-rev1.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32h4.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32h2.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32c61.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32c6.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32c5.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32c3.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32c2.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/esp32.json -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/README.md -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/LICENSE-MIT -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/stub_flasher/2/LICENSE-APACHE -> build/bdist.linux-x86_64/wheel/./esptool/targets/stub_flasher/2 copying build/lib/esptool/targets/__init__.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32c2.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32c3.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32c5.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32c6.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32c61.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32e22.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32h2.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32h21.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32h4.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32p4.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32s2.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32s3.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp32s31.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/targets/esp8266.py -> build/bdist.linux-x86_64/wheel/./esptool/targets copying build/lib/esptool/__init__.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/__main__.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/bin_image.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/cli_util.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/cmds.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/config.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/loader.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/logger.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/reset.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/uf2_writer.py -> build/bdist.linux-x86_64/wheel/./esptool copying build/lib/esptool/util.py -> build/bdist.linux-x86_64/wheel/./esptool running install_egg_info Copying esptool.egg-info to build/bdist.linux-x86_64/wheel/./esptool-5.3.1-py3.14.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts copying build/scripts-3.14/esp_rfc2217_server.py -> build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts copying build/scripts-3.14/espsecure.py -> build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts copying build/scripts-3.14/espefuse.py -> build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts copying build/scripts-3.14/esptool.py -> build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts changing mode of build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts/esp_rfc2217_server.py to 755 changing mode of build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts/espsecure.py to 755 changing mode of build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts/espefuse.py to 755 changing mode of build/bdist.linux-x86_64/wheel/esptool-5.3.1.data/scripts/esptool.py to 755 creating build/bdist.linux-x86_64/wheel/esptool-5.3.1.dist-info/WHEEL creating '/builddir/.cache/pip/wheels/18/95/ef/c0a8f2040c2f4be073cde4d8694959410b839bf8259540a429/tmpij6p0eaz/.tmp-19__nxx6/esptool-5.3.1-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'esp_rfc2217_server/__init__.py' adding 'esp_rfc2217_server/__main__.py' adding 'esp_rfc2217_server/esp_port_manager.py' adding 'esp_rfc2217_server/redirector.py' adding 'espefuse/__init__.py' adding 'espefuse/__main__.py' adding 'espefuse/cli_util.py' adding 'espefuse/efuse_interface.py' adding 'espefuse/efuse/__init__.py' adding 'espefuse/efuse/base_fields.py' adding 'espefuse/efuse/base_operations.py' adding 'espefuse/efuse/csv_table_parser.py' adding 'espefuse/efuse/emulate_efuse_controller_base.py' adding 'espefuse/efuse/mem_definition_base.py' adding 'espefuse/efuse/util.py' adding 'espefuse/efuse/esp32/__init__.py' adding 'espefuse/efuse/esp32/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32/fields.py' adding 'espefuse/efuse/esp32/mem_definition.py' adding 'espefuse/efuse/esp32/operations.py' adding 'espefuse/efuse/esp32c2/__init__.py' adding 'espefuse/efuse/esp32c2/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32c2/fields.py' adding 'espefuse/efuse/esp32c2/mem_definition.py' adding 'espefuse/efuse/esp32c2/operations.py' adding 'espefuse/efuse/esp32c3/__init__.py' adding 'espefuse/efuse/esp32c3/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32c3/fields.py' adding 'espefuse/efuse/esp32c3/mem_definition.py' adding 'espefuse/efuse/esp32c3/operations.py' adding 'espefuse/efuse/esp32c5/__init__.py' adding 'espefuse/efuse/esp32c5/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32c5/fields.py' adding 'espefuse/efuse/esp32c5/mem_definition.py' adding 'espefuse/efuse/esp32c5/operations.py' adding 'espefuse/efuse/esp32c6/__init__.py' adding 'espefuse/efuse/esp32c6/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32c6/fields.py' adding 'espefuse/efuse/esp32c6/mem_definition.py' adding 'espefuse/efuse/esp32c6/operations.py' adding 'espefuse/efuse/esp32c61/__init__.py' adding 'espefuse/efuse/esp32c61/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32c61/fields.py' adding 'espefuse/efuse/esp32c61/mem_definition.py' adding 'espefuse/efuse/esp32c61/operations.py' adding 'espefuse/efuse/esp32e22/__init__.py' adding 'espefuse/efuse/esp32e22/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32e22/fields.py' adding 'espefuse/efuse/esp32e22/mem_definition.py' adding 'espefuse/efuse/esp32e22/operations.py' adding 'espefuse/efuse/esp32h2/__init__.py' adding 'espefuse/efuse/esp32h2/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32h2/fields.py' adding 'espefuse/efuse/esp32h2/mem_definition.py' adding 'espefuse/efuse/esp32h2/operations.py' adding 'espefuse/efuse/esp32h21/__init__.py' adding 'espefuse/efuse/esp32h21/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32h21/fields.py' adding 'espefuse/efuse/esp32h21/mem_definition.py' adding 'espefuse/efuse/esp32h21/operations.py' adding 'espefuse/efuse/esp32h4/__init__.py' adding 'espefuse/efuse/esp32h4/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32h4/fields.py' adding 'espefuse/efuse/esp32h4/mem_definition.py' adding 'espefuse/efuse/esp32h4/operations.py' adding 'espefuse/efuse/esp32p4/__init__.py' adding 'espefuse/efuse/esp32p4/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32p4/fields.py' adding 'espefuse/efuse/esp32p4/mem_definition.py' adding 'espefuse/efuse/esp32p4/operations.py' adding 'espefuse/efuse/esp32s2/__init__.py' adding 'espefuse/efuse/esp32s2/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32s2/fields.py' adding 'espefuse/efuse/esp32s2/mem_definition.py' adding 'espefuse/efuse/esp32s2/operations.py' adding 'espefuse/efuse/esp32s3/__init__.py' adding 'espefuse/efuse/esp32s3/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32s3/fields.py' adding 'espefuse/efuse/esp32s3/mem_definition.py' adding 'espefuse/efuse/esp32s3/operations.py' adding 'espefuse/efuse/esp32s31/__init__.py' adding 'espefuse/efuse/esp32s31/emulate_efuse_controller.py' adding 'espefuse/efuse/esp32s31/fields.py' adding 'espefuse/efuse/esp32s31/mem_definition.py' adding 'espefuse/efuse/esp32s31/operations.py' adding 'espefuse/efuse_defs/esp32.yaml' adding 'espefuse/efuse_defs/esp32c2.yaml' adding 'espefuse/efuse_defs/esp32c3.yaml' adding 'espefuse/efuse_defs/esp32c5.yaml' adding 'espefuse/efuse_defs/esp32c6.yaml' adding 'espefuse/efuse_defs/esp32c61.yaml' adding 'espefuse/efuse_defs/esp32e22.yaml' adding 'espefuse/efuse_defs/esp32h2.yaml' adding 'espefuse/efuse_defs/esp32h21.yaml' adding 'espefuse/efuse_defs/esp32h2_v0.0_v1.1.yaml' adding 'espefuse/efuse_defs/esp32h4.yaml' adding 'espefuse/efuse_defs/esp32p4.yaml' adding 'espefuse/efuse_defs/esp32p4_v3.0.yaml' adding 'espefuse/efuse_defs/esp32s2.yaml' adding 'espefuse/efuse_defs/esp32s3.yaml' adding 'espefuse/efuse_defs/esp32s31.yaml' adding 'espsecure/__init__.py' adding 'espsecure/__main__.py' adding 'espsecure/esp_hsm_sign/__init__.py' adding 'espsecure/esp_hsm_sign/exceptions.py' adding 'esptool/__init__.py' adding 'esptool/__main__.py' adding 'esptool/bin_image.py' adding 'esptool/cli_util.py' adding 'esptool/cmds.py' adding 'esptool/config.py' adding 'esptool/loader.py' adding 'esptool/logger.py' adding 'esptool/reset.py' adding 'esptool/uf2_writer.py' adding 'esptool/util.py' adding 'esptool/targets/__init__.py' adding 'esptool/targets/esp32.py' adding 'esptool/targets/esp32c2.py' adding 'esptool/targets/esp32c3.py' adding 'esptool/targets/esp32c5.py' adding 'esptool/targets/esp32c6.py' adding 'esptool/targets/esp32c61.py' adding 'esptool/targets/esp32e22.py' adding 'esptool/targets/esp32h2.py' adding 'esptool/targets/esp32h21.py' adding 'esptool/targets/esp32h4.py' adding 'esptool/targets/esp32p4.py' adding 'esptool/targets/esp32s2.py' adding 'esptool/targets/esp32s3.py' adding 'esptool/targets/esp32s31.py' adding 'esptool/targets/esp8266.py' adding 'esptool/targets/stub_flasher/1/README.md' adding 'esptool/targets/stub_flasher/1/esp32.json' adding 'esptool/targets/stub_flasher/1/esp32c2.json' adding 'esptool/targets/stub_flasher/1/esp32c3.json' adding 'esptool/targets/stub_flasher/1/esp32c5.json' adding 'esptool/targets/stub_flasher/1/esp32c6.json' adding 'esptool/targets/stub_flasher/1/esp32h2.json' adding 'esptool/targets/stub_flasher/1/esp32p4-rev1.json' adding 'esptool/targets/stub_flasher/1/esp32s2.json' adding 'esptool/targets/stub_flasher/1/esp32s3.json' adding 'esptool/targets/stub_flasher/1/esp8266.json' adding 'esptool/targets/stub_flasher/2/LICENSE-APACHE' adding 'esptool/targets/stub_flasher/2/LICENSE-MIT' adding 'esptool/targets/stub_flasher/2/README.md' adding 'esptool/targets/stub_flasher/2/esp32.json' adding 'esptool/targets/stub_flasher/2/esp32c2.json' adding 'esptool/targets/stub_flasher/2/esp32c3.json' adding 'esptool/targets/stub_flasher/2/esp32c5.json' adding 'esptool/targets/stub_flasher/2/esp32c6.json' adding 'esptool/targets/stub_flasher/2/esp32c61.json' adding 'esptool/targets/stub_flasher/2/esp32h2.json' adding 'esptool/targets/stub_flasher/2/esp32h4.json' adding 'esptool/targets/stub_flasher/2/esp32p4-rev1.json' adding 'esptool/targets/stub_flasher/2/esp32p4.json' adding 'esptool/targets/stub_flasher/2/esp32s2.json' adding 'esptool/targets/stub_flasher/2/esp32s3.json' adding 'esptool/targets/stub_flasher/2/esp32s31.json' adding 'esptool/targets/stub_flasher/2/esp8266.json' adding 'esptool-5.3.1.data/scripts/esp_rfc2217_server.py' adding 'esptool-5.3.1.data/scripts/espefuse.py' adding 'esptool-5.3.1.data/scripts/espsecure.py' adding 'esptool-5.3.1.data/scripts/esptool.py' adding 'esptool-5.3.1.dist-info/licenses/LICENSE' adding 'esptool-5.3.1.dist-info/METADATA' adding 'esptool-5.3.1.dist-info/WHEEL' adding 'esptool-5.3.1.dist-info/entry_points.txt' adding 'esptool-5.3.1.dist-info/top_level.txt' adding 'esptool-5.3.1.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Building wheel for esptool (pyproject.toml): finished with status 'done' Created wheel for esptool: filename=esptool-5.3.1-py3-none-any.whl size=612840 sha256=a10c4d4dd6499fc90cbcabe7da5923697bbdcd7769208f063a90de17e8d5583e Stored in directory: /builddir/.cache/pip/wheels/18/95/ef/c0a8f2040c2f4be073cde4d8694959410b839bf8259540a429 Successfully built esptool + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.JEhvTF + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + '[' /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT '!=' / ']' + rm -rf /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT ++ dirname /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT + mkdir -p /builddir/build/BUILD/esptool-5.3.1-build + mkdir /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd esptool-5.3.1 ++ ls /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir/esptool-5.3.1-py3-none-any.whl ++ xargs basename --multiple ++ sed -E 's/([^-]+)-([^-]+)-.+\.whl/\1==\2/' + specifier=esptool==5.3.1 + '[' -z esptool==5.3.1 ']' + TMPDIR=/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir + /usr/bin/python3 -m pip install --root /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT --prefix /usr --no-deps --disable-pip-version-check --progress-bar off --verbose --ignore-installed --no-warn-script-location --no-index --no-cache-dir --find-links /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir esptool==5.3.1 Using pip 26.1.1 from /usr/lib/python3.14/site-packages/pip (python 3.14) Looking in links: /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir Processing /builddir/build/BUILD/esptool-5.3.1-build/pyproject-wheeldir/esptool-5.3.1-py3-none-any.whl Installing collected packages: esptool changing mode of /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esp_rfc2217_server to 755 changing mode of /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espefuse to 755 changing mode of /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espsecure to 755 changing mode of /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esptool to 755 Successfully installed esptool-5.3.1 + '[' -d /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin ']' + '[' -z sP ']' + shebang_flags=-kasP + /usr/bin/python3 -B /usr/lib/rpm/redhat/pathfix.py -pni /usr/bin/python3 -kasP /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/__pycache__ /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esp_rfc2217_server /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esp_rfc2217_server.py /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espefuse /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espefuse.py /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espsecure /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espsecure.py /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esptool /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esptool.py recursedown('/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/__pycache__') /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esp_rfc2217_server: updating /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esp_rfc2217_server.py: updating /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espefuse: updating /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espefuse.py: updating /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espsecure: updating /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/espsecure.py: updating /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esptool: updating /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/esptool.py: updating + rm -rfv /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/__pycache__ removed '/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/__pycache__/esptool.cpython-314.pyc' removed '/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/__pycache__/espsecure.cpython-314.pyc' removed '/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/__pycache__/espefuse.cpython-314.pyc' removed '/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/__pycache__/esp_rfc2217_server.cpython-314.pyc' removed directory '/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin/__pycache__' + rm -f /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-ghost-distinfo + site_dirs=() + '[' -d /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages ']' + site_dirs+=("/usr/lib/python3.14/site-packages") + '[' /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib64/python3.14/site-packages '!=' /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages ']' + '[' -d /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib64/python3.14/site-packages ']' + for site_dir in ${site_dirs[@]} + for distinfo in /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT$site_dir/*.dist-info + echo '%ghost %dir /usr/lib/python3.14/site-packages/esptool-5.3.1.dist-info' + sed -i s/pip/rpm/ /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool-5.3.1.dist-info/INSTALLER + PYTHONPATH=/usr/lib/rpm/redhat + /usr/bin/python3 -B /usr/lib/rpm/redhat/pyproject_preprocess_record.py --buildroot /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT --record /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool-5.3.1.dist-info/RECORD --output /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-record + rm -fv /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool-5.3.1.dist-info/RECORD removed '/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool-5.3.1.dist-info/RECORD' + rm -fv /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool-5.3.1.dist-info/REQUESTED removed '/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool-5.3.1.dist-info/REQUESTED' + '[' -f /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-dep-overrides ']' ++ wc -l /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-ghost-distinfo ++ cut -f1 '-d ' + lines=1 + '[' 1 -ne 1 ']' + RPM_FILES_ESCAPE=4.19 + /usr/bin/python3 /usr/lib/rpm/redhat/pyproject_save_files.py --output-files /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-files --output-modules /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-modules --buildroot /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT --sitelib /usr/lib/python3.14/site-packages --sitearch /usr/lib64/python3.14/site-packages --python-version 3.14 --pyproject-record /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-record --prefix /usr esptool espefuse espsecure esp_rfc2217_server + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + COMPRESS='gzip -9 -n' + COMPRESS_EXT=.gz + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + /usr/lib/rpm/redhat/brp-python-rpm-in-distinfo + env /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j4 Bytecompiling .py files below /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14 using python3.14 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-det --brp -j4 /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/config.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/uf2_writer.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/uf2_writer.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/util.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/bin_image.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/cmds.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/__main__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/loader.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/cmds.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/reset.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/logger.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/logger.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/bin_image.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32s3.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32s2.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp8266.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32p4.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32s31.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/__pycache__/cli_util.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32h21.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32h4.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32h2.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32c6.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32c61.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32c5.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32e22.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32c2.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espsecure/__pycache__/__main__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32c3.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espsecure/esp_hsm_sign/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espsecure/esp_hsm_sign/__pycache__/exceptions.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esptool/targets/__pycache__/esp32.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/__pycache__/efuse_interface.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/__pycache__/__main__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/util.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/__pycache__/cli_util.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/mem_definition_base.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espsecure/__pycache__/__init__.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espsecure/__pycache__/__init__.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/emulate_efuse_controller_base.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/csv_table_parser.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/base_operations.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/base_operations.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s31/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s31/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s31/__pycache__/fields.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s31/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s31/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s3/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/base_fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s3/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s3/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s3/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s3/__pycache__/fields.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s2/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s2/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s2/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s3/__pycache__/fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s2/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s2/__pycache__/fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32p4/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32p4/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32s2/__pycache__/fields.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32p4/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32p4/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32p4/__pycache__/fields.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h4/__pycache__/fields.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/__pycache__/base_fields.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h4/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h4/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h4/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h21/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h4/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32p4/__pycache__/fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h21/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h21/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h21/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h2/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h21/__pycache__/fields.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h2/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h2/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h2/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32h2/__pycache__/fields.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32e22/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32e22/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32e22/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32e22/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c61/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32e22/__pycache__/fields.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c61/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c61/__pycache__/fields.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c61/__pycache__/fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c61/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c61/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c6/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c6/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c6/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c6/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c5/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c6/__pycache__/fields.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c5/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c6/__pycache__/fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c5/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c5/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c5/__pycache__/fields.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c3/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c3/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c5/__pycache__/fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c3/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c3/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c3/__pycache__/fields.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c3/__pycache__/fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c2/__pycache__/fields.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c2/__pycache__/operations.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c2/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c2/__pycache__/operations.cpython-314.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c2/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32c2/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32/__pycache__/mem_definition.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32/__pycache__/emulate_efuse_controller.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32/__pycache__/operations.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esp_rfc2217_server/__pycache__/redirector.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esp_rfc2217_server/__pycache__/__main__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esp_rfc2217_server/__pycache__/esp_port_manager.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/esp_rfc2217_server/__pycache__/__init__.cpython-314.opt-1.pyc: rewriting with normalized contents /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32/__pycache__/fields.cpython-314.pyc: replacing with normalized version /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/efuse/esp32/__pycache__/fields.cpython-314.opt-1.pyc: replacing with normalized version Scanned 54 directories and 406 files, processed 133 inodes, 133 modified (34 replaced + 99 rewritten), 0 unsupported format, 0 errors + /usr/bin/linkdupes --brp /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr Scanned 53 directories and 406 files, considered 406 files, read 68 files, linked 0 files, 0 errors sum of sizes of linked files: 0 bytes Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.Gde1ZV + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd esptool-5.3.1 + '[' '!' -f /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-modules ']' + PATH=/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin + PYTHONPATH=/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib64/python3.14/site-packages:/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages + _PYTHONSITE=/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib64/python3.14/site-packages:/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages + PYTHONDONTWRITEBYTECODE=1 + /usr/bin/python3 -sP /usr/lib/rpm/redhat/import_all_modules.py -f /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1-1.fc44.x86_64-pyproject-modules -e 'espsecure.esp_hsm_sign*' Check import: esp_rfc2217_server Check import: esp_rfc2217_server.esp_port_manager Check import: esp_rfc2217_server.redirector Check import: espefuse Check import: espefuse.cli_util Check import: espefuse.efuse Check import: espefuse.efuse.base_fields Check import: espefuse.efuse.base_operations Check import: espefuse.efuse.csv_table_parser Check import: espefuse.efuse.emulate_efuse_controller_base Check import: espefuse.efuse.esp32 Check import: espefuse.efuse.esp32.emulate_efuse_controller Check import: espefuse.efuse.esp32.fields Check import: espefuse.efuse.esp32.mem_definition Check import: espefuse.efuse.esp32.operations Check import: espefuse.efuse.esp32c2 Check import: espefuse.efuse.esp32c2.emulate_efuse_controller Check import: espefuse.efuse.esp32c2.fields Check import: espefuse.efuse.esp32c2.mem_definition Check import: espefuse.efuse.esp32c2.operations Check import: espefuse.efuse.esp32c3 Check import: espefuse.efuse.esp32c3.emulate_efuse_controller Check import: espefuse.efuse.esp32c3.fields Check import: espefuse.efuse.esp32c3.mem_definition Check import: espefuse.efuse.esp32c3.operations Check import: espefuse.efuse.esp32c5 Check import: espefuse.efuse.esp32c5.emulate_efuse_controller Check import: espefuse.efuse.esp32c5.fields Check import: espefuse.efuse.esp32c5.mem_definition Check import: espefuse.efuse.esp32c5.operations Check import: espefuse.efuse.esp32c6 Check import: espefuse.efuse.esp32c6.emulate_efuse_controller Check import: espefuse.efuse.esp32c6.fields Check import: espefuse.efuse.esp32c6.mem_definition Check import: espefuse.efuse.esp32c6.operations Check import: espefuse.efuse.esp32c61 Check import: espefuse.efuse.esp32c61.emulate_efuse_controller Check import: espefuse.efuse.esp32c61.fields Check import: espefuse.efuse.esp32c61.mem_definition Check import: espefuse.efuse.esp32c61.operations Check import: espefuse.efuse.esp32e22 Check import: espefuse.efuse.esp32e22.emulate_efuse_controller Check import: espefuse.efuse.esp32e22.fields Check import: espefuse.efuse.esp32e22.mem_definition Check import: espefuse.efuse.esp32e22.operations Check import: espefuse.efuse.esp32h2 Check import: espefuse.efuse.esp32h2.emulate_efuse_controller Check import: espefuse.efuse.esp32h2.fields Check import: espefuse.efuse.esp32h2.mem_definition Check import: espefuse.efuse.esp32h2.operations Check import: espefuse.efuse.esp32h21 Check import: espefuse.efuse.esp32h21.emulate_efuse_controller Check import: espefuse.efuse.esp32h21.fields Check import: espefuse.efuse.esp32h21.mem_definition Check import: espefuse.efuse.esp32h21.operations Check import: espefuse.efuse.esp32h4 Check import: espefuse.efuse.esp32h4.emulate_efuse_controller Check import: espefuse.efuse.esp32h4.fields Check import: espefuse.efuse.esp32h4.mem_definition Check import: espefuse.efuse.esp32h4.operations Check import: espefuse.efuse.esp32p4 Check import: espefuse.efuse.esp32p4.emulate_efuse_controller Check import: espefuse.efuse.esp32p4.fields Check import: espefuse.efuse.esp32p4.mem_definition Check import: espefuse.efuse.esp32p4.operations Check import: espefuse.efuse.esp32s2 Check import: espefuse.efuse.esp32s2.emulate_efuse_controller Check import: espefuse.efuse.esp32s2.fields Check import: espefuse.efuse.esp32s2.mem_definition Check import: espefuse.efuse.esp32s2.operations Check import: espefuse.efuse.esp32s3 Check import: espefuse.efuse.esp32s3.emulate_efuse_controller Check import: espefuse.efuse.esp32s3.fields Check import: espefuse.efuse.esp32s3.mem_definition Check import: espefuse.efuse.esp32s3.operations Check import: espefuse.efuse.esp32s31 Check import: espefuse.efuse.esp32s31.emulate_efuse_controller Check import: espefuse.efuse.esp32s31.fields Check import: espefuse.efuse.esp32s31.mem_definition Check import: espefuse.efuse.esp32s31.operations Check import: espefuse.efuse.mem_definition_base Check import: espefuse.efuse.util Check import: espefuse.efuse_interface Check import: espsecure Check import: esptool Check import: esptool.bin_image Check import: esptool.cli_util Check import: esptool.cmds Check import: esptool.config Check import: esptool.loader Check import: esptool.logger Check import: esptool.reset Check import: esptool.targets Check import: esptool.targets.esp32 Check import: esptool.targets.esp32c2 Check import: esptool.targets.esp32c3 Check import: esptool.targets.esp32c5 Check import: esptool.targets.esp32c6 Check import: esptool.targets.esp32c61 Check import: esptool.targets.esp32e22 Check import: esptool.targets.esp32h2 Check import: esptool.targets.esp32h21 Check import: esptool.targets.esp32h4 Check import: esptool.targets.esp32p4 Check import: esptool.targets.esp32s2 Check import: esptool.targets.esp32s3 Check import: esptool.targets.esp32s31 Check import: esptool.targets.esp8266 Check import: esptool.uf2_writer Check import: esptool.util + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + PATH=/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin + PYTHONPATH=/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib64/python3.14/site-packages:/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages + PYTHONDONTWRITEBYTECODE=1 + PYTEST_ADDOPTS=' --ignore=/builddir/build/BUILD/esptool-5.3.1-build/.pyproject-builddir' + PYTEST_XDIST_AUTO_NUM_WORKERS=4 + /usr/bin/pytest -m host_test --ignore test/test_espsecure_hsm.py -k 'not ecdsa192' ============================= test session starts ============================== platform linux -- Python 3.14.6, pytest-9.0.3, pluggy-1.6.0 -- /usr/bin/python3 cachedir: .pytest_cache rootdir: /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1 configfile: pyproject.toml plugins: rerunfailures-15.0 collecting ... Host tests of espefuse for esp32: Running espefuse tests... Running esptool tests... collected 559 items / 172 deselected / 387 selected test/test_espefuse.py::TestReadCommands::test_help Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpygoby4dm -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. PASSED test/test_espefuse.py::TestReadCommands::test_dump Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp86aggjn8 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp86aggjn8 -d --do-not-confirm dump -h espefuse v5.3.1 Usage: python -m espefuse dump [OPTIONS] Dump raw hex values of all eFuses. ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --format [default|split|joint] Select the dump format: default - usual console eFuse dump; joint - all │ │ eFuse blocks are stored in one file; split - each eFuse block is placed into │ │ its own file. │ │ --file-name FILE The path to the file in which to save the dump, if not specified, output to │ │ the console. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp86aggjn8 -d --do-not-confirm dump espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "dump" command === BLOCK0 ( ) [0 ] dump: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] dump: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] dump: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] dump: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 PASSED test/test_espefuse.py::TestReadCommands::test_dump_format_joint Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmptu3bnuaf -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmptu3bnuaf -d --do-not-confirm dump --format joint --file-name /tmp/tmpo9jzfal5 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "dump" command === Dump eFuse blocks -> /tmp/tmpo9jzfal5 PASSED test/test_espefuse.py::TestReadCommands::test_dump_format_joint_stdout Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp0o49ff8n -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp0o49ff8n -d --do-not-confirm dump --format joint espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "dump" command === 00000000000000000000000000800000000000000000100000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 PASSED test/test_espefuse.py::TestReadCommands::test_dump_split_default Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb0_fycbc -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb0_fycbc -d --do-not-confirm dump --file-name /tmp/tmp_81axlks espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "dump" command === Dump eFuse block0 -> /tmp/tmp_81axlks0 Dump eFuse block1 -> /tmp/tmp_81axlks1 Dump eFuse block2 -> /tmp/tmp_81axlks2 Dump eFuse block3 -> /tmp/tmp_81axlks3 PASSED test/test_espefuse.py::TestReadCommands::test_dump_format_split_stdout Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpmbqsgb9s -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpmbqsgb9s -d --do-not-confirm dump --format split espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "dump" command === 00000000000000000000000000800000000000000000100000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 PASSED test/test_espefuse.py::TestReadCommands::test_dump_split Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpbbvvr4z1 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpbbvvr4z1 -d --do-not-confirm dump --format split --file-name /tmp/tmpnwam72jl espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "dump" command === Dump eFuse block0 -> /tmp/tmpnwam72jl0 Dump eFuse block1 -> /tmp/tmpnwam72jl1 Dump eFuse block2 -> /tmp/tmpnwam72jl2 Dump eFuse block3 -> /tmp/tmpnwam72jl3 PASSED test/test_espefuse.py::TestReadCommands::test_summary Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmptzsm_x93 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmptzsm_x93 -d --do-not-confirm summary -h espefuse v5.3.1 Usage: python -m espefuse summary [OPTIONS] [EFUSES_TO_SHOW]... Print human-readable summary of eFuse values. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ EFUSES_TO_SHOW TEXT │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --format [summary|json|value_only] Select the summary format. │ │ --file FILENAME File to save the eFuse summary to. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmptzsm_x93 -d --do-not-confirm summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestReadCommands::test_summary_json Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp734vqnut -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp734vqnut -d --do-not-confirm summary --format json espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === { "ABS_DONE_0": { "bit_len": 1, "block": 0, "category": "security", "description": "Secure boot V1 is enabled for bootloader image", "efuse_type": "bool", "name": "ABS_DONE_0", "pos": 4, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "ABS_DONE_1": { "bit_len": 1, "block": 0, "category": "security", "description": "Secure boot V2 is enabled for bootloader image", "efuse_type": "bool", "name": "ABS_DONE_1", "pos": 5, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "ADC_VREF": { "bit_len": 5, "block": 0, "category": "calibration", "description": "True ADC reference voltage", "efuse_type": "uint:5", "name": "ADC_VREF", "pos": 8, "raw_value": "0x00", "readable": true, "value": 1100, "word": 4, "writeable": true }, "BLK3_PART_RESERVE": { "bit_len": 1, "block": 0, "category": "config", "description": "BLOCK3 partially served for ADC calibration data", "efuse_type": "bool", "name": "BLK3_PART_RESERVE", "pos": 14, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "BLOCK1": { "bit_len": 256, "block": 1, "category": "security", "description": "Flash encryption key", "efuse_type": "bytes:32", "name": "BLOCK1", "pos": 0, "raw_value": "0x0000000000000000000000000000000000000000000000000000000000000000", "readable": true, "value": "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", "word": 0, "writeable": true }, "BLOCK2": { "bit_len": 256, "block": 2, "category": "security", "description": "Security boot key", "efuse_type": "bytes:32", "name": "BLOCK2", "pos": 0, "raw_value": "0x0000000000000000000000000000000000000000000000000000000000000000", "readable": true, "value": "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", "word": 0, "writeable": true }, "BLOCK3": { "bit_len": 256, "block": 3, "category": "security", "description": "Variable Block 3", "efuse_type": "bytes:32", "name": "BLOCK3", "pos": 0, "raw_value": "0x0000000000000000000000000000000000000000000000000000000000000000", "readable": true, "value": "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", "word": 0, "writeable": true }, "CHIP_CPU_FREQ_LOW": { "bit_len": 1, "block": 0, "category": "config", "description": "If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the ESP32's max CPU frequency is rated for 160MHz. 240MHz otherwise", "efuse_type": "bool", "name": "CHIP_CPU_FREQ_LOW", "pos": 12, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "CHIP_CPU_FREQ_RATED": { "bit_len": 1, "block": 0, "category": "config", "description": "If set; the ESP32's maximum CPU frequency has been rated", "efuse_type": "bool", "name": "CHIP_CPU_FREQ_RATED", "pos": 13, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "CHIP_PACKAGE": { "bit_len": 3, "block": 0, "category": "identity", "description": "Chip package identifier", "efuse_type": "uint:3", "name": "CHIP_PACKAGE", "pos": 9, "raw_value": "0x0", "readable": true, "value": 0, "word": 3, "writeable": true }, "CHIP_PACKAGE_4BIT": { "bit_len": 1, "block": 0, "category": "identity", "description": "Chip package identifier #4bit", "efuse_type": "bool", "name": "CHIP_PACKAGE_4BIT", "pos": 2, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "CHIP_VER_REV1": { "bit_len": 1, "block": 0, "category": "identity", "description": "bit is set to 1 for rev1 silicon", "efuse_type": "bool", "name": "CHIP_VER_REV1", "pos": 15, "raw_value": "0x1", "readable": true, "value": true, "word": 3, "writeable": true }, "CHIP_VER_REV2": { "bit_len": 1, "block": 0, "category": "identity", "description": "", "efuse_type": "bool", "name": "CHIP_VER_REV2", "pos": 20, "raw_value": "0x1", "readable": true, "value": true, "word": 5, "writeable": true }, "CLK8M_FREQ": { "bit_len": 8, "block": 0, "category": "config", "description": "8MHz clock freq override", "efuse_type": "uint:8", "name": "CLK8M_FREQ", "pos": 0, "raw_value": "0x00", "readable": true, "value": 0, "word": 4, "writeable": true }, "CODING_SCHEME": { "bit_len": 2, "block": 0, "category": "config", "description": "Efuse variable block length scheme", "efuse_type": "uint:2", "name": "CODING_SCHEME", "pos": 0, "raw_value": "0x0", "readable": true, "value": "NONE (BLK1-3 len=256 bits)", "word": 6, "writeable": true }, "CONSOLE_DEBUG_DISABLE": { "bit_len": 1, "block": 0, "category": "config", "description": "Disable ROM BASIC interpreter fallback", "efuse_type": "bool", "name": "CONSOLE_DEBUG_DISABLE", "pos": 2, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "CUSTOM_MAC": { "bit_len": 48, "block": 3, "category": "MAC", "description": "Custom MAC address", "efuse_type": "bytes:6", "name": "CUSTOM_MAC", "pos": 8, "raw_value": "0x000000000000", "readable": true, "value": "00:00:00:00:00:00 (CRC 0x00 OK)", "word": 0, "writeable": true }, "CUSTOM_MAC_CRC": { "bit_len": 8, "block": 3, "category": "MAC", "description": "CRC8 for custom MAC address", "efuse_type": "uint:8", "name": "CUSTOM_MAC_CRC", "pos": 0, "raw_value": "0x00", "readable": true, "value": 0, "word": 0, "writeable": true }, "DISABLE_APP_CPU": { "bit_len": 1, "block": 0, "category": "config", "description": "Disables APP CPU", "efuse_type": "bool", "name": "DISABLE_APP_CPU", "pos": 0, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "DISABLE_BT": { "bit_len": 1, "block": 0, "category": "config", "description": "Disables Bluetooth", "efuse_type": "bool", "name": "DISABLE_BT", "pos": 1, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "DISABLE_DL_CACHE": { "bit_len": 1, "block": 0, "category": "config", "description": "Disable flash cache in UART bootloader", "efuse_type": "bool", "name": "DISABLE_DL_CACHE", "pos": 9, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "DISABLE_DL_DECRYPT": { "bit_len": 1, "block": 0, "category": "security", "description": "Disable flash decryption in UART bootloader", "efuse_type": "bool", "name": "DISABLE_DL_DECRYPT", "pos": 8, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "DISABLE_DL_ENCRYPT": { "bit_len": 1, "block": 0, "category": "security", "description": "Disable flash encryption in UART bootloader", "efuse_type": "bool", "name": "DISABLE_DL_ENCRYPT", "pos": 7, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "DISABLE_SDIO_HOST": { "bit_len": 1, "block": 0, "category": "config", "description": "", "efuse_type": "bool", "name": "DISABLE_SDIO_HOST", "pos": 3, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "DIS_CACHE": { "bit_len": 1, "block": 0, "category": "config", "description": "Disables cache", "efuse_type": "bool", "name": "DIS_CACHE", "pos": 3, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "FLASH_CRYPT_CNT": { "bit_len": 7, "block": 0, "category": "flash", "description": "Flash encryption is enabled if this field has an odd number of bits set", "efuse_type": "uint:7", "name": "FLASH_CRYPT_CNT", "pos": 20, "raw_value": "0x00", "readable": true, "value": 0, "word": 0, "writeable": true }, "FLASH_CRYPT_CONFIG": { "bit_len": 4, "block": 0, "category": "flash", "description": "Flash encryption config (key tweak bits)", "efuse_type": "uint:4", "name": "FLASH_CRYPT_CONFIG", "pos": 28, "raw_value": "0x0", "readable": true, "value": 0, "word": 5, "writeable": true }, "JTAG_DISABLE": { "bit_len": 1, "block": 0, "category": "jtag", "description": "Disable JTAG", "efuse_type": "bool", "name": "JTAG_DISABLE", "pos": 6, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "KEY_STATUS": { "bit_len": 1, "block": 0, "category": "security", "description": "Usage of efuse block 3 (reserved)", "efuse_type": "bool", "name": "KEY_STATUS", "pos": 10, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "MAC": { "bit_len": 48, "block": 0, "category": "MAC", "description": "MAC address", "efuse_type": "bytes:6", "name": "MAC", "pos": 0, "raw_value": "0x000000000000", "readable": true, "value": "00:00:00:00:00:00 (CRC 0x00 OK)", "word": 1, "writeable": true }, "MAC_CRC": { "bit_len": 8, "block": 0, "category": "MAC", "description": "CRC8 for MAC address", "efuse_type": "uint:8", "name": "MAC_CRC", "pos": 16, "raw_value": "0x00", "readable": true, "value": 0, "word": 2, "writeable": true }, "MAC_VERSION": { "bit_len": 8, "block": 3, "category": "MAC", "description": "Version of the MAC field", "efuse_type": "uint:8", "name": "MAC_VERSION", "pos": 24, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "PKG_VERSION": { "bit_len": 4, "block": 0, "category": "identity", "description": "calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_PACKAGE (read only)", "efuse_type": "uint:4", "name": "PKG_VERSION", "pos": null, "raw_value": "0x0", "readable": true, "value": 0, "word": null, "writeable": true }, "RD_DIS": { "bit_len": 4, "block": 0, "category": "config", "description": "Disable reading from BlOCK1-3", "efuse_type": "uint:4", "name": "RD_DIS", "pos": 16, "raw_value": "0x0", "readable": true, "value": 0, "word": 0, "writeable": true }, "SECURE_VERSION": { "bit_len": 32, "block": 3, "category": "security", "description": "Secure version for anti-rollback", "efuse_type": "uint:32", "name": "SECURE_VERSION", "pos": 0, "raw_value": "0x00000000", "readable": true, "value": 0, "word": 4, "writeable": true }, "SPI_PAD_CONFIG_CLK": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "Override SD_CLK pad (GPIO6/SPICLK)", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_CLK", "pos": 0, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "SPI_PAD_CONFIG_CS0": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "Override SD_CMD pad (GPIO11/SPICS0)", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_CS0", "pos": 15, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "SPI_PAD_CONFIG_D": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "Override SD_DATA_1 pad (GPIO8/SPID)", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_D", "pos": 10, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "SPI_PAD_CONFIG_HD": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "read for SPI_pad_config_hd", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_HD", "pos": 4, "raw_value": "0x00", "readable": true, "value": 0, "word": 3, "writeable": true }, "SPI_PAD_CONFIG_Q": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "Override SD_DATA_0 pad (GPIO7/SPIQ)", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_Q", "pos": 5, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "UART_DOWNLOAD_DIS": { "bit_len": 1, "block": 0, "category": "security", "description": "Disable UART download mode. Valid for ESP32 V3 and newer; only", "efuse_type": "bool", "name": "UART_DOWNLOAD_DIS", "pos": 27, "raw_value": "0x0", "readable": true, "value": false, "word": 0, "writeable": true }, "VOL_LEVEL_HP_INV": { "bit_len": 2, "block": 0, "category": "config", "description": "This field stores the voltage level for CPU to run at 240 MHz; or for flash/PSRAM to run at 80 MHz.0x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: level 4. (RO)", "efuse_type": "uint:2", "name": "VOL_LEVEL_HP_INV", "pos": 22, "raw_value": "0x0", "readable": true, "value": 0, "word": 5, "writeable": true }, "WAFER_VERSION_MAJOR": { "bit_len": 3, "block": 0, "category": "identity", "description": "calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CHIP_VER_REV2 and apb_ctl_date (read only)", "efuse_type": "uint:3", "name": "WAFER_VERSION_MAJOR", "pos": null, "raw_value": "0x3", "readable": true, "value": 3, "word": null, "writeable": true }, "WAFER_VERSION_MINOR": { "bit_len": 2, "block": 0, "category": "identity", "description": "", "efuse_type": "uint:2", "name": "WAFER_VERSION_MINOR", "pos": 24, "raw_value": "0x0", "readable": true, "value": 0, "word": 5, "writeable": true }, "WR_DIS": { "bit_len": 16, "block": 0, "category": "config", "description": "Efuse write disable mask", "efuse_type": "uint:16", "name": "WR_DIS", "pos": 0, "raw_value": "0x0000", "readable": true, "value": 0, "word": 0, "writeable": true }, "XPD_SDIO_FORCE": { "bit_len": 1, "block": 0, "category": "vdd", "description": "Ignore MTDI pin (GPIO12) for VDD_SDIO on reset", "efuse_type": "bool", "name": "XPD_SDIO_FORCE", "pos": 16, "raw_value": "0x0", "readable": true, "value": false, "word": 4, "writeable": true }, "XPD_SDIO_REG": { "bit_len": 1, "block": 0, "category": "vdd", "description": "read for XPD_SDIO_REG", "efuse_type": "bool", "name": "XPD_SDIO_REG", "pos": 14, "raw_value": "0x0", "readable": true, "value": false, "word": 4, "writeable": true }, "XPD_SDIO_TIEH": { "bit_len": 1, "block": 0, "category": "vdd", "description": "If XPD_SDIO_FORCE & XPD_SDIO_REG", "efuse_type": "bool", "name": "XPD_SDIO_TIEH", "pos": 15, "raw_value": "0x0", "readable": true, "value": "1.8V", "word": 4, "writeable": true } } PASSED test/test_espefuse.py::TestReadCommands::test_summary_json_raw_value Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp41ezsjjb -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp41ezsjjb -d --do-not-confirm summary --format json espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === { "ABS_DONE_0": { "bit_len": 1, "block": 0, "category": "security", "description": "Secure boot V1 is enabled for bootloader image", "efuse_type": "bool", "name": "ABS_DONE_0", "pos": 4, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "ABS_DONE_1": { "bit_len": 1, "block": 0, "category": "security", "description": "Secure boot V2 is enabled for bootloader image", "efuse_type": "bool", "name": "ABS_DONE_1", "pos": 5, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "ADC_VREF": { "bit_len": 5, "block": 0, "category": "calibration", "description": "True ADC reference voltage", "efuse_type": "uint:5", "name": "ADC_VREF", "pos": 8, "raw_value": "0x00", "readable": true, "value": 1100, "word": 4, "writeable": true }, "BLK3_PART_RESERVE": { "bit_len": 1, "block": 0, "category": "config", "description": "BLOCK3 partially served for ADC calibration data", "efuse_type": "bool", "name": "BLK3_PART_RESERVE", "pos": 14, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "BLOCK1": { "bit_len": 256, "block": 1, "category": "security", "description": "Flash encryption key", "efuse_type": "bytes:32", "name": "BLOCK1", "pos": 0, "raw_value": "0x0000000000000000000000000000000000000000000000000000000000000000", "readable": true, "value": "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", "word": 0, "writeable": true }, "BLOCK2": { "bit_len": 256, "block": 2, "category": "security", "description": "Security boot key", "efuse_type": "bytes:32", "name": "BLOCK2", "pos": 0, "raw_value": "0x0000000000000000000000000000000000000000000000000000000000000000", "readable": true, "value": "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", "word": 0, "writeable": true }, "BLOCK3": { "bit_len": 256, "block": 3, "category": "security", "description": "Variable Block 3", "efuse_type": "bytes:32", "name": "BLOCK3", "pos": 0, "raw_value": "0x0000000000000000000000000000000000000000000000000000000000000000", "readable": true, "value": "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", "word": 0, "writeable": true }, "CHIP_CPU_FREQ_LOW": { "bit_len": 1, "block": 0, "category": "config", "description": "If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the ESP32's max CPU frequency is rated for 160MHz. 240MHz otherwise", "efuse_type": "bool", "name": "CHIP_CPU_FREQ_LOW", "pos": 12, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "CHIP_CPU_FREQ_RATED": { "bit_len": 1, "block": 0, "category": "config", "description": "If set; the ESP32's maximum CPU frequency has been rated", "efuse_type": "bool", "name": "CHIP_CPU_FREQ_RATED", "pos": 13, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "CHIP_PACKAGE": { "bit_len": 3, "block": 0, "category": "identity", "description": "Chip package identifier", "efuse_type": "uint:3", "name": "CHIP_PACKAGE", "pos": 9, "raw_value": "0x0", "readable": true, "value": 0, "word": 3, "writeable": true }, "CHIP_PACKAGE_4BIT": { "bit_len": 1, "block": 0, "category": "identity", "description": "Chip package identifier #4bit", "efuse_type": "bool", "name": "CHIP_PACKAGE_4BIT", "pos": 2, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "CHIP_VER_REV1": { "bit_len": 1, "block": 0, "category": "identity", "description": "bit is set to 1 for rev1 silicon", "efuse_type": "bool", "name": "CHIP_VER_REV1", "pos": 15, "raw_value": "0x1", "readable": true, "value": true, "word": 3, "writeable": true }, "CHIP_VER_REV2": { "bit_len": 1, "block": 0, "category": "identity", "description": "", "efuse_type": "bool", "name": "CHIP_VER_REV2", "pos": 20, "raw_value": "0x1", "readable": true, "value": true, "word": 5, "writeable": true }, "CLK8M_FREQ": { "bit_len": 8, "block": 0, "category": "config", "description": "8MHz clock freq override", "efuse_type": "uint:8", "name": "CLK8M_FREQ", "pos": 0, "raw_value": "0x00", "readable": true, "value": 0, "word": 4, "writeable": true }, "CODING_SCHEME": { "bit_len": 2, "block": 0, "category": "config", "description": "Efuse variable block length scheme", "efuse_type": "uint:2", "name": "CODING_SCHEME", "pos": 0, "raw_value": "0x0", "readable": true, "value": "NONE (BLK1-3 len=256 bits)", "word": 6, "writeable": true }, "CONSOLE_DEBUG_DISABLE": { "bit_len": 1, "block": 0, "category": "config", "description": "Disable ROM BASIC interpreter fallback", "efuse_type": "bool", "name": "CONSOLE_DEBUG_DISABLE", "pos": 2, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "CUSTOM_MAC": { "bit_len": 48, "block": 3, "category": "MAC", "description": "Custom MAC address", "efuse_type": "bytes:6", "name": "CUSTOM_MAC", "pos": 8, "raw_value": "0x000000000000", "readable": true, "value": "00:00:00:00:00:00 (CRC 0x00 OK)", "word": 0, "writeable": true }, "CUSTOM_MAC_CRC": { "bit_len": 8, "block": 3, "category": "MAC", "description": "CRC8 for custom MAC address", "efuse_type": "uint:8", "name": "CUSTOM_MAC_CRC", "pos": 0, "raw_value": "0x00", "readable": true, "value": 0, "word": 0, "writeable": true }, "DISABLE_APP_CPU": { "bit_len": 1, "block": 0, "category": "config", "description": "Disables APP CPU", "efuse_type": "bool", "name": "DISABLE_APP_CPU", "pos": 0, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "DISABLE_BT": { "bit_len": 1, "block": 0, "category": "config", "description": "Disables Bluetooth", "efuse_type": "bool", "name": "DISABLE_BT", "pos": 1, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "DISABLE_DL_CACHE": { "bit_len": 1, "block": 0, "category": "config", "description": "Disable flash cache in UART bootloader", "efuse_type": "bool", "name": "DISABLE_DL_CACHE", "pos": 9, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "DISABLE_DL_DECRYPT": { "bit_len": 1, "block": 0, "category": "security", "description": "Disable flash decryption in UART bootloader", "efuse_type": "bool", "name": "DISABLE_DL_DECRYPT", "pos": 8, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "DISABLE_DL_ENCRYPT": { "bit_len": 1, "block": 0, "category": "security", "description": "Disable flash encryption in UART bootloader", "efuse_type": "bool", "name": "DISABLE_DL_ENCRYPT", "pos": 7, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "DISABLE_SDIO_HOST": { "bit_len": 1, "block": 0, "category": "config", "description": "", "efuse_type": "bool", "name": "DISABLE_SDIO_HOST", "pos": 3, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "DIS_CACHE": { "bit_len": 1, "block": 0, "category": "config", "description": "Disables cache", "efuse_type": "bool", "name": "DIS_CACHE", "pos": 3, "raw_value": "0x0", "readable": true, "value": false, "word": 3, "writeable": true }, "FLASH_CRYPT_CNT": { "bit_len": 7, "block": 0, "category": "flash", "description": "Flash encryption is enabled if this field has an odd number of bits set", "efuse_type": "uint:7", "name": "FLASH_CRYPT_CNT", "pos": 20, "raw_value": "0x00", "readable": true, "value": 0, "word": 0, "writeable": true }, "FLASH_CRYPT_CONFIG": { "bit_len": 4, "block": 0, "category": "flash", "description": "Flash encryption config (key tweak bits)", "efuse_type": "uint:4", "name": "FLASH_CRYPT_CONFIG", "pos": 28, "raw_value": "0x0", "readable": true, "value": 0, "word": 5, "writeable": true }, "JTAG_DISABLE": { "bit_len": 1, "block": 0, "category": "jtag", "description": "Disable JTAG", "efuse_type": "bool", "name": "JTAG_DISABLE", "pos": 6, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "KEY_STATUS": { "bit_len": 1, "block": 0, "category": "security", "description": "Usage of efuse block 3 (reserved)", "efuse_type": "bool", "name": "KEY_STATUS", "pos": 10, "raw_value": "0x0", "readable": true, "value": false, "word": 6, "writeable": true }, "MAC": { "bit_len": 48, "block": 0, "category": "MAC", "description": "MAC address", "efuse_type": "bytes:6", "name": "MAC", "pos": 0, "raw_value": "0x000000000000", "readable": true, "value": "00:00:00:00:00:00 (CRC 0x00 OK)", "word": 1, "writeable": true }, "MAC_CRC": { "bit_len": 8, "block": 0, "category": "MAC", "description": "CRC8 for MAC address", "efuse_type": "uint:8", "name": "MAC_CRC", "pos": 16, "raw_value": "0x00", "readable": true, "value": 0, "word": 2, "writeable": true }, "MAC_VERSION": { "bit_len": 8, "block": 3, "category": "MAC", "description": "Version of the MAC field", "efuse_type": "uint:8", "name": "MAC_VERSION", "pos": 24, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "PKG_VERSION": { "bit_len": 4, "block": 0, "category": "identity", "description": "calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_PACKAGE (read only)", "efuse_type": "uint:4", "name": "PKG_VERSION", "pos": null, "raw_value": "0x0", "readable": true, "value": 0, "word": null, "writeable": true }, "RD_DIS": { "bit_len": 4, "block": 0, "category": "config", "description": "Disable reading from BlOCK1-3", "efuse_type": "uint:4", "name": "RD_DIS", "pos": 16, "raw_value": "0x0", "readable": true, "value": 0, "word": 0, "writeable": true }, "SECURE_VERSION": { "bit_len": 32, "block": 3, "category": "security", "description": "Secure version for anti-rollback", "efuse_type": "uint:32", "name": "SECURE_VERSION", "pos": 0, "raw_value": "0x00000000", "readable": true, "value": 0, "word": 4, "writeable": true }, "SPI_PAD_CONFIG_CLK": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "Override SD_CLK pad (GPIO6/SPICLK)", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_CLK", "pos": 0, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "SPI_PAD_CONFIG_CS0": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "Override SD_CMD pad (GPIO11/SPICS0)", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_CS0", "pos": 15, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "SPI_PAD_CONFIG_D": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "Override SD_DATA_1 pad (GPIO8/SPID)", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_D", "pos": 10, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "SPI_PAD_CONFIG_HD": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "read for SPI_pad_config_hd", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_HD", "pos": 4, "raw_value": "0x00", "readable": true, "value": 0, "word": 3, "writeable": true }, "SPI_PAD_CONFIG_Q": { "bit_len": 5, "block": 0, "category": "spi pad", "description": "Override SD_DATA_0 pad (GPIO7/SPIQ)", "efuse_type": "uint:5", "name": "SPI_PAD_CONFIG_Q", "pos": 5, "raw_value": "0x00", "readable": true, "value": 0, "word": 5, "writeable": true }, "UART_DOWNLOAD_DIS": { "bit_len": 1, "block": 0, "category": "security", "description": "Disable UART download mode. Valid for ESP32 V3 and newer; only", "efuse_type": "bool", "name": "UART_DOWNLOAD_DIS", "pos": 27, "raw_value": "0x0", "readable": true, "value": false, "word": 0, "writeable": true }, "VOL_LEVEL_HP_INV": { "bit_len": 2, "block": 0, "category": "config", "description": "This field stores the voltage level for CPU to run at 240 MHz; or for flash/PSRAM to run at 80 MHz.0x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: level 4. (RO)", "efuse_type": "uint:2", "name": "VOL_LEVEL_HP_INV", "pos": 22, "raw_value": "0x0", "readable": true, "value": 0, "word": 5, "writeable": true }, "WAFER_VERSION_MAJOR": { "bit_len": 3, "block": 0, "category": "identity", "description": "calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CHIP_VER_REV2 and apb_ctl_date (read only)", "efuse_type": "uint:3", "name": "WAFER_VERSION_MAJOR", "pos": null, "raw_value": "0x3", "readable": true, "value": 3, "word": null, "writeable": true }, "WAFER_VERSION_MINOR": { "bit_len": 2, "block": 0, "category": "identity", "description": "", "efuse_type": "uint:2", "name": "WAFER_VERSION_MINOR", "pos": 24, "raw_value": "0x0", "readable": true, "value": 0, "word": 5, "writeable": true }, "WR_DIS": { "bit_len": 16, "block": 0, "category": "config", "description": "Efuse write disable mask", "efuse_type": "uint:16", "name": "WR_DIS", "pos": 0, "raw_value": "0x0000", "readable": true, "value": 0, "word": 0, "writeable": true }, "XPD_SDIO_FORCE": { "bit_len": 1, "block": 0, "category": "vdd", "description": "Ignore MTDI pin (GPIO12) for VDD_SDIO on reset", "efuse_type": "bool", "name": "XPD_SDIO_FORCE", "pos": 16, "raw_value": "0x0", "readable": true, "value": false, "word": 4, "writeable": true }, "XPD_SDIO_REG": { "bit_len": 1, "block": 0, "category": "vdd", "description": "read for XPD_SDIO_REG", "efuse_type": "bool", "name": "XPD_SDIO_REG", "pos": 14, "raw_value": "0x0", "readable": true, "value": false, "word": 4, "writeable": true }, "XPD_SDIO_TIEH": { "bit_len": 1, "block": 0, "category": "vdd", "description": "If XPD_SDIO_FORCE & XPD_SDIO_REG", "efuse_type": "bool", "name": "XPD_SDIO_TIEH", "pos": 15, "raw_value": "0x0", "readable": true, "value": "1.8V", "word": 4, "writeable": true } } PASSED test/test_espefuse.py::TestReadCommands::test_summary_filter Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp2zwtupsy -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp2zwtupsy -d --do-not-confirm summary MAC espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp2zwtupsy -d --do-not-confirm summary --format value_only MAC espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === 00:00:00:00:00:00 (CRC 0x00 OK) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp2zwtupsy -d --do-not-confirm summary --format value_only MAC WR_DIS A fatal error occurred: The 'value_only' format can be used exactly for one eFuse. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp2zwtupsy -d --do-not-confirm summary --format value_only MAC WR_DIS A fatal error occurred: The 'value_only' format can be used exactly for one eFuse. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === PASSED test/test_espefuse.py::TestReadCommands::test_get_custom_mac Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9_vh03kc -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9_vh03kc -d --do-not-confirm get-custom-mac -h espefuse v5.3.1 Usage: python -m espefuse get-custom-mac [OPTIONS] Get the 48-bit Custom MAC Address. ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9_vh03kc -d --do-not-confirm get-custom-mac espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "get-custom-mac" command === Custom MAC Address is not set in the device. PASSED test/test_espefuse.py::TestReadCommands::test_adc_info Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp_o5876bt -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp_o5876bt -d --do-not-confirm adc-info -h espefuse v5.3.1 Usage: python -m espefuse adc-info [OPTIONS] Display information about ADC calibration data stored in eFuse. ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp_o5876bt -d --do-not-confirm adc-info espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "adc-info" command === ADC VRef calibration: None (1100mV nominal) PASSED test/test_espefuse.py::TestReadCommands::test_adc_info_2 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpzpnxq4h5 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpzpnxq4h5 -d --do-not-confirm burn-efuse BLK3_PART_RESERVE 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - BLK3_PART_RESERVE Burning eFuses: - 'BLK3_PART_RESERVE' (BLOCK3 partially served for ADC calibration data) 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000004000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00004000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 4000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000004000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpzpnxq4h5 -d --do-not-confirm adc-info espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "adc-info" command === ADC VRef calibration: None (1100mV nominal) ADC readings stored in eFuse BLOCK3: ADC1 Low reading (150mV): 278 ADC1 High reading (850mV): 3265 ADC2 Low reading (150mV): 421 ADC2 High reading (850mV): 3406 PASSED test/test_espefuse.py::TestReadCommands::test_check_error Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk2igk6h8 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk2igk6h8 -d --do-not-confirm check-error -h espefuse v5.3.1 Usage: python -m espefuse check-error [OPTIONS] Checks eFuse errors. ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --recovery Recovery of BLOCKs after encoding errors. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk2igk6h8 -d --do-not-confirm check-error espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "check-error" command === EFUSE_REG_DEC_STATUS 0x00000000 No errors detected. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk2igk6h8 -d --do-not-confirm check-error --recovery espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "check-error" command === EFUSE_REG_DEC_STATUS 0x00000000 No errors detected. PASSED test/test_espefuse.py::TestReadProtectionCommands::test_read_protect_efuse Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpp8i110e9 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpp8i110e9 -d --do-not-confirm read-protect-efuse -h espefuse v5.3.1 Usage: python -m espefuse read-protect-efuse [OPTIONS] {BLK3_PART_RESERVE|FLASH_CRYPT_CONFIG|ENCRYPT_CONFIG|CODING_SCHEME|KEY_STATUS|SECURE_VERSION|MAC_VERSION|MAC_CUSTOM_V… Disable readback for the selected eFuse with the specified name. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * EFUSE_NAME {BLK3_PART_RESERVE|FLASH_CRYPT_CONFIG|ENCRYPT_CO [required] │ │ NFIG|CODING_SCHEME|KEY_STATUS|SECURE_VERSION|MAC │ │ _VERSION|MAC_CUSTOM_VER|BLOCK1|ENCRYPT_FLASH_KEY │ │ |BLOCK2|SECURE_BOOT_KEY|BLOCK3|CUSTOM_MAC_CRC|MA │ │ C_CUSTOM_CRC|CUSTOM_MAC|MAC_CUSTOM|ADC1_TP_LOW|A │ │ DC1_TP_HIGH|ADC2_TP_LOW|ADC2_TP_HIGH}... │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpp8i110e9 -d --do-not-confirm read-protect-efuse CODING_SCHEME MAC_VERSION BLOCK1 BLOCK2 BLOCK3 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "read-protect-efuse" command === Permanently read-disabling eFuses BLK3_PART_RESERVE, FLASH_CRYPT_CONFIG, CODING_SCHEME, KEY_STATUS Permanently read-disabling eFuses SECURE_VERSION, MAC_VERSION, BLOCK3, CUSTOM_MAC_CRC, CUSTOM_MAC Permanently read-disabling eFuse BLOCK1 If Secure Boot V2 is used, BLOCK2 must be readable, please stop this operation! Permanently read-disabling eFuse BLOCK2 Permanently read-disabling eFuses SECURE_VERSION, MAC_VERSION, BLOCK3, CUSTOM_MAC_CRC, CUSTOM_MAC Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x000000000000000000000000000000000000000000000000000f0000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0xf'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 000f0000 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= f0000 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 000000000000000000000000000000000000000000000000000f0000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 000f0000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 000f0000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpp8i110e9 -d --do-not-confirm read-protect-efuse CODING_SCHEME MAC_VERSION BLOCK1 BLOCK2 BLOCK3 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 000f0000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "read-protect-efuse" command === Efuse CODING_SCHEME is already read protected Efuse MAC_VERSION is already read protected Efuse BLOCK1 is already read protected Efuse BLOCK2 is already read protected Efuse BLOCK3 is already read protected Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn Nothing to burn, see messages above. Checking eFuses... Successful. PASSED test/test_espefuse.py::TestReadProtectionCommands::test_read_protect_efuse2 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyahej3at -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyahej3at -d --do-not-confirm write-protect-efuse RD_DIS espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "write-protect-efuse" command === Permanently write-disabling eFuse RD_DIS Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000000001 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0001'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00000001 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 1 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000001 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000001 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000001 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyahej3at -d --do-not-confirm read-protect-efuse CODING_SCHEME A fatal error occurred: This eFuse cannot be read-disabled due to the RD_DIS field being already write-disabled espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000001 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "read-protect-efuse" command === Permanently read-disabling eFuses BLK3_PART_RESERVE, FLASH_CRYPT_CONFIG, CODING_SCHEME, KEY_STATUS /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyahej3at -d --do-not-confirm read-protect-efuse CODING_SCHEME A fatal error occurred: This eFuse cannot be read-disabled due to the RD_DIS field being already write-disabled espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000001 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "read-protect-efuse" command === Permanently read-disabling eFuses BLK3_PART_RESERVE, FLASH_CRYPT_CONFIG, CODING_SCHEME, KEY_STATUS PASSED test/test_espefuse.py::TestReadProtectionCommands::test_read_protect_efuse3 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp91eufs5a -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp91eufs5a -d --do-not-confirm burn-efuse ABS_DONE_1 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - ABS_DONE_1 Burning eFuses: - 'ABS_DONE_1' (Secure boot V2 is enabled for bootloader image) 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000020000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b1'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000020 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 20 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000020000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000020 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000020 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp91eufs5a -d --do-not-confirm burn-key BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000020 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK2 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000020001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000000100 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Write data to BLOCK2 Addr 3ff5a0b8, data= a3a2a1a0 Addr 3ff5a0bc, data= a7a6a5a4 Addr 3ff5a0c0, data= abaaa9a8 Addr 3ff5a0c4, data= afaeadac Addr 3ff5a0c8, data= b3b2b1b0 Addr 3ff5a0cc, data= b7b6b5b4 Addr 3ff5a0d0, data= bbbab9b8 Addr 3ff5a0d4, data= bfbebdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a1a0 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0100'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. The same value for ABS_DONE_1 is already burned. Do not change the eFuse. BLOCK0 ( ) [0 ] to_write: 00000100 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 100 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000100 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000020 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000020 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp91eufs5a -d --do-not-confirm read-protect-efuse BLOCK2 A fatal error occurred: Secure Boot V2 is on (ABS_DONE_1 = True), BLOCK2 must be readable, stop this operation! espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000020 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "read-protect-efuse" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp91eufs5a -d --do-not-confirm read-protect-efuse BLOCK2 A fatal error occurred: Secure Boot V2 is on (ABS_DONE_1 = True), BLOCK2 must be readable, stop this operation! espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000020 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "read-protect-efuse" command === PASSED test/test_espefuse.py::TestReadProtectionCommands::test_read_protect_efuse4 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp81s2zevy -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp81s2zevy -d --do-not-confirm burn-key BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK2 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000000100 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Write data to BLOCK2 Addr 3ff5a0b8, data= a3a2a1a0 Addr 3ff5a0bc, data= a7a6a5a4 Addr 3ff5a0c0, data= abaaa9a8 Addr 3ff5a0c4, data= afaeadac Addr 3ff5a0c8, data= b3b2b1b0 Addr 3ff5a0cc, data= b7b6b5b4 Addr 3ff5a0d0, data= bbbab9b8 Addr 3ff5a0d4, data= bfbebdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a1a0 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0100'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00000100 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 100 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000100 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp81s2zevy -d --do-not-confirm read-protect-efuse BLOCK2 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "read-protect-efuse" command === If Secure Boot V2 is used, BLOCK2 must be readable, please stop this operation! Permanently read-disabling eFuse BLOCK2 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000100 (to write): 0x00000000000000000000000000000000000000000000000000020000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x2'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. The same value for WR_DIS is already burned. Do not change the eFuse. BLOCK0 ( ) [0 ] to_write: 00020000 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 20000 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000020000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00020100 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00020100 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. PASSED test/test_espefuse.py::TestReadProtectionCommands::test_burn_and_read_protect_efuse Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpbkxez0zo -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpbkxez0zo -d --do-not-confirm burn-efuse FLASH_CRYPT_CONFIG 15 RD_DIS 8 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - FLASH_CRYPT_CONFIG - RD_DIS Burning eFuses: - 'FLASH_CRYPT_CONFIG' (Flash encryption config (key tweak bits)) 0x0 -> 0xf - 'RD_DIS' (Disable reading from BlOCK1-3) 0x0 -> 0x8 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000f00000000000000000000000000000000000000000080000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x8'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 f0000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= f0000000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000f00000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 f0100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00080000 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 80000 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000080000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00080000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK0 ( ) [0 ] Expected: 00080000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK0 ( ) [0 ] Real : 00080000 00000000 00000000 00008000 00000000 00100000 00000000 Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00080000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Efuse FLASH_CRYPT_CONFIG is read-protected. Read back the burn value is not possible. Successful. PASSED test/test_espefuse.py::TestReadProtectionCommands::test_read_protect_invalid_name Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpl8j97nkr -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpl8j97nkr -d --do-not-confirm read-protect-efuse INVALID_NAME Usage: python -m espefuse read-protect-efuse [OPTIONS] {BLK3_PART_RESERVE|FLASH_CRYPT_CONFIG|ENCRYPT_CONFIG|CODING_SCHEME|KEY_STATUS|SECURE_VERSION|MAC_VERSION|MAC_CUSTOM_V… Try 'python -m espefuse read-protect-efuse -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for │ │ '{BLK3_PART_RESERVE|FLASH_CRYPT_CONFIG|ENCRYPT_CONFIG|CODING_SCHEME|KEY_STATUS|SECURE_VERSION|MAC_VERSION|MAC_CUSTOM │ │ _VER|BLOCK1|ENCRYPT_FLASH_KEY|BLOCK2|SECURE_BOOT_KEY|BLOCK3}...': 'INVALID_NAME' is not one of 'BLK3_PART_RESERVE', │ │ 'FLASH_CRYPT_CONFIG', 'ENCRYPT_CONFIG', 'CODING_SCHEME', 'KEY_STATUS', 'SECURE_VERSION', 'MAC_VERSION', │ │ 'MAC_CUSTOM_VER', 'BLOCK1', 'ENCRYPT_FLASH_KEY', 'BLOCK2', 'SECURE_BOOT_KEY', 'BLOCK3'. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpl8j97nkr -d --do-not-confirm read-protect-efuse INVALID_NAME Usage: python -m espefuse read-protect-efuse [OPTIONS] {BLK3_PART_RESERVE|FLASH_CRYPT_CONFIG|ENCRYPT_CONFIG|CODING_SCHEME|KEY_STATUS|SECURE_VERSION|MAC_VERSION|MAC_CUSTOM_V… Try 'python -m espefuse read-protect-efuse -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for │ │ '{BLK3_PART_RESERVE|FLASH_CRYPT_CONFIG|ENCRYPT_CONFIG|CODING_SCHEME|KEY_STATUS|SECURE_VERSION|MAC_VERSION|MAC_CUSTOM │ │ _VER|BLOCK1|ENCRYPT_FLASH_KEY|BLOCK2|SECURE_BOOT_KEY|BLOCK3}...': 'INVALID_NAME' is not one of 'BLK3_PART_RESERVE', │ │ 'FLASH_CRYPT_CONFIG', 'ENCRYPT_CONFIG', 'CODING_SCHEME', 'KEY_STATUS', 'SECURE_VERSION', 'MAC_VERSION', │ │ 'MAC_CUSTOM_VER', 'BLOCK1', 'ENCRYPT_FLASH_KEY', 'BLOCK2', 'SECURE_BOOT_KEY', 'BLOCK3'. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 PASSED test/test_espefuse.py::TestWriteProtectionCommands::test_write_protect_efuse Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8hfaqku -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8hfaqku -d --do-not-confirm write-protect-efuse -h espefuse v5.3.1 Usage: python -m espefuse write-protect-efuse [OPTIONS] {WR_DIS|RD_DIS|FLASH_CRYPT_CNT|UART_DOWNLOAD_DIS|MAC|MAC_FACTORY|MAC_CRC|MAC_FACTORY_CRC|DISABLE_APP_CPU|CHIP_VER_DIS… Disable writing to the eFuse with the specified name. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * EFUSE_NAME {WR_DIS|RD_DIS|FLASH_CRYPT_CNT|UART_DOWNLOAD_DIS [required] │ │ |MAC|MAC_FACTORY|MAC_CRC|MAC_FACTORY_CRC|DISABLE │ │ _APP_CPU|CHIP_VER_DIS_APP_CPU|DISABLE_BT|CHIP_VE │ │ R_DIS_BT|DIS_CACHE|CHIP_VER_DIS_CACHE|BLK3_PART_ │ │ RESERVE|CLK8M_FREQ|CK8M_FREQ|ADC_VREF|XPD_SDIO_R │ │ EG|XPD_SDIO_TIEH|SDIO_TIEH|XPD_SDIO_FORCE|SDIO_F │ │ ORCE|SPI_PAD_CONFIG_CLK|SPI_PAD_CONFIG_Q|SPI_PAD │ │ _CONFIG_D|SPI_PAD_CONFIG_CS0|VOL_LEVEL_HP_INV|FL │ │ ASH_CRYPT_CONFIG|ENCRYPT_CONFIG|CODING_SCHEME|CO │ │ NSOLE_DEBUG_DISABLE|ABS_DONE_0|ABS_DONE_1|JTAG_D │ │ ISABLE|DISABLE_JTAG|DISABLE_DL_ENCRYPT|DISABLE_D │ │ L_DECRYPT|DISABLE_DL_CACHE|KEY_STATUS|SECURE_VER │ │ SION|MAC_VERSION|MAC_CUSTOM_VER|BLOCK1|ENCRYPT_F │ │ LASH_KEY|BLOCK2|SECURE_BOOT_KEY|BLOCK3|CUSTOM_MA │ │ C_CRC|MAC_CUSTOM_CRC|CUSTOM_MAC|MAC_CUSTOM|ADC1_ │ │ TP_LOW|ADC1_TP_HIGH|ADC2_TP_LOW|ADC2_TP_HIGH}... │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8hfaqku -d --do-not-confirm write-protect-efuse WR_DIS RD_DIS CODING_SCHEME XPD_SDIO_FORCE XPD_SDIO_REG XPD_SDIO_TIEH SPI_PAD_CONFIG_CLK FLASH_CRYPT_CNT UART_DOWNLOAD_DIS FLASH_CRYPT_CONFIG ADC_VREF BLOCK1 BLOCK2 BLOCK3 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "write-protect-efuse" command === Permanently write-disabling eFuse WR_DIS Permanently write-disabling eFuse RD_DIS Permanently write-disabling eFuses BLK3_PART_RESERVE, FLASH_CRYPT_CONFIG, CODING_SCHEME, KEY_STATUS Permanently write-disabling eFuses XPD_SDIO_REG, XPD_SDIO_TIEH, XPD_SDIO_FORCE Permanently write-disabling eFuses XPD_SDIO_REG, XPD_SDIO_TIEH, XPD_SDIO_FORCE Permanently write-disabling eFuses XPD_SDIO_REG, XPD_SDIO_TIEH, XPD_SDIO_FORCE Permanently write-disabling eFuses SPI_PAD_CONFIG_CLK, SPI_PAD_CONFIG_Q, SPI_PAD_CONFIG_D, SPI_PAD_CONFIG_CS0 Permanently write-disabling eFuses FLASH_CRYPT_CNT, UART_DOWNLOAD_DIS Permanently write-disabling eFuses FLASH_CRYPT_CNT, UART_DOWNLOAD_DIS Permanently write-disabling eFuses BLK3_PART_RESERVE, FLASH_CRYPT_CONFIG, CODING_SCHEME, KEY_STATUS Permanently write-disabling eFuses CLK8M_FREQ, ADC_VREF Permanently write-disabling eFuse BLOCK1 Permanently write-disabling eFuse BLOCK2 Permanently write-disabling eFuses SECURE_VERSION, MAC_VERSION, BLOCK3, CUSTOM_MAC_CRC, CUSTOM_MAC Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x000000000000000000000000000000000000000000000000000007f7 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x07f7'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 000007f7 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 7f7 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 000000000000000000000000000000000000000000000000000007f7 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 000007f7 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 000007f7 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8hfaqku -d --do-not-confirm write-protect-efuse WR_DIS RD_DIS espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 000007f7 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "write-protect-efuse" command === Efuse WR_DIS is already write protected. Efuse RD_DIS is already write protected. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn Nothing to burn, see messages above. Checking eFuses... Successful. PASSED test/test_espefuse.py::TestWriteProtectionCommands::test_write_protect_efuse2 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpxjdz1ta8 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpxjdz1ta8 -d --do-not-confirm write-protect-efuse WR_DIS espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "write-protect-efuse" command === Permanently write-disabling eFuse WR_DIS Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000000002 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0002'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00000002 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 2 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000002 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000002 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000002 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpxjdz1ta8 -d --do-not-confirm write-protect-efuse CODING_SCHEME A fatal error occurred: This eFuse cannot be write-disabled due to the WR_DIS field being already write-disabled espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000002 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "write-protect-efuse" command === Permanently write-disabling eFuses BLK3_PART_RESERVE, FLASH_CRYPT_CONFIG, CODING_SCHEME, KEY_STATUS /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpxjdz1ta8 -d --do-not-confirm write-protect-efuse CODING_SCHEME A fatal error occurred: This eFuse cannot be write-disabled due to the WR_DIS field being already write-disabled espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000002 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "write-protect-efuse" command === Permanently write-disabling eFuses BLK3_PART_RESERVE, FLASH_CRYPT_CONFIG, CODING_SCHEME, KEY_STATUS PASSED test/test_espefuse.py::TestWriteProtectionCommands::test_write_protect_invalid_name Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4h_itokk -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4h_itokk -d --do-not-confirm write-protect-efuse INVALID_NAME Usage: python -m espefuse write-protect-efuse [OPTIONS] {WR_DIS|RD_DIS|FLASH_CRYPT_CNT|UART_DOWNLOAD_DIS|MAC|MAC_FACTORY|MAC_CRC|MAC_FACTORY_CRC|DISABLE_APP_CPU|CHIP_VER_DIS… Try 'python -m espefuse write-protect-efuse -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for │ │ '{WR_DIS|RD_DIS|FLASH_CRYPT_CNT|UART_DOWNLOAD_DIS|MAC|MAC_FACTORY|MAC_CRC|MAC_FACTORY_CRC|DISABLE_APP_CPU|CHIP_VER_D │ │ IS_APP_CPU|DISABLE_BT|CHIP_VER_DIS_BT|DIS_CACHE|CHIP_VER_DIS_CACHE|BLK3_PART_RESERVE|CLK8M_FREQ|CK8M_FREQ|ADC_VREF|X │ │ PD_SDIO_REG|XPD_SDIO_TIEH|SDIO_TIEH|XPD_SDIO_FORCE|SDIO_FORCE|SPI_PAD_CONFIG_CLK|SPI_PAD_CONFIG_Q|SPI_PAD_CONFIG_D|S │ │ PI_PAD_CONFIG_CS0|VOL_LEVEL_HP_INV|FLASH_CRYPT_CONFIG|ENCRYPT_CONFIG|CODING_SCHEME|CONSOLE_DEBUG_DISABLE|ABS_DONE_0| │ │ ABS_DONE_1|JTAG_DISABLE|DISABLE_JTAG|DISABLE_DL_ENCRYPT|DISABLE_DL_DECRYPT|DISABLE_DL_CACHE|KEY_STATUS|SECURE_VERSIO │ │ N|MAC_VERSION|MAC_CUSTOM_VER|BLOCK1|ENCRYPT_FLASH_KEY|BLOCK2|SECURE_BOOT_KEY|BLOCK3}...': 'INVALID_NAME' is not one │ │ of 'WR_DIS', 'RD_DIS', 'FLASH_CRYPT_CNT', 'UART_DOWNLOAD_DIS', 'MAC', 'MAC_FACTORY', 'MAC_CRC', 'MAC_FACTORY_CRC', │ │ 'DISABLE_APP_CPU', 'CHIP_VER_DIS_APP_CPU', 'DISABLE_BT', 'CHIP_VER_DIS_BT', 'DIS_CACHE', 'CHIP_VER_DIS_CACHE', │ │ 'BLK3_PART_RESERVE', 'CLK8M_FREQ', 'CK8M_FREQ', 'ADC_VREF', 'XPD_SDIO_REG', 'XPD_SDIO_TIEH', 'SDIO_TIEH', │ │ 'XPD_SDIO_FORCE', 'SDIO_FORCE', 'SPI_PAD_CONFIG_CLK', 'SPI_PAD_CONFIG_Q', 'SPI_PAD_CONFIG_D', 'SPI_PAD_CONFIG_CS0', │ │ 'VOL_LEVEL_HP_INV', 'FLASH_CRYPT_CONFIG', 'ENCRYPT_CONFIG', 'CODING_SCHEME', 'CONSOLE_DEBUG_DISABLE', 'ABS_DONE_0', │ │ 'ABS_DONE_1', 'JTAG_DISABLE', 'DISABLE_JTAG', 'DISABLE_DL_ENCRYPT', 'DISABLE_DL_DECRYPT', 'DISABLE_DL_CACHE', │ │ 'KEY_STATUS', 'SECURE_VERSION', 'MAC_VERSION', 'MAC_CUSTOM_VER', 'BLOCK1', 'ENCRYPT_FLASH_KEY', 'BLOCK2', │ │ 'SECURE_BOOT_KEY', 'BLOCK3'. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4h_itokk -d --do-not-confirm write-protect-efuse INVALID_NAME Usage: python -m espefuse write-protect-efuse [OPTIONS] {WR_DIS|RD_DIS|FLASH_CRYPT_CNT|UART_DOWNLOAD_DIS|MAC|MAC_FACTORY|MAC_CRC|MAC_FACTORY_CRC|DISABLE_APP_CPU|CHIP_VER_DIS… Try 'python -m espefuse write-protect-efuse -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for │ │ '{WR_DIS|RD_DIS|FLASH_CRYPT_CNT|UART_DOWNLOAD_DIS|MAC|MAC_FACTORY|MAC_CRC|MAC_FACTORY_CRC|DISABLE_APP_CPU|CHIP_VER_D │ │ IS_APP_CPU|DISABLE_BT|CHIP_VER_DIS_BT|DIS_CACHE|CHIP_VER_DIS_CACHE|BLK3_PART_RESERVE|CLK8M_FREQ|CK8M_FREQ|ADC_VREF|X │ │ PD_SDIO_REG|XPD_SDIO_TIEH|SDIO_TIEH|XPD_SDIO_FORCE|SDIO_FORCE|SPI_PAD_CONFIG_CLK|SPI_PAD_CONFIG_Q|SPI_PAD_CONFIG_D|S │ │ PI_PAD_CONFIG_CS0|VOL_LEVEL_HP_INV|FLASH_CRYPT_CONFIG|ENCRYPT_CONFIG|CODING_SCHEME|CONSOLE_DEBUG_DISABLE|ABS_DONE_0| │ │ ABS_DONE_1|JTAG_DISABLE|DISABLE_JTAG|DISABLE_DL_ENCRYPT|DISABLE_DL_DECRYPT|DISABLE_DL_CACHE|KEY_STATUS|SECURE_VERSIO │ │ N|MAC_VERSION|MAC_CUSTOM_VER|BLOCK1|ENCRYPT_FLASH_KEY|BLOCK2|SECURE_BOOT_KEY|BLOCK3}...': 'INVALID_NAME' is not one │ │ of 'WR_DIS', 'RD_DIS', 'FLASH_CRYPT_CNT', 'UART_DOWNLOAD_DIS', 'MAC', 'MAC_FACTORY', 'MAC_CRC', 'MAC_FACTORY_CRC', │ │ 'DISABLE_APP_CPU', 'CHIP_VER_DIS_APP_CPU', 'DISABLE_BT', 'CHIP_VER_DIS_BT', 'DIS_CACHE', 'CHIP_VER_DIS_CACHE', │ │ 'BLK3_PART_RESERVE', 'CLK8M_FREQ', 'CK8M_FREQ', 'ADC_VREF', 'XPD_SDIO_REG', 'XPD_SDIO_TIEH', 'SDIO_TIEH', │ │ 'XPD_SDIO_FORCE', 'SDIO_FORCE', 'SPI_PAD_CONFIG_CLK', 'SPI_PAD_CONFIG_Q', 'SPI_PAD_CONFIG_D', 'SPI_PAD_CONFIG_CS0', │ │ 'VOL_LEVEL_HP_INV', 'FLASH_CRYPT_CONFIG', 'ENCRYPT_CONFIG', 'CODING_SCHEME', 'CONSOLE_DEBUG_DISABLE', 'ABS_DONE_0', │ │ 'ABS_DONE_1', 'JTAG_DISABLE', 'DISABLE_JTAG', 'DISABLE_DL_ENCRYPT', 'DISABLE_DL_DECRYPT', 'DISABLE_DL_CACHE', │ │ 'KEY_STATUS', 'SECURE_VERSION', 'MAC_VERSION', 'MAC_CUSTOM_VER', 'BLOCK1', 'ENCRYPT_FLASH_KEY', 'BLOCK2', │ │ 'SECURE_BOOT_KEY', 'BLOCK3'. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 PASSED test/test_espefuse.py::TestBurnCustomMacCommands::test_burn_custom_mac Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp_kjw0k4g -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp_kjw0k4g -d --do-not-confirm burn-custom-mac -h espefuse v5.3.1 Usage: python -m espefuse burn-custom-mac [OPTIONS] MAC Burn a 48-bit Custom MAC address to EFUSE,BLOCK3. Mac address should be given in hexadecimal format with bytes separated by colons (e.g. AA:CD:EF:01:02:03). ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * MAC CUSTOM_MAC [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --force-write-always Write the eFuse even if it looks like it's already been written, or is write protected. │ │ Note that this option can't disable write protection, or clear any bit which has already │ │ been set. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp_kjw0k4g -d --do-not-confirm burn-custom-mac AA:CD:EF:11:22:33 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-custom-mac" command === - 'MAC_VERSION' (Version of the MAC field) 0x00 -> 0x1 - 'CUSTOM_MAC' (Custom MAC address) 0x000000000000 -> 0x332211efcdaa - 'CUSTOM_MAC_CRC' (CRC8 for custom MAC address) 0x00 -> 0x63 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: efcdaa63 00332211 00000000 00000000 00000000 01000000 00000000 00000000 Write data to BLOCK3 Addr 3ff5a0d8, data= efcdaa63 Addr 3ff5a0dc, data= 332211 Addr 3ff5a0e0, data= 0 Addr 3ff5a0e4, data= 0 Addr 3ff5a0e8, data= 0 Addr 3ff5a0ec, data= 1000000 Addr 3ff5a0f0, data= 0 Addr 3ff5a0f4, data= 0 BLOCK3 00000000000000000100000000000000000000000000000000332211efcdaa63 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: efcdaa63 00332211 00000000 00000000 00000000 01000000 00000000 00000000 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: efcdaa63 00332211 00000000 00000000 00000000 01000000 00000000 00000000 Custom MAC Address version 1: aa:cd:ef:11:22:33 (CRC 0x63 OK) Successful. PASSED test/test_espefuse.py::TestBurnCustomMacCommands::test_burn_custom_mac2 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpr1mh5agk -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpr1mh5agk -d --do-not-confirm burn-custom-mac AA:CD:EF:11:22:33:44 A fatal error occurred: MAC Address needs to be a 6-byte hexadecimal format separated by colons (:)! espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpr1mh5agk -d --do-not-confirm burn-custom-mac AA:CD:EF:11:22:33:44 A fatal error occurred: MAC Address needs to be a 6-byte hexadecimal format separated by colons (:)! espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 PASSED test/test_espefuse.py::TestBurnCustomMacCommands::test_burn_custom_mac3 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmplcv7k6os -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmplcv7k6os -d --do-not-confirm burn-custom-mac AB:CD:EF:11:22:33 A fatal error occurred: Custom MAC must be a unicast MAC! espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmplcv7k6os -d --do-not-confirm burn-custom-mac AB:CD:EF:11:22:33 A fatal error occurred: Custom MAC must be a unicast MAC! espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 PASSED test/test_espefuse.py::TestBurnCustomMacCommands::test_burn_custom_mac_with_34_coding_scheme Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpta0wp25g -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpta0wp25g -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpta0wp25g -d --do-not-confirm burn-custom-mac -h espefuse v5.3.1 Usage: python -m espefuse burn-custom-mac [OPTIONS] MAC Burn a 48-bit Custom MAC address to EFUSE,BLOCK3. Mac address should be given in hexadecimal format with bytes separated by colons (e.g. AA:CD:EF:01:02:03). ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * MAC CUSTOM_MAC [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --force-write-always Write the eFuse even if it looks like it's already been written, or is write protected. │ │ Note that this option can't disable write protection, or clear any bit which has already │ │ been set. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpta0wp25g -d --do-not-confirm burn-custom-mac AA:CD:EF:01:02:03 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-custom-mac" command === - 'MAC_VERSION' (Version of the MAC field) 0x00 -> 0x1 - 'CUSTOM_MAC' (Custom MAC address) 0x000000000000 -> 0x030201efcdaa - 'CUSTOM_MAC_CRC' (CRC8 for custom MAC address) 0x00 -> 0x56 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: efcdaa56 00030201 00000000 00000000 00000000 01000000 Write data to BLOCK3 Addr 3ff5a0d8, data= efcdaa56 Addr 3ff5a0dc, data= 42dd0201 Addr 3ff5a0e0, data= 3 Addr 3ff5a0e4, data= 2030000 Addr 3ff5a0e8, data= 0 Addr 3ff5a0ec, data= 0 Addr 3ff5a0f0, data= 0 Addr 3ff5a0f4, data= 6010100 BLOCK3 06010100000000000000000000000000020300000000000342dd0201efcdaa56 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: efcdaa56 00030201 00000000 00000000 00000000 01000000 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: efcdaa56 00030201 00000000 00000000 00000000 01000000 Custom MAC Address version 1: aa:cd:ef:01:02:03 (CRC 0x56 OK) Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpta0wp25g -d --do-not-confirm get-custom-mac espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: efcdaa56 00030201 00000000 00000000 00000000 01000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "get-custom-mac" command === Custom MAC Address version 1: aa:cd:ef:01:02:03 (CRC 0x56 OK) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpta0wp25g -d --do-not-confirm burn-custom-mac FE:22:33:44:55:66 A fatal error occurred: New value contains some bits that cannot be cleared (value will be 0x675745ffeffe)(use '--force-write-always' option to ignore it) espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: efcdaa56 00030201 00000000 00000000 00000000 01000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-custom-mac" command === - 'CUSTOM_MAC' (Custom MAC address) 0x030201efcdaa -> 0x6655443322fe /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpta0wp25g -d --do-not-confirm burn-custom-mac FE:22:33:44:55:66 A fatal error occurred: New value contains some bits that cannot be cleared (value will be 0x675745ffeffe)(use '--force-write-always' option to ignore it) espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: efcdaa56 00030201 00000000 00000000 00000000 01000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-custom-mac" command === - 'CUSTOM_MAC' (Custom MAC address) 0x030201efcdaa -> 0x6655443322fe PASSED test/test_espefuse.py::TestSetFlashVoltageCommands::test_set_flash_voltage_1_8v Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpac6bo81u -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpac6bo81u -d --do-not-confirm set-flash-voltage -h espefuse v5.3.1 Usage: python -m espefuse set-flash-voltage [OPTIONS] {1.8V|3.3V|OFF} Permanently set the internal flash voltage regulator to either 1.8V, 3.3V or OFF. This means GPIO12 can be high or low at reset without changing the flash voltage. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * VOLTAGE {1.8V|3.3V|OFF} [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpac6bo81u -d --do-not-confirm set-flash-voltage 1.8V espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === Set internal flash voltage regulator (VDD_SDIO) to 1.8V. The following eFuses are burned: XPD_SDIO_FORCE, XPD_SDIO_REG. It is possible to later increase the voltage to 3.3V (permanently) by burning additional eFuse XPD_SDIO_TIEH. VDD_SDIO setting complete. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000001400000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00014000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 14000 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000001400000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00014000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00014000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpac6bo81u -d --do-not-confirm set-flash-voltage 3.3V espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00014000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === Enable internal flash voltage regulator (VDD_SDIO) to 3.3V. The following eFuses are burned: XPD_SDIO_FORCE, XPD_SDIO_REG, XPD_SDIO_TIEH. The same value for XPD_SDIO_FORCE is already burned. Do not change the eFuse. The same value for XPD_SDIO_REG is already burned. Do not change the eFuse. VDD_SDIO setting complete. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000001400000008000000000000000000000000000 (to write): 0x00000000000000000000800000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00008000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 8000 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000800000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpac6bo81u -d --do-not-confirm set-flash-voltage OFF A fatal error occurred: Can't set flash regulator to OFF as XPD_SDIO_REG eFuse is already burned. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpac6bo81u -d --do-not-confirm set-flash-voltage OFF A fatal error occurred: Can't set flash regulator to OFF as XPD_SDIO_REG eFuse is already burned. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === PASSED test/test_espefuse.py::TestSetFlashVoltageCommands::test_set_flash_voltage_3_3v Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9x8h4lb2 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9x8h4lb2 -d --do-not-confirm set-flash-voltage 3.3V espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === Enable internal flash voltage regulator (VDD_SDIO) to 3.3V. The following eFuses are burned: XPD_SDIO_FORCE, XPD_SDIO_REG, XPD_SDIO_TIEH. VDD_SDIO setting complete. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000001c00000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 0001c000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 1c000 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000001c00000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9x8h4lb2 -d --do-not-confirm set-flash-voltage 1.8V A fatal error occurred: Can't set regulator to 1.8V is XPD_SDIO_TIEH eFuse is already burned. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9x8h4lb2 -d --do-not-confirm set-flash-voltage 1.8V A fatal error occurred: Can't set regulator to 1.8V is XPD_SDIO_TIEH eFuse is already burned. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9x8h4lb2 -d --do-not-confirm set-flash-voltage OFF A fatal error occurred: Can't set flash regulator to OFF as XPD_SDIO_REG eFuse is already burned. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9x8h4lb2 -d --do-not-confirm set-flash-voltage OFF A fatal error occurred: Can't set flash regulator to OFF as XPD_SDIO_REG eFuse is already burned. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === PASSED test/test_espefuse.py::TestSetFlashVoltageCommands::test_set_flash_voltage_off Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb9syb53a -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb9syb53a -d --do-not-confirm set-flash-voltage OFF espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === Disable internal flash voltage regulator (VDD_SDIO). SPI flash will need to be powered from an external source. The following eFuse is burned: XPD_SDIO_FORCE. It is possible to later re-enable the internal regulatorto 1.8V or 3.3Vby burning an additional eFuse. VDD_SDIO setting complete. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000001000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00010000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 10000 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000001000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00010000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00010000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb9syb53a -d --do-not-confirm set-flash-voltage 3.3V espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00010000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === Enable internal flash voltage regulator (VDD_SDIO) to 3.3V. The following eFuses are burned: XPD_SDIO_FORCE, XPD_SDIO_REG, XPD_SDIO_TIEH. The same value for XPD_SDIO_FORCE is already burned. Do not change the eFuse. VDD_SDIO setting complete. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000001000000008000000000000000000000000000 (to write): 0x00000000000000000000c00000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 0000c000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= c000 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000c00000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 0001c000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. PASSED test/test_espefuse.py::TestSetFlashVoltageCommands::test_set_flash_voltage_off2 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp45akvuju -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp45akvuju -d --do-not-confirm set-flash-voltage OFF espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === Disable internal flash voltage regulator (VDD_SDIO). SPI flash will need to be powered from an external source. The following eFuse is burned: XPD_SDIO_FORCE. It is possible to later re-enable the internal regulatorto 1.8V or 3.3Vby burning an additional eFuse. VDD_SDIO setting complete. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000001000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00010000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 10000 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000001000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00010000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00010000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp45akvuju -d --do-not-confirm set-flash-voltage 1.8V espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00010000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "set-flash-voltage" command === Set internal flash voltage regulator (VDD_SDIO) to 1.8V. The following eFuses are burned: XPD_SDIO_FORCE, XPD_SDIO_REG. It is possible to later increase the voltage to 3.3V (permanently) by burning additional eFuse XPD_SDIO_TIEH. The same value for XPD_SDIO_FORCE is already burned. Do not change the eFuse. VDD_SDIO setting complete. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000001000000008000000000000000000000000000 (to write): 0x00000000000000000000400000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00004000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 4000 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000400000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00014000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00014000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. PASSED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_bool_given_none SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_bool_given_0 SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_bool_given_2 SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_bytes_ok SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_bytes_given_short_val SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_bytes_given_none SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_int_ok SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_int_given_out_of_range_val SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_int_given_none SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_int_given_0 SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_bitcount_given_out_of_range_val SKIPPED test/test_espefuse.py::TestValueArgForBurnEfuseCommands::test_efuse_is_bitcount_given_increase_over_max SKIPPED test/test_espefuse.py::TestBurnEfuseCommands::test_set_spi_flash_pin_efuses Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb0qr2olo -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb0qr2olo -d --do-not-confirm burn-efuse SPI_PAD_CONFIG_HD 30 A fatal error occurred: IO pins 30 & 31 cannot be set for SPI flash. 0-29, 32 & 33 only. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb0qr2olo -d --do-not-confirm burn-efuse SPI_PAD_CONFIG_HD 30 A fatal error occurred: IO pins 30 & 31 cannot be set for SPI flash. 0-29, 32 & 33 only. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb0qr2olo -d --do-not-confirm burn-efuse SPI_PAD_CONFIG_Q 0x23 A fatal error occurred: IO pin 35 cannot be set for SPI flash. 0-29, 32 & 33 only. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb0qr2olo -d --do-not-confirm burn-efuse SPI_PAD_CONFIG_Q 0x23 A fatal error occurred: IO pin 35 cannot be set for SPI flash. 0-29, 32 & 33 only. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb0qr2olo -d --do-not-confirm burn-efuse SPI_PAD_CONFIG_CS0 33 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - SPI_PAD_CONFIG_CS0 Burning eFuses: - 'SPI_PAD_CONFIG_CS0' (Override SD_CMD pad (GPIO11/SPICS0)) 0b00000 -> 0b11111 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000f80000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 000f8000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= f8000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000f80000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 001f8000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 001f8000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. PASSED test/test_espefuse.py::TestBurnEfuseCommands::test_burn_mac_custom_efuse Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse -h espefuse v5.3.1 Usage: python -m espefuse burn-efuse [OPTIONS] [ ] ... Burn the eFuse with the specified name. Allowed options for EFUSE_NAME: [WR_DIS, RD_DIS, FLASH_CRYPT_CNT, UART_DOWNLOAD_DIS, MAC, MAC_CRC, DISABLE_APP_CPU, DISABLE_BT, CHIP_PACKAGE_4BIT, DIS_CACHE, SPI_PAD_CONFIG_HD, CHIP_PACKAGE, CHIP_CPU_FREQ_LOW, CHIP_CPU_FREQ_RATED, BLK3_PART_RESERVE, CHIP_VER_REV1, CLK8M_FREQ, ADC_VREF, XPD_SDIO_REG, XPD_SDIO_TIEH, XPD_SDIO_FORCE, SPI_PAD_CONFIG_CLK, SPI_PAD_CONFIG_Q, SPI_PAD_CONFIG_D, SPI_PAD_CONFIG_CS0, CHIP_VER_REV2, VOL_LEVEL_HP_INV, WAFER_VERSION_MINOR, FLASH_CRYPT_CONFIG, CODING_SCHEME, CONSOLE_DEBUG_DISABLE, DISABLE_SDIO_HOST, ABS_DONE_0, ABS_DONE_1, JTAG_DISABLE, DISABLE_DL_ENCRYPT, DISABLE_DL_DECRYPT, DISABLE_DL_CACHE, KEY_STATUS, SECURE_VERSION, MAC_VERSION, BLOCK1, BLOCK2, BLOCK3, CUSTOM_MAC_CRC, CUSTOM_MAC, ADC1_TP_LOW, ADC1_TP_HIGH, ADC2_TP_LOW, ADC2_TP_HIGH]. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * NAME_VALUE_PAIRS [ ] ... [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --force Suppress errors when burning eFuses. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse MAC AA:CD:EF:01:02:03 A fatal error occurred: Writing Factory MAC address is not supported espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - MAC Burning eFuses: - 'MAC' (MAC address) 0x000000000000 -> 0x030201efcdaa /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse MAC AA:CD:EF:01:02:03 A fatal error occurred: Writing Factory MAC address is not supported espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - MAC Burning eFuses: - 'MAC' (MAC address) 0x000000000000 -> 0x030201efcdaa Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse MAC_VERSION 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK3 - MAC_VERSION Burning eFuses: - 'MAC_VERSION' (Version of the MAC field) 0x00 -> 0x01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00000000 Write data to BLOCK3 Addr 3ff5a0d8, data= 0 Addr 3ff5a0dc, data= 0 Addr 3ff5a0e0, data= 0 Addr 3ff5a0e4, data= 0 Addr 3ff5a0e8, data= 0 Addr 3ff5a0ec, data= 1000000 Addr 3ff5a0f0, data= 0 Addr 3ff5a0f4, data= 0 BLOCK3 0000000000000000010000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00000000 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse -h espefuse v5.3.1 Usage: python -m espefuse burn-efuse [OPTIONS] [ ] ... Burn the eFuse with the specified name. Allowed options for EFUSE_NAME: [WR_DIS, RD_DIS, FLASH_CRYPT_CNT, UART_DOWNLOAD_DIS, MAC, MAC_CRC, DISABLE_APP_CPU, DISABLE_BT, CHIP_PACKAGE_4BIT, DIS_CACHE, SPI_PAD_CONFIG_HD, CHIP_PACKAGE, CHIP_CPU_FREQ_LOW, CHIP_CPU_FREQ_RATED, BLK3_PART_RESERVE, CHIP_VER_REV1, CLK8M_FREQ, ADC_VREF, XPD_SDIO_REG, XPD_SDIO_TIEH, XPD_SDIO_FORCE, SPI_PAD_CONFIG_CLK, SPI_PAD_CONFIG_Q, SPI_PAD_CONFIG_D, SPI_PAD_CONFIG_CS0, CHIP_VER_REV2, VOL_LEVEL_HP_INV, WAFER_VERSION_MINOR, FLASH_CRYPT_CONFIG, CODING_SCHEME, CONSOLE_DEBUG_DISABLE, DISABLE_SDIO_HOST, ABS_DONE_0, ABS_DONE_1, JTAG_DISABLE, DISABLE_DL_ENCRYPT, DISABLE_DL_DECRYPT, DISABLE_DL_CACHE, KEY_STATUS, SECURE_VERSION, MAC_VERSION, BLOCK1, BLOCK2, BLOCK3, CUSTOM_MAC_CRC, CUSTOM_MAC, ADC1_TP_LOW, ADC1_TP_HIGH, ADC2_TP_LOW, ADC2_TP_HIGH]. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * NAME_VALUE_PAIRS [ ] ... [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --force Suppress errors when burning eFuses. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse CUSTOM_MAC AB:CD:EF:01:02:03 A fatal error occurred: Custom MAC must be a unicast MAC! espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse CUSTOM_MAC AB:CD:EF:01:02:03 A fatal error occurred: Custom MAC must be a unicast MAC! espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm burn-efuse CUSTOM_MAC AA:CD:EF:01:02:03 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK3 - CUSTOM_MAC Burning eFuses: - 'CUSTOM_MAC' (Custom MAC address) 0x000000000000 -> 0x030201efcdaa - 'CUSTOM_MAC' (Custom MAC address) 0x000000000000 -> 0x030201efcdaa - 'CUSTOM_MAC_CRC' (CRC8 for custom MAC address) 0x00 -> 0x56 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is not empty (written ): 0x0000000000000000010000000000000000000000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000030201efcdaa56 (coding scheme = NONE) . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: efcdaa56 00030201 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK3 Addr 3ff5a0d8, data= efcdaa56 Addr 3ff5a0dc, data= 30201 Addr 3ff5a0e0, data= 0 Addr 3ff5a0e4, data= 0 Addr 3ff5a0e8, data= 0 Addr 3ff5a0ec, data= 0 Addr 3ff5a0f0, data= 0 Addr 3ff5a0f4, data= 0 BLOCK3 00000000000000000000000000000000000000000000000000030201efcdaa56 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: efcdaa56 00030201 00000000 00000000 00000000 01000000 00000000 00000000 BURN BLOCK3 - OK (all write block bits are set) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: efcdaa56 00030201 00000000 00000000 00000000 01000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmply0yot9f -d --do-not-confirm get-custom-mac espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: efcdaa56 00030201 00000000 00000000 00000000 01000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "get-custom-mac" command === Custom MAC Address version 1: aa:cd:ef:01:02:03 (CRC 0x56 OK) PASSED test/test_espefuse.py::TestBurnEfuseCommands::test_burn_efuse Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk46foxd3 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk46foxd3 -d --do-not-confirm burn-efuse -h espefuse v5.3.1 Usage: python -m espefuse burn-efuse [OPTIONS] [ ] ... Burn the eFuse with the specified name. Allowed options for EFUSE_NAME: [WR_DIS, RD_DIS, FLASH_CRYPT_CNT, UART_DOWNLOAD_DIS, MAC, MAC_CRC, DISABLE_APP_CPU, DISABLE_BT, CHIP_PACKAGE_4BIT, DIS_CACHE, SPI_PAD_CONFIG_HD, CHIP_PACKAGE, CHIP_CPU_FREQ_LOW, CHIP_CPU_FREQ_RATED, BLK3_PART_RESERVE, CHIP_VER_REV1, CLK8M_FREQ, ADC_VREF, XPD_SDIO_REG, XPD_SDIO_TIEH, XPD_SDIO_FORCE, SPI_PAD_CONFIG_CLK, SPI_PAD_CONFIG_Q, SPI_PAD_CONFIG_D, SPI_PAD_CONFIG_CS0, CHIP_VER_REV2, VOL_LEVEL_HP_INV, WAFER_VERSION_MINOR, FLASH_CRYPT_CONFIG, CODING_SCHEME, CONSOLE_DEBUG_DISABLE, DISABLE_SDIO_HOST, ABS_DONE_0, ABS_DONE_1, JTAG_DISABLE, DISABLE_DL_ENCRYPT, DISABLE_DL_DECRYPT, DISABLE_DL_CACHE, KEY_STATUS, SECURE_VERSION, MAC_VERSION, BLOCK1, BLOCK2, BLOCK3, CUSTOM_MAC_CRC, CUSTOM_MAC, ADC1_TP_LOW, ADC1_TP_HIGH, ADC2_TP_LOW, ADC2_TP_HIGH]. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * NAME_VALUE_PAIRS [ ] ... [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --force Suppress errors when burning eFuses. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk46foxd3 -d --do-not-confirm burn-efuse CHIP_VER_REV2 1 DISABLE_DL_ENCRYPT 1 CONSOLE_DEBUG_DISABLE 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV2 - DISABLE_DL_ENCRYPT - CONSOLE_DEBUG_DISABLE Burning eFuses: - 'CHIP_VER_REV2' () 0b1 -> 0b1 The same value for CHIP_VER_REV2 is already burned. Do not change the eFuse. - 'DISABLE_DL_ENCRYPT' (Disable flash encryption in UART bootloader) 0b0 -> 0b1 - 'CONSOLE_DEBUG_DISABLE' (Disable ROM BASIC interpreter fallback) 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000084000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000084 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 84 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000084000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000084 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000084 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk46foxd3 -d --do-not-confirm burn-efuse BLOCK1 0x00010203040506070809111111111111111111111111111111110000112233FF espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000084 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK1 - BLOCK1 Burning eFuses: - 'BLOCK1' (Flash encryption key) 0x0000000000000000000000000000000000000000000000000000000000000000 -> 0x00010203040506070809111111111111111111111111111111110000112233ff Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK1 (flash_encryption) [1 ] to_write: 112233ff 11110000 11111111 11111111 11111111 08091111 04050607 00010203 Write data to BLOCK1 Addr 3ff5a098, data= 112233ff Addr 3ff5a09c, data= 11110000 Addr 3ff5a0a0, data= 11111111 Addr 3ff5a0a4, data= 11111111 Addr 3ff5a0a8, data= 11111111 Addr 3ff5a0ac, data= 8091111 Addr 3ff5a0b0, data= 4050607 Addr 3ff5a0b4, data= 10203 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 00010203040506070809111111111111111111111111111111110000112233ff BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: 112233ff 11110000 11111111 11111111 11111111 08091111 04050607 00010203 BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000084 BLOCK1 (flash_encryption) [1 ] read_regs: 112233ff 11110000 11111111 11111111 11111111 08091111 04050607 00010203 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk46foxd3 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000084 BLOCK1 (flash_encryption) [1 ] read_regs: 112233ff 11110000 11111111 11111111 11111111 08091111 04050607 00010203 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = True R/W (0b1) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = True R/W (0b1) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = ff 33 22 11 00 00 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 09 08 07 06 05 04 03 02 01 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk46foxd3 -d --do-not-confirm burn-efuse BLOCK2 00010203040506070809111111111111111111111111111111110000112233FF espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000084 BLOCK1 (flash_encryption) [1 ] read_regs: 112233ff 11110000 11111111 11111111 11111111 08091111 04050607 00010203 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK2 - BLOCK2 Burning eFuses: - 'BLOCK2' (Security boot key) 0x0000000000000000000000000000000000000000000000000000000000000000 -> 0xff33221100001111111111111111111111111111111109080706050403020100 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: 03020100 07060504 11110908 11111111 11111111 11111111 00001111 ff332211 Write data to BLOCK2 Addr 3ff5a0b8, data= 3020100 Addr 3ff5a0bc, data= 7060504 Addr 3ff5a0c0, data= 11110908 Addr 3ff5a0c4, data= 11111111 Addr 3ff5a0c8, data= 11111111 Addr 3ff5a0cc, data= 11111111 Addr 3ff5a0d0, data= 1111 Addr 3ff5a0d4, data= ff332211 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 ff33221100001111111111111111111111111111111109080706050403020100 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 03020100 07060504 11110908 11111111 11111111 11111111 00001111 ff332211 BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000084 BLOCK1 (flash_encryption) [1 ] read_regs: 112233ff 11110000 11111111 11111111 11111111 08091111 04050607 00010203 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 03020100 07060504 11110908 11111111 11111111 11111111 00001111 ff332211 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk46foxd3 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000084 BLOCK1 (flash_encryption) [1 ] read_regs: 112233ff 11110000 11111111 11111111 11111111 08091111 04050607 00010203 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 03020100 07060504 11110908 11111111 11111111 11111111 00001111 ff332211 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = True R/W (0b1) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = True R/W (0b1) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = ff 33 22 11 00 00 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 09 08 07 06 05 04 03 02 01 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 01 02 03 04 05 06 07 08 09 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 00 00 11 22 33 ff R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnEfuseCommands::test_burn_efuse_with_34_coding_scheme Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9z0qa7i7 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9z0qa7i7 -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9z0qa7i7 -d --do-not-confirm burn-efuse BLK3_PART_RESERVE 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - BLK3_PART_RESERVE Burning eFuses: - 'BLK3_PART_RESERVE' (BLOCK3 partially served for ADC calibration data) 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000001001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000004000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00004000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 4000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000004000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9z0qa7i7 -d --do-not-confirm burn-efuse ADC1_TP_LOW 50 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK3 - ADC1_TP_LOW ATTENTION! This BLOCK uses NOT the NONE coding scheme and after 'BURN', these efuses can not be burned in the feature: ['SECURE_VERSION', 'MAC_VERSION', 'BLOCK3', 'ADC1_TP_HIGH', 'ADC2_TP_LOW'] ['ADC2_TP_HIGH', 'CUSTOM_MAC_CRC', 'CUSTOM_MAC'] Burning eFuses (see 'ATTENTION!' above): - 'ADC1_TP_LOW' (ADC1 Two Point calibration low point. Only valid if EFUSE_RD_BLK3_PART_RESERVE) 0b0000000 -> 0b0110010 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00000000 00000000 00000000 00000032 00000000 00000000 Write data to BLOCK3 Addr 3ff5a0d8, data= 0 Addr 3ff5a0dc, data= 0 Addr 3ff5a0e0, data= 0 Addr 3ff5a0e4, data= 0 Addr 3ff5a0e8, data= 32 Addr 3ff5a0ec, data= 3320000 Addr 3ff5a0f0, data= 0 Addr 3ff5a0f4, data= 0 BLOCK3 0000000000000000033200000000003200000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000032 00000000 00000000 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000032 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9z0qa7i7 -d --do-not-confirm burn-efuse ADC1_TP_HIGH 55 A fatal error occurred: Burn into BLOCK3 is forbidden (3/4 coding scheme does not allow this). espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000032 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK3 - ADC1_TP_HIGH ATTENTION! This BLOCK uses NOT the NONE coding scheme and after 'BURN', these efuses can not be burned in the feature: ['SECURE_VERSION', 'MAC_VERSION', 'BLOCK3', 'ADC1_TP_LOW', 'ADC2_TP_LOW'] ['ADC2_TP_HIGH', 'CUSTOM_MAC_CRC', 'CUSTOM_MAC'] Burning eFuses (see 'ATTENTION!' above): - 'ADC1_TP_HIGH' (ADC1 Two Point calibration high point. Only valid if EFUSE_RD_BLK3_PART_RESERVE) 0b000000000 -> 0b000110111 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is not empty (written ): 0x000000000000000000000032000000000000000000000000 (to write): 0x000000000000000000001b80000000000000000000000000 (coding scheme = 3/4) written chunk [1] and wr_chunk are not empty. wr_chunk != rd_chunk. Can not burn. written 0x000000000032 to write 0x000000001b80 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9z0qa7i7 -d --do-not-confirm burn-efuse ADC1_TP_HIGH 55 A fatal error occurred: Burn into BLOCK3 is forbidden (3/4 coding scheme does not allow this). espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000032 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK3 - ADC1_TP_HIGH ATTENTION! This BLOCK uses NOT the NONE coding scheme and after 'BURN', these efuses can not be burned in the feature: ['SECURE_VERSION', 'MAC_VERSION', 'BLOCK3', 'ADC1_TP_LOW', 'ADC2_TP_LOW'] ['ADC2_TP_HIGH', 'CUSTOM_MAC_CRC', 'CUSTOM_MAC'] Burning eFuses (see 'ATTENTION!' above): - 'ADC1_TP_HIGH' (ADC1 Two Point calibration high point. Only valid if EFUSE_RD_BLK3_PART_RESERVE) 0b000000000 -> 0b000110111 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is not empty (written ): 0x000000000000000000000032000000000000000000000000 (to write): 0x000000000000000000001b80000000000000000000000000 (coding scheme = 3/4) written chunk [1] and wr_chunk are not empty. wr_chunk != rd_chunk. Can not burn. written 0x000000000032 to write 0x000000001b80 PASSED test/test_espefuse.py::TestBurnEfuseCommands::test_burn_efuse_with_34_coding_scheme2 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp94mpg1yu -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp94mpg1yu -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp94mpg1yu -d --do-not-confirm burn-efuse BLK3_PART_RESERVE 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - BLK3_PART_RESERVE Burning eFuses: - 'BLK3_PART_RESERVE' (BLOCK3 partially served for ADC calibration data) 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000001001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000004000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00004000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 4000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000004000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp94mpg1yu -d --do-not-confirm burn-efuse ADC1_TP_LOW 50 ADC1_TP_HIGH 55 ADC2_TP_LOW 40 ADC2_TP_HIGH 45 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK3 - ADC1_TP_LOW - ADC1_TP_HIGH - ADC2_TP_LOW - ADC2_TP_HIGH ATTENTION! This BLOCK uses NOT the NONE coding scheme and after 'BURN', these efuses can not be burned in the feature: ['SECURE_VERSION', 'MAC_VERSION', 'BLOCK3', 'CUSTOM_MAC_CRC', 'CUSTOM_MAC'] Burning eFuses (see 'ATTENTION!' above): - 'ADC1_TP_LOW' (ADC1 Two Point calibration low point. Only valid if EFUSE_RD_BLK3_PART_RESERVE) 0b0000000 -> 0b0110010 - 'ADC1_TP_HIGH' (ADC1 Two Point calibration high point. Only valid if EFUSE_RD_BLK3_PART_RESERVE) 0b000000000 -> 0b000110111 - 'ADC2_TP_LOW' (ADC2 Two Point calibration low point. Only valid if EFUSE_RD_BLK3_PART_RESERVE) 0b0000000 -> 0b0101000 - 'ADC2_TP_HIGH' (ADC2 Two Point calibration high point. Only valid if EFUSE_RD_BLK3_PART_RESERVE) 0b000000000 -> 0b000101101 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00000000 00000000 00000000 16a81bb2 00000000 00000000 Write data to BLOCK3 Addr 3ff5a0d8, data= 0 Addr 3ff5a0dc, data= 0 Addr 3ff5a0e0, data= 0 Addr 3ff5a0e4, data= 0 Addr 3ff5a0e8, data= 16a81bb2 Addr 3ff5a0ec, data= 21170000 Addr 3ff5a0f0, data= 0 Addr 3ff5a0f4, data= 0 BLOCK3 00000000000000002117000016a81bb200000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 16a81bb2 00000000 00000000 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 0000c000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 16a81bb2 00000000 00000000 Checking eFuses... Successful. PASSED test/test_espefuse.py::TestBurnEfuseCommands::test_burn_efuse_incompatibility_check SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_3_key_blocks Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpanyavx6u -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpanyavx6u -d --do-not-confirm burn-key -h espefuse v5.3.1 Usage: python -m espefuse burn-key [OPTIONS] [ ] ... (max 6 groups) Burn a 256-bit key to EFUSE. Arguments are pairs of block name and key file, containing 256 bits of binary key data. Block is one of: [BLOCK1, flash_encryption, BLOCK2, secure_boot_v1, secure_boot_v2, BLOCK3] ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * BLOCK_KEYFILE [ ] ... (max 6 groups) [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --no-protect-key Disable the default read- and write-protection of the key. If this option is not set, │ │ once the key is flashed it cannot be read back or changed. │ │ --force-write-always Write the eFuse even if it looks like it's already been written, or is write protected. │ │ Note that this option can't disable write protection, or clear any bit which has │ │ already been set. │ │ --show-sensitive-info Show data to be burned (may expose sensitive data). Enabled if --debug is used. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpanyavx6u -d --do-not-confirm burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit A fatal error occurred: Incorrect key file size 24. Key file must be 32 bytes (256 bits) of raw binary key data. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00] /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpanyavx6u -d --do-not-confirm burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit A fatal error occurred: Incorrect key file size 24. Key file must be 32 bytes (256 bits) of raw binary key data. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00] Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpanyavx6u -d --do-not-confirm burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_1 BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_2 --no-protect-key espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] - BLOCK2 -> [11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf] - BLOCK3 -> [22 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 22 bf] Key is left unprotected as per --no-protect-key argument. Burn keys in eFuse blocks. The key block will be left readable and writeable (due to --no-protect-key). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc Write data to BLOCK3 Addr 3ff5a0d8, data= a3a2a122 Addr 3ff5a0dc, data= a7a6a5a4 Addr 3ff5a0e0, data= abaaa9a8 Addr 3ff5a0e4, data= afaeadac Addr 3ff5a0e8, data= b3b2b1b0 Addr 3ff5a0ec, data= b7b6b5b4 Addr 3ff5a0f0, data= bbbab9b8 Addr 3ff5a0f4, data= bf22bdbc BLOCK3 bf22bdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a122 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc BURN BLOCK3 - OK (write block == read block) BLOCK2 (secure_boot_v1 s) [2 ] to_write: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc Write data to BLOCK2 Addr 3ff5a0b8, data= a3a2a111 Addr 3ff5a0bc, data= a7a6a5a4 Addr 3ff5a0c0, data= abaaa9a8 Addr 3ff5a0c4, data= afaeadac Addr 3ff5a0c8, data= b3b2b1b0 Addr 3ff5a0cc, data= b7b6b5b4 Addr 3ff5a0d0, data= bbbab9b8 Addr 3ff5a0d4, data= bf11bdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 bf11bdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a111 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BURN BLOCK2 - OK (write block == read block) BLOCK1 (flash_encryption) [1 ] to_write: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Write data to BLOCK1 Addr 3ff5a098, data= a3a2a1a0 Addr 3ff5a09c, data= a7a6a5a4 Addr 3ff5a0a0, data= abaaa9a8 Addr 3ff5a0a4, data= afaeadac Addr 3ff5a0a8, data= b3b2b1b0 Addr 3ff5a0ac, data= b7b6b5b4 Addr 3ff5a0b0, data= bbbab9b8 Addr 3ff5a0b4, data= bfbebdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a1a0 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpanyavx6u -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 183 R/W (0xb7) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 34 R/W (0x22) CUSTOM_MAC (BLOCK3) Custom MAC address = a1:a2:a3:a4:a5:a6 (CRC 0x22 invalid - calculated 0xf1) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 3014832560 R/W (0xb3b2b1b0) BLOCK1 (BLOCK1) Flash encryption key = a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf R/W BLOCK2 (BLOCK2) Security boot key = 11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf R/W BLOCK3 (BLOCK3) Variable Block 3 = 22 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 22 bf R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpanyavx6u -d --do-not-confirm burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_1 BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_2 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] The same value for BLOCK1 is already burned. Do not change the eFuse. Disabling write to key block... - BLOCK2 -> [11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf] The same value for BLOCK2 is already burned. Do not change the eFuse. Disabling write to key block... - BLOCK3 -> [22 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 22 bf] The same value for BLOCK3 is already burned. Do not change the eFuse. Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000000380 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0380'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00000380 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 380 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000380 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000380 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000380 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpanyavx6u -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000380 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 896 R/W (0x0380) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 183 R/- (0xb7) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 34 R/- (0x22) CUSTOM_MAC (BLOCK3) Custom MAC address = a1:a2:a3:a4:a5:a6 (CRC 0x22 invalid - calculated 0xf1) R/- Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 3014832560 R/- (0xb3b2b1b0) BLOCK1 (BLOCK1) Flash encryption key = a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf R/- BLOCK2 (BLOCK2) Security boot key = 11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf R/- BLOCK3 (BLOCK3) Variable Block 3 = 22 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 22 bf R/- Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_1_key_block SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_one_key_block_with_fe_and_sb_keys SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_with_6_keys SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_with_34_coding_scheme Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpnbscxo5j -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpnbscxo5j -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpnbscxo5j -d --do-not-confirm burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit A fatal error occurred: Incorrect key file size 32. Key file must be 24 bytes (192 bits) of raw binary key data. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpnbscxo5j -d --do-not-confirm burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit A fatal error occurred: Incorrect key file size 32. Key file must be 24 bytes (192 bits) of raw binary key data. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpnbscxo5j -d --do-not-confirm burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_1 BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_2 --no-protect-key espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00] - BLOCK2 -> [11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21] - BLOCK3 -> [22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22] Key is left unprotected as per --no-protect-key argument. Burn keys in eFuse blocks. The key block will be left readable and writeable (due to --no-protect-key). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 Write data to BLOCK3 Addr 3ff5a0d8, data= 22 Addr 3ff5a0dc, data= e270500 Addr 3ff5a0e0, data= 9080706 Addr 3ff5a0e4, data= 2f010b0a Addr 3ff5a0e8, data= f0e0d0c Addr 3ff5a0ec, data= 32011110 Addr 3ff5a0f0, data= 15141312 Addr 3ff5a0f4, data= 35342216 BLOCK3 3534221615141312320111100f0e0d0c2f010b0a090807060e27050000000022 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 BURN BLOCK3 - OK (write block == read block) BLOCK2 (secure_boot_v1 s) [2 ] to_write: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 Write data to BLOCK2 Addr 3ff5a0b8, data= 11 Addr 3ff5a0bc, data= e140500 Addr 3ff5a0c0, data= 9080706 Addr 3ff5a0c4, data= 2f010b0a Addr 3ff5a0c8, data= f0e0d0c Addr 3ff5a0cc, data= 32011110 Addr 3ff5a0d0, data= 15141312 Addr 3ff5a0d4, data= 35372116 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 3537211615141312320111100f0e0d0c2f010b0a090807060e14050000000011 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BURN BLOCK2 - OK (write block == read block) BLOCK1 (flash_encryption) [1 ] to_write: 00000000 07060500 00000908 00000000 13000000 00161514 Write data to BLOCK1 Addr 3ff5a098, data= 0 Addr 3ff5a09c, data= c050500 Addr 3ff5a0a0, data= 9080706 Addr 3ff5a0a4, data= 13000000 Addr 3ff5a0a8, data= 0 Addr 3ff5a0ac, data= 0 Addr 3ff5a0b0, data= 15141300 Addr 3ff5a0b4, data= 27040016 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 2704001615141300000000000000000013000000090807060c05050000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpnbscxo5j -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 34 R/W (0x22) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 34 R/W (0x22) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:05:06 (CRC 0x22 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 319951120 R/W (0x13121110) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00 R/W BLOCK2 (BLOCK2) Security boot key = 11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21 R/W BLOCK3 (BLOCK3) Variable Block 3 = 22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpnbscxo5j -d --do-not-confirm burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_1 BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_2 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00] The same value for BLOCK1 is already burned. Do not change the eFuse. Disabling write to key block... - BLOCK2 -> [11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21] The same value for BLOCK2 is already burned. Do not change the eFuse. Disabling write to key block... - BLOCK3 -> [22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22] The same value for BLOCK3 is already burned. Do not change the eFuse. Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000001001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000000380 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0380'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00000380 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 380 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000380 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000380 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000380 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpnbscxo5j -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000380 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 896 R/W (0x0380) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 34 R/- (0x22) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 34 R/- (0x22) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:05:06 (CRC 0x22 OK) R/- Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 319951120 R/- (0x13121110) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00 R/- BLOCK2 (BLOCK2) Security boot key = 11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21 R/- BLOCK3 (BLOCK3) Variable Block 3 = 22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22 R/- Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_512bit SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_512bit_non_consecutive_blocks SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_512bit_non_consecutive_blocks_loop_around SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_512bit_for_flash_and_psram SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_ecdsa_key SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_ecdsa_key_check_byte_order SKIPPED test/test_espefuse.py::TestBurnKeyCommands::test_burn_key_ecdsa_384_key SKIPPED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_check_args Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp99inb0j0 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp99inb0j0 -d --do-not-confirm burn-block-data -h espefuse v5.3.1 Usage: python -m espefuse burn-block-data [OPTIONS] [ ] ... (max 4 groups) Burn non-key data to EFUSE blocks. (Don't use this command to burn key data for Flash Encryption or ESP32 Secure Boot V1, as the byte order of keys is swapped (use burn-key)). Allowed options for BLOCK: [BLOCK0, BLOCK1, BLOCK2, BLOCK3]. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * BLOCK_DATAFILE [ ] ... (max 4 groups) [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --offset -o INTEGER Byte offset in the eFuse block. │ │ --force-write-always Write the eFuse even if it looks like it's already been written, or is write │ │ protected. Note that this option can't disable write protection, or clear any bit │ │ which has already been set. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp99inb0j0 -d --do-not-confirm burn-block-data BLOCK0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/224bit BLOCK1 Usage: python -m espefuse burn-block-data [OPTIONS] [ ] ... (max 4 groups) Try 'python -m espefuse burn-block-data -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for '[ ] ... (max 4 groups)': Expected multiple of 2 values, got 3 (values: │ │ ('BLOCK0', '/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/224bit', 'BLOCK1')) │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp99inb0j0 -d --do-not-confirm burn-block-data BLOCK0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/224bit BLOCK1 Usage: python -m espefuse burn-block-data [OPTIONS] [ ] ... (max 4 groups) Try 'python -m espefuse burn-block-data -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for '[ ] ... (max 4 groups)': Expected multiple of 2 values, got 3 (values: │ │ ('BLOCK0', '/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/224bit', 'BLOCK1')) │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 PASSED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_with_3_key_blocks Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpv32hllnb -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpv32hllnb -d --do-not-confirm burn-block-data BLOCK0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/224bit BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [00] BLOCK0 size=28 bytes, offset=00 - > [00 00 00 00 00 ac 40 1d a0 d8 70 00 b0 8a 00 00 00 00 00 00 26 22 08 00 04 00 00 00]. written : 0x00000000001000000000000000008000000000000000000000000000 -> to write: 0x00000004000822260000000000008ab00070d8a01d40ac0000000000 [03] BLOCK3 size=32 bytes, offset=00 - > [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf]. written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0xbfbebdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a1a0 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000004000822260000000000008ab00070d8a01d40ac0000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Write data to BLOCK3 Addr 3ff5a0d8, data= a3a2a1a0 Addr 3ff5a0dc, data= a7a6a5a4 Addr 3ff5a0e0, data= abaaa9a8 Addr 3ff5a0e4, data= afaeadac Addr 3ff5a0e8, data= b3b2b1b0 Addr 3ff5a0ec, data= b7b6b5b4 Addr 3ff5a0f0, data= bbbab9b8 Addr 3ff5a0f4, data= bfbebdbc BLOCK3 bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a1a0 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00082226 00000004 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 1d40ac00 Addr 3ff5a024, data= 70d8a0 Addr 3ff5a028, data= 8ab0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 82226 Addr 3ff5a034, data= 4 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000004000822260000000000008ab00070d8a01d40ac0000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpv32hllnb -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = True R/W (0b1) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 5 R/W (0b101) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 5 R/W (0x5) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = d8:a0:1d:40:ac:00 (CRC 0x70 invalid - calculated 0x61) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 112 R/W (0x70) MAC_VERSION (BLOCK3) Version of the MAC field = 183 R/W (0xb7) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 160 R/W (0xa0) CUSTOM_MAC (BLOCK3) Custom MAC address = a1:a2:a3:a4:a5:a6 (CRC 0xa0 invalid - calculated 0xf1) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 3014832560 R/W (0xb3b2b1b0) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 11 R/W (0b01011) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 6 R/W (0b00110) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 17 R/W (0b10001) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 8 R/W (0b01000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 16 R/W (0b10000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpv32hllnb -d --do-not-confirm burn-block-data BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [02] BLOCK2 size=32 bytes, offset=00 - > [11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf]. written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0xbf11bdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a111 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc Write data to BLOCK2 Addr 3ff5a0b8, data= a3a2a111 Addr 3ff5a0bc, data= a7a6a5a4 Addr 3ff5a0c0, data= abaaa9a8 Addr 3ff5a0c4, data= afaeadac Addr 3ff5a0c8, data= b3b2b1b0 Addr 3ff5a0cc, data= b7b6b5b4 Addr 3ff5a0d0, data= bbbab9b8 Addr 3ff5a0d4, data= bf11bdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 bf11bdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a111 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpv32hllnb -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = True R/W (0b1) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 5 R/W (0b101) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 5 R/W (0x5) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = d8:a0:1d:40:ac:00 (CRC 0x70 invalid - calculated 0x61) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 112 R/W (0x70) MAC_VERSION (BLOCK3) Version of the MAC field = 183 R/W (0xb7) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 160 R/W (0xa0) CUSTOM_MAC (BLOCK3) Custom MAC address = a1:a2:a3:a4:a5:a6 (CRC 0xa0 invalid - calculated 0xf1) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 3014832560 R/W (0xb3b2b1b0) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf R/W BLOCK3 (BLOCK3) Variable Block 3 = a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 11 R/W (0b01011) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 6 R/W (0b00110) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 17 R/W (0b10001) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 8 R/W (0b01000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 16 R/W (0b10000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpv32hllnb -d --do-not-confirm burn-block-data BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_2 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [01] BLOCK1 size=32 bytes, offset=00 - > [22 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 22 bf]. written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0xbf22bdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a122 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK1 (flash_encryption) [1 ] to_write: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc Write data to BLOCK1 Addr 3ff5a098, data= a3a2a122 Addr 3ff5a09c, data= a7a6a5a4 Addr 3ff5a0a0, data= abaaa9a8 Addr 3ff5a0a4, data= afaeadac Addr 3ff5a0a8, data= b3b2b1b0 Addr 3ff5a0ac, data= b7b6b5b4 Addr 3ff5a0b0, data= bbbab9b8 Addr 3ff5a0b4, data= bf22bdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 bf22bdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a122 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpv32hllnb -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 1d40ac00 0070d8a0 00008ab0 00000000 00182226 00000004 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a122 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf22bdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = True R/W (0b1) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 5 R/W (0b101) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 5 R/W (0x5) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = d8:a0:1d:40:ac:00 (CRC 0x70 invalid - calculated 0x61) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 112 R/W (0x70) MAC_VERSION (BLOCK3) Version of the MAC field = 183 R/W (0xb7) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 160 R/W (0xa0) CUSTOM_MAC (BLOCK3) Custom MAC address = a1:a2:a3:a4:a5:a6 (CRC 0xa0 invalid - calculated 0xf1) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 3014832560 R/W (0xb3b2b1b0) BLOCK1 (BLOCK1) Flash encryption key = 22 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 22 bf R/W BLOCK2 (BLOCK2) Security boot key = 11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf R/W BLOCK3 (BLOCK3) Variable Block 3 = a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 11 R/W (0b01011) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 6 R/W (0b00110) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 17 R/W (0b10001) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 8 R/W (0b01000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 16 R/W (0b10000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_with_1_key_block SKIPPED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_with_6_keys SKIPPED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_check_errors Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-block-data BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_1 A fatal error occurred: Found repeated ['BLOCK2'] in the name list. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-block-data BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_1 A fatal error occurred: Found repeated ['BLOCK2'] in the name list. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-block-data BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_1 --offset 4 A fatal error occurred: The 'offset' option is not applicable when a few blocks are passed. With 'offset', should only one block be used. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-block-data BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_1 --offset 4 A fatal error occurred: The 'offset' option is not applicable when a few blocks are passed. With 'offset', should only one block be used. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-block-data BLOCK0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit --offset 33 A fatal error occurred: Invalid offset: the block0 only holds 28 bytes. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-block-data BLOCK0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit --offset 33 A fatal error occurred: Invalid offset: the block0 only holds 28 bytes. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-block-data BLOCK0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit --offset 4 A fatal error occurred: Data does not fit: the block0 size is 28 bytes, data file is 36 bytes, offset 4. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp9pwrq08_ -d --do-not-confirm burn-block-data BLOCK0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit --offset 4 A fatal error occurred: Data does not fit: the block0 size is 28 bytes, data file is 36 bytes, offset 4. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === PASSED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block0_data_above_256_bits SKIPPED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_with_offset_for_3_key_blocks Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpgr3s9e38 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpgr3s9e38 -d --do-not-confirm burn-block-data --offset 1 BLOCK0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [00] BLOCK0 size=28 bytes, offset=01 - > [00 00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00 00 00 00]. written : 0x00000000001000000000000000008000000000000000000000000000 -> to write: 0x00000000161514130000000000000000000908070605000000000000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000161514130000000000000000000908070605000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 06050000 00090807 00000000 00000000 16151413 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 6050000 Addr 3ff5a024, data= 90807 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 16151413 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000161514130000000000000000000908070605000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpgr3s9e38 -d --do-not-confirm burn-block-data --offset 4 BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [01] BLOCK1 size=32 bytes, offset=04 - > [00 00 00 00 11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21 00 00 00 00]. written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0x0000000021161514131211100f0e0d0c0b0a0908070605000000001100000000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK1 (flash_encryption) [1 ] to_write: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 Write data to BLOCK1 Addr 3ff5a098, data= 0 Addr 3ff5a09c, data= 11 Addr 3ff5a0a0, data= 7060500 Addr 3ff5a0a4, data= b0a0908 Addr 3ff5a0a8, data= f0e0d0c Addr 3ff5a0ac, data= 13121110 Addr 3ff5a0b0, data= 21161514 Addr 3ff5a0b4, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000021161514131211100f0e0d0c0b0a0908070605000000001100000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpgr3s9e38 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 1 R/W (0x1) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 2 R/W (0b10) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 08:07:06:05:00:00 (CRC 0x09 invalid - calculated 0xcc) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 9 R/W (0x09) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 19 R/W (0b10011) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 5 R/W (0b00101) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 10 R/W (0b01010) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpgr3s9e38 -d --do-not-confirm burn-block-data --offset 6 BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_2 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [02] BLOCK2 size=32 bytes, offset=06 - > [00 00 00 00 00 00 22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22 00 00]. written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0x000022161514131211100f0e0d0c0b0a09080706050000000022000000000000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: 00000000 00220000 05000000 09080706 0d0c0b0a 11100f0e 15141312 00002216 Write data to BLOCK2 Addr 3ff5a0b8, data= 0 Addr 3ff5a0bc, data= 220000 Addr 3ff5a0c0, data= 5000000 Addr 3ff5a0c4, data= 9080706 Addr 3ff5a0c8, data= d0c0b0a Addr 3ff5a0cc, data= 11100f0e Addr 3ff5a0d0, data= 15141312 Addr 3ff5a0d4, data= 2216 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 000022161514131211100f0e0d0c0b0a09080706050000000022000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00220000 05000000 09080706 0d0c0b0a 11100f0e 15141312 00002216 BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00220000 05000000 09080706 0d0c0b0a 11100f0e 15141312 00002216 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpgr3s9e38 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00220000 05000000 09080706 0d0c0b0a 11100f0e 15141312 00002216 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 1 R/W (0x1) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 2 R/W (0b10) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 08:07:06:05:00:00 (CRC 0x09 invalid - calculated 0xcc) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 9 R/W (0x09) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 19 R/W (0b10011) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 5 R/W (0b00101) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 10 R/W (0b01010) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpgr3s9e38 -d --do-not-confirm burn-block-data --offset 8 BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_2 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00220000 05000000 09080706 0d0c0b0a 11100f0e 15141312 00002216 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [03] BLOCK3 size=32 bytes, offset=08 - > [00 00 00 00 00 00 00 00 22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22]. written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0x22161514131211100f0e0d0c0b0a090807060500000000220000000000000000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00000000 00000000 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 Write data to BLOCK3 Addr 3ff5a0d8, data= 0 Addr 3ff5a0dc, data= 0 Addr 3ff5a0e0, data= 22 Addr 3ff5a0e4, data= 7060500 Addr 3ff5a0e8, data= b0a0908 Addr 3ff5a0ec, data= f0e0d0c Addr 3ff5a0f0, data= 13121110 Addr 3ff5a0f4, data= 22161514 BLOCK3 22161514131211100f0e0d0c0b0a090807060500000000220000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00220000 05000000 09080706 0d0c0b0a 11100f0e 15141312 00002216 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpgr3s9e38 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 06050000 00090807 00008000 00000000 16151413 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00220000 05000000 09080706 0d0c0b0a 11100f0e 15141312 00002216 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 1 R/W (0x1) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 2 R/W (0b10) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 08:07:06:05:00:00 (CRC 0x09 invalid - calculated 0xcc) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 9 R/W (0x09) MAC_VERSION (BLOCK3) Version of the MAC field = 15 R/W (0x0f) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 185207048 R/W (0x0b0a0908) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 19 R/W (0b10011) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 5 R/W (0b00101) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 10 R/W (0b01010) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_with_offset_1_key_block SKIPPED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_with_offset_6_keys SKIPPED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_with_34_coding_scheme Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpal6ryy0r -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpal6ryy0r -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpal6ryy0r -d --do-not-confirm burn-block-data BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit A fatal error occurred: Data does not fit: the block1 size is 24 bytes, data file is 32 bytes, offset 0. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpal6ryy0r -d --do-not-confirm burn-block-data BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit A fatal error occurred: Data does not fit: the block1 size is 24 bytes, data file is 32 bytes, offset 0. espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpal6ryy0r -d --do-not-confirm burn-block-data BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_1 BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/192bit_2 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [01] BLOCK1 size=24 bytes, offset=00 - > [00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00]. written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x001615141300000000000000000009080706050000000000 [02] BLOCK2 size=24 bytes, offset=00 - > [11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21]. written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x21161514131211100f0e0d0c0b0a09080706050000000011 [03] BLOCK3 size=24 bytes, offset=00 - > [22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22]. written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x22161514131211100f0e0d0c0b0a09080706050000000022 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 Write data to BLOCK3 Addr 3ff5a0d8, data= 22 Addr 3ff5a0dc, data= e270500 Addr 3ff5a0e0, data= 9080706 Addr 3ff5a0e4, data= 2f010b0a Addr 3ff5a0e8, data= f0e0d0c Addr 3ff5a0ec, data= 32011110 Addr 3ff5a0f0, data= 15141312 Addr 3ff5a0f4, data= 35342216 BLOCK3 3534221615141312320111100f0e0d0c2f010b0a090807060e27050000000022 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 BURN BLOCK3 - OK (write block == read block) BLOCK2 (secure_boot_v1 s) [2 ] to_write: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 Write data to BLOCK2 Addr 3ff5a0b8, data= 11 Addr 3ff5a0bc, data= e140500 Addr 3ff5a0c0, data= 9080706 Addr 3ff5a0c4, data= 2f010b0a Addr 3ff5a0c8, data= f0e0d0c Addr 3ff5a0cc, data= 32011110 Addr 3ff5a0d0, data= 15141312 Addr 3ff5a0d4, data= 35372116 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 3537211615141312320111100f0e0d0c2f010b0a090807060e14050000000011 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BURN BLOCK2 - OK (write block == read block) BLOCK1 (flash_encryption) [1 ] to_write: 00000000 07060500 00000908 00000000 13000000 00161514 Write data to BLOCK1 Addr 3ff5a098, data= 0 Addr 3ff5a09c, data= c050500 Addr 3ff5a0a0, data= 9080706 Addr 3ff5a0a4, data= 13000000 Addr 3ff5a0a8, data= 0 Addr 3ff5a0ac, data= 0 Addr 3ff5a0b0, data= 15141300 Addr 3ff5a0b4, data= 27040016 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 2704001615141300000000000000000013000000090807060c05050000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpal6ryy0r -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 07060500 00000908 00000000 13000000 00161514 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000011 07060500 0b0a0908 0f0e0d0c 13121110 21161514 BLOCK3 ( ) [3 ] read_regs: 00000022 07060500 0b0a0908 0f0e0d0c 13121110 22161514 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 34 R/W (0x22) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 34 R/W (0x22) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:05:06 (CRC 0x22 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 319951120 R/W (0x13121110) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 05 06 07 08 09 00 00 00 00 00 00 00 00 00 13 14 15 16 00 R/W BLOCK2 (BLOCK2) Security boot key = 11 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 21 R/W BLOCK3 (BLOCK3) Variable Block 3 = 22 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 22 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnBlockDataCommands::test_burn_block_data_with_34_coding_scheme_and_offset Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyidaohdi -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyidaohdi -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyidaohdi -d --do-not-confirm burn-block-data --offset 4 BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/128bit espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [01] BLOCK1 size=24 bytes, offset=04 - > [00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00 00 00 00 00]. written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x00000000000e0d0c0b0a0908070605000000000000000000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK1 (flash_encryption) [1 ] to_write: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 Write data to BLOCK1 Addr 3ff5a098, data= 0 Addr 3ff5a09c, data= 0 Addr 3ff5a0a0, data= 5000000 Addr 3ff5a0a4, data= 24040706 Addr 3ff5a0a8, data= b0a0908 Addr 3ff5a0ac, data= 33010d0c Addr 3ff5a0b0, data= e Addr 3ff5a0b4, data= 30e0000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 030e00000000000e33010d0c0b0a090824040706050000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyidaohdi -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyidaohdi -d --do-not-confirm burn-block-data --offset 6 BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/128bit espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [02] BLOCK2 size=24 bytes, offset=06 - > [00 00 00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00 00 00]. written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x0000000e0d0c0b0a09080706050000000000000000000000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: 00000000 00000000 05000000 09080706 0d0c0b0a 0000000e Write data to BLOCK2 Addr 3ff5a0b8, data= 0 Addr 3ff5a0bc, data= 0 Addr 3ff5a0c0, data= 0 Addr 3ff5a0c4, data= c050500 Addr 3ff5a0c8, data= 9080706 Addr 3ff5a0cc, data= 2f010b0a Addr 3ff5a0d0, data= e0d0c Addr 3ff5a0d4, data= 110f0000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 110f0000000e0d0c2f010b0a090807060c050500000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 05000000 09080706 0d0c0b0a 0000000e BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 05000000 09080706 0d0c0b0a 0000000e BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyidaohdi -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 05000000 09080706 0d0c0b0a 0000000e BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyidaohdi -d --do-not-confirm burn-block-data --offset 8 BLOCK3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/128bit espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 05000000 09080706 0d0c0b0a 0000000e BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-block-data" command === [03] BLOCK3 size=24 bytes, offset=08 - > [00 00 00 00 00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00]. written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x000e0d0c0b0a090807060500000000000000000000000000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00000000 00000000 00000000 07060500 0b0a0908 000e0d0c Write data to BLOCK3 Addr 3ff5a0d8, data= 0 Addr 3ff5a0dc, data= 0 Addr 3ff5a0e0, data= 0 Addr 3ff5a0e4, data= 0 Addr 3ff5a0e8, data= 7060500 Addr 3ff5a0ec, data= 27050908 Addr 3ff5a0f0, data= d0c0b0a Addr 3ff5a0f4, data= 290e000e BLOCK3 290e000e0d0c0b0a270509080706050000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 07060500 0b0a0908 000e0d0c BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 05000000 09080706 0d0c0b0a 0000000e BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 07060500 0b0a0908 000e0d0c Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpyidaohdi -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 07060500 0b0a0908 000e0d0c 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 05000000 09080706 0d0c0b0a 0000000e BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 07060500 0b0a0908 000e0d0c EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 185207048 R/W (0x0b0a0908) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 05 06 07 08 09 0a 0b 0c 0d 0e 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnKeyDigestCommandsEsp32::test_burn_key_digest Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpjya7hyv5 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpjya7hyv5 -d --do-not-confirm burn-key-digest -h espefuse v5.3.1 Usage: python -m espefuse burn-key-digest [OPTIONS] KEYFILE Parse a RSA public key and burn the digest to eFuse for use with Secure Boot V2. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * KEYFILE FILENAME [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --no-protect-key Disable the default write-protection of the key digest. If this option is not set, once │ │ the key is flashed it cannot be changed. │ │ --force-write-always Write the eFuse even if it looks like it's already been written, or is write protected. │ │ Note that this option can't disable write protection, or clear any bit which has │ │ already been set. │ │ --show-sensitive-info Show data to be burned (may expose sensitive data). Enabled if --debug is used. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpjya7hyv5 -d --do-not-confirm burn-key-digest /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key-digest" command === - BLOCK2 -> [cb 27 91 a3 71 b0 c0 32 2b f7 37 04 78 ba 09 62 22 4c ab 1c f2 28 78 79 e4 29 67 3e 7d a8 44 63] Disabling write to eFuse BLOCK2... Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000000100 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d Write data to BLOCK2 Addr 3ff5a0b8, data= a39127cb Addr 3ff5a0bc, data= 32c0b071 Addr 3ff5a0c0, data= 437f72b Addr 3ff5a0c4, data= 6209ba78 Addr 3ff5a0c8, data= 1cab4c22 Addr 3ff5a0cc, data= 797828f2 Addr 3ff5a0d0, data= 3e6729e4 Addr 3ff5a0d4, data= 6344a87d BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 6344a87d3e6729e4797828f21cab4c226209ba780437f72b32c0b071a39127cb BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0100'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00000100 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 100 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000100 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpjya7hyv5 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 256 R/W (0x0100) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = cb 27 91 a3 71 b0 c0 32 2b f7 37 04 78 ba 09 62 22 4c ab 1c f2 28 78 79 e4 29 67 3e 7d a8 44 63 R/- BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnKeyDigestCommandsEsp32::test_burn_key_from_digest Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpzc2ffot_ -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpzc2ffot_ -d --do-not-confirm burn-key BLOCK2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_public_key_digest.bin --no-protect-key espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK2 -> [cb 27 91 a3 71 b0 c0 32 2b f7 37 04 78 ba 09 62 22 4c ab 1c f2 28 78 79 e4 29 67 3e 7d a8 44 63] Key is left unprotected as per --no-protect-key argument. Burn keys in eFuse blocks. The key block will be left readable and writeable (due to --no-protect-key). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d Write data to BLOCK2 Addr 3ff5a0b8, data= a39127cb Addr 3ff5a0bc, data= 32c0b071 Addr 3ff5a0c0, data= 437f72b Addr 3ff5a0c4, data= 6209ba78 Addr 3ff5a0c8, data= 1cab4c22 Addr 3ff5a0cc, data= 797828f2 Addr 3ff5a0d0, data= 3e6729e4 Addr 3ff5a0d4, data= 6344a87d BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 6344a87d3e6729e4797828f21cab4c226209ba780437f72b32c0b071a39127cb BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpzc2ffot_ -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = cb 27 91 a3 71 b0 c0 32 2b f7 37 04 78 ba 09 62 22 4c ab 1c f2 28 78 79 e4 29 67 3e 7d a8 44 63 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnKeyDigestCommandsEsp32::test_burn_key_digest_with_34_coding_scheme Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp5j06rm0a -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp5j06rm0a -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp5j06rm0a -d --do-not-confirm burn-key-digest /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem A fatal error occurred: burn-key-digest only works with 'None' coding scheme espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key-digest" command === /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp5j06rm0a -d --do-not-confirm burn-key-digest /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem A fatal error occurred: burn-key-digest only works with 'None' coding scheme espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key-digest" command === PASSED test/test_espefuse.py::TestBurnKeyDigestCommandsEsp32C2::test_burn_key_digest1 SKIPPED test/test_espefuse.py::TestBurnKeyDigestCommandsEsp32C2::test_burn_key_digest2 SKIPPED test/test_espefuse.py::TestBurnKeyDigestCommandsEsp32C2::test_burn_key_from_digest1 SKIPPED test/test_espefuse.py::TestBurnKeyDigestCommandsEsp32C2::test_burn_key_from_digest2 SKIPPED test/test_espefuse.py::TestBurnKeyDigestCommands::test_burn_key_digest SKIPPED test/test_espefuse.py::TestBurnKeyDigestCommands::test_burn_key_from_digest SKIPPED test/test_espefuse.py::TestBurnBitCommands::test_burn_bit_for_chips_with_3_key_blocks Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpiaxgabky -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpiaxgabky -d --do-not-confirm burn-bit -h espefuse v5.3.1 Usage: python -m espefuse burn-bit [OPTIONS] {BLOCK0|BLOCK1|BLOCK2|BLOCK3} BIT_NUMBER... Burn bit in the eFuse block. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * BLOCK {BLOCK0|BLOCK1|BLOCK2|BLOCK3} [required] │ │ * BIT_NUMBER INTEGER [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --force-write-always Write the eFuse even if it looks like it's already been written, or is write protected. │ │ Note that this option can't disable write protection, or clear any bit which has already │ │ been set. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpiaxgabky -d --do-not-confirm burn-bit BLOCK3 0 1 2 4 8 16 32 64 96 128 160 192 224 255 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-bit" command === bit_number: [255]........................................................[0] BLOCK 3 : 0x8000000100000001000000010000000100000001000000010000000100010117 BLOCK3 ( ) [3 ] regs_to_write: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0x8000000100000001000000010000000100000001000000010000000100010117 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 Write data to BLOCK3 Addr 3ff5a0d8, data= 10117 Addr 3ff5a0dc, data= 1 Addr 3ff5a0e0, data= 1 Addr 3ff5a0e4, data= 1 Addr 3ff5a0e8, data= 1 Addr 3ff5a0ec, data= 1 Addr 3ff5a0f0, data= 1 Addr 3ff5a0f4, data= 80000001 BLOCK3 8000000100000001000000010000000100000001000000010000000100010117 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpiaxgabky -d --do-not-confirm summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 23 R/W (0x17) CUSTOM_MAC (BLOCK3) Custom MAC address = 01:01:00:01:00:00 (CRC 0x17 invalid - calculated 0x51) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 1 R/W (0x00000001) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 17 01 01 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 80 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpiaxgabky -d --do-not-confirm burn-bit BLOCK3 3 5 6 7 9 10 11 12 13 14 15 31 63 95 127 159 191 223 254 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-bit" command === bit_number: [255]........................................................[0] BLOCK 3 : 0x400000008000000080000000800000008000000080000000800000008000fee8 BLOCK3 ( ) [3 ] regs_to_write: 8000fee8 80000000 80000000 80000000 80000000 80000000 80000000 40000000 written : 0x8000000100000001000000010000000100000001000000010000000100010117 -> to write: 0x400000008000000080000000800000008000000080000000800000008000fee8 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is not empty (written ): 0x8000000100000001000000010000000100000001000000010000000100010117 (to write): 0x400000008000000080000000800000008000000080000000800000008000fee8 (coding scheme = NONE) . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 8000fee8 80000000 80000000 80000000 80000000 80000000 80000000 40000000 Write data to BLOCK3 Addr 3ff5a0d8, data= 8000fee8 Addr 3ff5a0dc, data= 80000000 Addr 3ff5a0e0, data= 80000000 Addr 3ff5a0e4, data= 80000000 Addr 3ff5a0e8, data= 80000000 Addr 3ff5a0ec, data= 80000000 Addr 3ff5a0f0, data= 80000000 Addr 3ff5a0f4, data= 40000000 BLOCK3 400000008000000080000000800000008000000080000000800000008000fee8 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 8001ffff 80000001 80000001 80000001 80000001 80000001 80000001 c0000001 BURN BLOCK3 - OK (all write block bits are set) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 8001ffff 80000001 80000001 80000001 80000001 80000001 80000001 c0000001 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpiaxgabky -d --do-not-confirm summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 8001ffff 80000001 80000001 80000001 80000001 80000001 80000001 c0000001 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 128 R/W (0x80) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 255 R/W (0xff) CUSTOM_MAC (BLOCK3) Custom MAC address = ff:01:80:01:00:00 (CRC 0xff invalid - calculated 0xe9) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 2147483649 R/W (0x80000001) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = ff ff 01 80 01 00 00 80 01 00 00 80 01 00 00 80 01 00 00 80 01 00 00 80 01 00 00 80 01 00 00 c0 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestBurnBitCommands::test_burn_bit_for_chips_with_1_key_block SKIPPED test/test_espefuse.py::TestBurnBitCommands::test_burn_bit_for_chips_with_6_key_blocks SKIPPED test/test_espefuse.py::TestBurnBitCommands::test_burn_bit_with_34_coding_scheme Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4am7vu4d -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4am7vu4d -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4am7vu4d -d --do-not-confirm burn-bit BLOCK3 0 1 2 4 8 16 32 64 96 128 160 191 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 3 : 0x800000010000000100000001000000010000000100010117 BLOCK3 ( ) [3 ] regs_to_write: 00010117 00000001 00000001 00000001 00000001 80000001 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x800000010000000100000001000000010000000100010117 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00010117 00000001 00000001 00000001 00000001 80000001 Write data to BLOCK3 Addr 3ff5a0d8, data= 10117 Addr 3ff5a0dc, data= e160001 Addr 3ff5a0e0, data= 10000 Addr 3ff5a0e4, data= 3010000 Addr 3ff5a0e8, data= 1 Addr 3ff5a0ec, data= 6000001 Addr 3ff5a0f0, data= 10000 Addr 3ff5a0f4, data= 9818000 BLOCK3 0981800000010000060000010000000103010000000100000e16000100010117 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 80000001 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 80000001 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4am7vu4d -d --do-not-confirm summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 80000001 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 128 R/W (0x80) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 23 R/W (0x17) CUSTOM_MAC (BLOCK3) Custom MAC address = 01:01:00:01:00:00 (CRC 0x17 invalid - calculated 0x51) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 1 R/W (0x00000001) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 17 01 01 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 80 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4am7vu4d -d --do-not-confirm burn-bit BLOCK3 17 A fatal error occurred: Burn into BLOCK3 is forbidden (3/4 coding scheme does not allow this).(use '--force-write-always' option to ignore it) espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 80000001 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 3 : 0x000000000000000000000000000000000000000000020000 BLOCK3 ( ) [3 ] regs_to_write: 00020000 00000000 00000000 00000000 00000000 00000000 written : 0x800000010000000100000001000000010000000100010117 -> to write: 0x000000000000000000000000000000000000000000020000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is not empty (written ): 0x800000010000000100000001000000010000000100010117 (to write): 0x000000000000000000000000000000000000000000020000 (coding scheme = 3/4) written chunk [3] and wr_chunk are not empty. wr_chunk != rd_chunk. Can not burn. written 0x000100010117 to write 0x000000020000 /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp4am7vu4d -d --do-not-confirm burn-bit BLOCK3 17 A fatal error occurred: Burn into BLOCK3 is forbidden (3/4 coding scheme does not allow this).(use '--force-write-always' option to ignore it) espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 80000001 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 3 : 0x000000000000000000000000000000000000000000020000 BLOCK3 ( ) [3 ] regs_to_write: 00020000 00000000 00000000 00000000 00000000 00000000 written : 0x800000010000000100000001000000010000000100010117 -> to write: 0x000000000000000000000000000000000000000000020000 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is not empty (written ): 0x800000010000000100000001000000010000000100010117 (to write): 0x000000000000000000000000000000000000000000020000 (coding scheme = 3/4) written chunk [3] and wr_chunk are not empty. wr_chunk != rd_chunk. Can not burn. written 0x000100010117 to write 0x000000020000 PASSED test/test_espefuse.py::TestBurnBitCommands::test_burn_bit_with_none_recovery_coding_scheme Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb86i8b23 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb86i8b23 -d --do-not-confirm burn-efuse CODING_SCHEME 3 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b11 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000003000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000003 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 3 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000003000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000003 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000003 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb86i8b23 -d --do-not-confirm burn-bit BLOCK3 0 1 2 4 8 16 32 64 96 128 160 192 224 255 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000003 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-bit" command === bit_number: [255]........................................................[0] BLOCK 3 : 0x8000000100000001000000010000000100000001000000010000000100010117 BLOCK3 ( ) [3 ] regs_to_write: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0x8000000100000001000000010000000100000001000000010000000100010117 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 Write data to BLOCK3 Addr 3ff5a0d8, data= 10117 Addr 3ff5a0dc, data= 1 Addr 3ff5a0e0, data= 1 Addr 3ff5a0e4, data= 1 Addr 3ff5a0e8, data= 1 Addr 3ff5a0ec, data= 1 Addr 3ff5a0f0, data= 1 Addr 3ff5a0f4, data= 80000001 BLOCK3 8000000100000001000000010000000100000001000000010000000100010117 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000003 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb86i8b23 -d --do-not-confirm summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000003 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00010117 00000001 00000001 00000001 00000001 00000001 00000001 80000001 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b11) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 23 R/W (0x17) CUSTOM_MAC (BLOCK3) Custom MAC address = 01:01:00:01:00:00 (CRC 0x17 invalid - calculated 0x51) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 1 R/W (0x00000001) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 17 01 01 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 80 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestByteOrderBurnKeyCommand::test_1_secure_boot_v1 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb_39mv_d -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb_39mv_d -d --do-not-confirm burn-key flash_encryption /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit secure_boot_v1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_1 --no-protect-key espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [bf be bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 a0] Reversing the byte order... - BLOCK2 -> [bf 11 bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 11] Reversing the byte order... Key is left unprotected as per --no-protect-key argument. Burn keys in eFuse blocks. The key block will be left readable and writeable (due to --no-protect-key). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: bcbd11bf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 11a1a2a3 Write data to BLOCK2 Addr 3ff5a0b8, data= bcbd11bf Addr 3ff5a0bc, data= b8b9babb Addr 3ff5a0c0, data= b4b5b6b7 Addr 3ff5a0c4, data= b0b1b2b3 Addr 3ff5a0c8, data= acadaeaf Addr 3ff5a0cc, data= a8a9aaab Addr 3ff5a0d0, data= a4a5a6a7 Addr 3ff5a0d4, data= 11a1a2a3 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 11a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbd11bf BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: bcbd11bf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 11a1a2a3 BURN BLOCK2 - OK (write block == read block) BLOCK1 (flash_encryption) [1 ] to_write: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 Write data to BLOCK1 Addr 3ff5a098, data= bcbdbebf Addr 3ff5a09c, data= b8b9babb Addr 3ff5a0a0, data= b4b5b6b7 Addr 3ff5a0a4, data= b0b1b2b3 Addr 3ff5a0a8, data= acadaeaf Addr 3ff5a0ac, data= a8a9aaab Addr 3ff5a0b0, data= a4a5a6a7 Addr 3ff5a0b4, data= a0a1a2a3 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: bcbd11bf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 11a1a2a3 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb_39mv_d -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: bcbd11bf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 11a1a2a3 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = bf be bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 a0 R/W BLOCK2 (BLOCK2) Security boot key = bf 11 bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 11 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb_39mv_d -d --do-not-confirm burn-key flash_encryption /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit secure_boot_v1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: bcbd11bf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 11a1a2a3 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [bf be bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 a0] Reversing the byte order... The same value for BLOCK1 is already burned. Do not change the eFuse. Disabling read to key block... Disabling write to key block... - BLOCK2 -> [bf 11 bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 11] Reversing the byte order... The same value for BLOCK2 is already burned. Do not change the eFuse. Disabling read to key block... Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000030180 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0180'), 'RD_DIS': BitStream('0x3'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00030180 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 30180 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000030180 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00030180 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00030180 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpb_39mv_d -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00030180 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 384 R/W (0x0180) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 3 R/W (0x3) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? -/- BLOCK2 (BLOCK2) Security boot key = ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? -/- BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestByteOrderBurnKeyCommand::test_2_secure_boot_v1 Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8elzxe9 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8elzxe9 -d --do-not-confirm burn-key flash_encryption /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit secure_boot_v2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_1 --no-protect-key espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [bf be bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 a0] Reversing the byte order... - BLOCK2 -> [11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf] Key is left unprotected as per --no-protect-key argument. Burn keys in eFuse blocks. The key block will be left readable and writeable (due to --no-protect-key). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc Write data to BLOCK2 Addr 3ff5a0b8, data= a3a2a111 Addr 3ff5a0bc, data= a7a6a5a4 Addr 3ff5a0c0, data= abaaa9a8 Addr 3ff5a0c4, data= afaeadac Addr 3ff5a0c8, data= b3b2b1b0 Addr 3ff5a0cc, data= b7b6b5b4 Addr 3ff5a0d0, data= bbbab9b8 Addr 3ff5a0d4, data= bf11bdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 bf11bdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a111 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BURN BLOCK2 - OK (write block == read block) BLOCK1 (flash_encryption) [1 ] to_write: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 Write data to BLOCK1 Addr 3ff5a098, data= bcbdbebf Addr 3ff5a09c, data= b8b9babb Addr 3ff5a0a0, data= b4b5b6b7 Addr 3ff5a0a4, data= b0b1b2b3 Addr 3ff5a0a8, data= acadaeaf Addr 3ff5a0ac, data= a8a9aaab Addr 3ff5a0b0, data= a4a5a6a7 Addr 3ff5a0b4, data= a0a1a2a3 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8elzxe9 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = bf be bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 a0 R/W BLOCK2 (BLOCK2) Security boot key = 11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8elzxe9 -d --do-not-confirm burn-key flash_encryption /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit secure_boot_v2 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit_1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [bf be bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 a0] Reversing the byte order... The same value for BLOCK1 is already burned. Do not change the eFuse. Disabling read to key block... Disabling write to key block... - BLOCK2 -> [11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf] The same value for BLOCK2 is already burned. Do not change the eFuse. Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000010180 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0180'), 'RD_DIS': BitStream('0x1'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 00010180 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 10180 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000010180 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00010180 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00010180 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpf8elzxe9 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00010180 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a3a2a111 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bf11bdbc BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 384 R/W (0x0180) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 1 R/W (0x1) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? -/- BLOCK2 (BLOCK2) Security boot key = 11 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd 11 bf R/- BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestPublicAPI::test_public_api_batch_mode Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpstm_gc6_ -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 The eFuses to burn: from BLOCK0 - JTAG_DISABLE - DISABLE_SDIO_HOST - CONSOLE_DEBUG_DISABLE Burning eFuses: - 'JTAG_DISABLE' (Disable JTAG) 0b0 -> 0b1 - 'DISABLE_SDIO_HOST' () 0b0 -> 0b1 - 'CONSOLE_DEBUG_DISABLE' (Disable ROM BASIC interpreter fallback) 0b0 -> 0b1 Batch mode is enabled, the burn will be done at the end of the command. Burn keys to blocks: - BLOCK1 -> [?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??] Reversing the byte order... Key is left unprotected as per --no-protect-key argument. Burn keys in eFuse blocks. The key block will be left readable and writeable (due to --no-protect-key). Batch mode is enabled, the burn will be done at the end of the command. - BLOCK2 -> [?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??] Disabling write to eFuse BLOCK2... Batch mode is enabled, the burn will be done at the end of the command. bit_number: [255]........................................................[0] BLOCK 3 : 0x0000000000000000000000000000000000000000040c41250000000000000000 BLOCK3 ( ) [3 ] regs_to_write: 00000000 00000000 040c4125 00000000 00000000 00000000 00000000 00000000 written : 0x0000000000000000000000000000000000000000000000000000000000000000 -> to write: 0x0000000000000000000000000000000000000000040c41250000000000000000 Batch mode is enabled, the burn will be done at the end of the command. - 'MAC_VERSION' (Version of the MAC field) 0x00 -> 0x1 - 'CUSTOM_MAC' (Custom MAC address) 0x000000000000 -> 0x332211efcdaa - 'CUSTOM_MAC_CRC' (CRC8 for custom MAC address) 0x00 -> 0x63 Batch mode is enabled, the burn will be done at the end of the command. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x0000004c000000000000000000000000000000000000000000000100 (coding scheme = NONE) [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: efcdaa63 00332211 040c4125 00000000 00000000 01000000 00000000 00000000 Write data to BLOCK3 Addr 3ff5a0d8, data= efcdaa63 Addr 3ff5a0dc, data= 332211 Addr 3ff5a0e0, data= 40c4125 Addr 3ff5a0e4, data= 0 Addr 3ff5a0e8, data= 0 Addr 3ff5a0ec, data= 1000000 Addr 3ff5a0f0, data= 0 Addr 3ff5a0f4, data= 0 BLOCK3 0000000000000000010000000000000000000000040c412500332211efcdaa63 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: efcdaa63 00332211 040c4125 00000000 00000000 01000000 00000000 00000000 BURN BLOCK3 - OK (write block == read block) BLOCK2 (secure_boot_v1 s) [2 ] to_write: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d Write data to BLOCK2 Addr 3ff5a0b8, data= a39127cb Addr 3ff5a0bc, data= 32c0b071 Addr 3ff5a0c0, data= 437f72b Addr 3ff5a0c4, data= 6209ba78 Addr 3ff5a0c8, data= 1cab4c22 Addr 3ff5a0cc, data= 797828f2 Addr 3ff5a0d0, data= 3e6729e4 Addr 3ff5a0d4, data= 6344a87d BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 6344a87d3e6729e4797828f21cab4c226209ba780437f72b32c0b071a39127cb BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d BURN BLOCK2 - OK (write block == read block) BLOCK1 (flash_encryption) [1 ] to_write: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 Write data to BLOCK1 Addr 3ff5a098, data= bcbdbebf Addr 3ff5a09c, data= b8b9babb Addr 3ff5a0a0, data= b4b5b6b7 Addr 3ff5a0a4, data= b0b1b2b3 Addr 3ff5a0a8, data= acadaeaf Addr 3ff5a0ac, data= a8a9aaab Addr 3ff5a0b0, data= a4a5a6a7 Addr 3ff5a0b4, data= a0a1a2a3 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BURN BLOCK1 - OK (write block == read block) BLOCK0 ( ) [0 ] to_write: 00000100 00000000 00000000 00000000 00000000 00000000 0000004c Write data to BLOCK0 Addr 3ff5a01c, data= 100 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 4c BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 0000004c000000000000000000000000000000000000000000000100 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 0000004c BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000100 00000000 00000000 00008000 00000000 00100000 0000004c BLOCK1 (flash_encryption) [1 ] read_regs: bcbdbebf b8b9babb b4b5b6b7 b0b1b2b3 acadaeaf a8a9aaab a4a5a6a7 a0a1a2a3 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: a39127cb 32c0b071 0437f72b 6209ba78 1cab4c22 797828f2 3e6729e4 6344a87d BLOCK3 ( ) [3 ] read_regs: efcdaa63 00332211 040c4125 00000000 00000000 01000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 256 R/W (0x0100) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = True R/W (0b1) DISABLE_SDIO_HOST (BLOCK0) = True R/W (0b1) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = True R/W (0b1) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = Custom MAC in BLOCK3 R/W (0x01) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 99 R/W (0x63) CUSTOM_MAC (BLOCK3) Custom MAC address = aa:cd:ef:11:22:33 (CRC 0x63 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = bf be bd bc bb ba b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 af ae ad ac ab aa a9 a8 a7 a6 a5 a4 a3 a2 a1 a0 R/W BLOCK2 (BLOCK2) Security boot key = cb 27 91 a3 71 b0 c0 32 2b f7 37 04 78 ba 09 62 22 4c ab 1c f2 28 78 79 e4 29 67 3e 7d a8 44 63 R/- BLOCK3 (BLOCK3) Variable Block 3 = 63 aa cd ef 11 22 33 00 25 41 0c 04 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestPublicAPI::test_public_api_nesting Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpsbm_fz5l -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 The eFuses to burn: from BLOCK0 - WR_DIS - RD_DIS Burning eFuses: - 'WR_DIS' (Efuse write disable mask) 0x0000 -> 0x0002 - 'RD_DIS' (Disable reading from BlOCK1-3) 0x0 -> 0x1 Batch mode is enabled, the burn will be done at the end of the command. - 'MAC_VERSION' (Version of the MAC field) 0x00 -> 0x1 - 'CUSTOM_MAC' (Custom MAC address) 0x000000000000 -> 0x332211efcdaa - 'CUSTOM_MAC_CRC' (CRC8 for custom MAC address) 0x00 -> 0x63 Batch mode is enabled, the burn will be done at the end of the command. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 00000000000000000100000000000000000000000000000000332211efcdaa63 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BURN BLOCK3 - OK (write block == read block) Reading updated eFuses... EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000000000000000000000000000000000000000000000000010002 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK0 ( ) [0 ] to_write: 00010002 00000000 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 10002 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000010002 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00010002 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00010002 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: efcdaa63 00332211 00000000 00000000 00000000 01000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 2 R/- (0x0002) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 1 R/W (0x1) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = Custom MAC in BLOCK3 R/W (0x01) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 99 R/W (0x63) CUSTOM_MAC (BLOCK3) Custom MAC address = aa:cd:ef:11:22:33 (CRC 0x63 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? -/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 63 aa cd ef 11 22 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestPublicAPI::test_close_port_on_init_failure Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpk81r77r7 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. PASSED test/test_espefuse.py::TestMultipleCommands::test_multiple_cmds_help Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp3yea5mzh -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp3yea5mzh -d --do-not-confirm -h burn-key-digest /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem burn-key flash-encryption /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit Usage: python -m espefuse [OPTIONS] COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]... espefuse v5.3.1 - Utility for eFuse configuration in Espressif SoCs. ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --chip -c [auto|esp32|esp32c2|esp32c3|esp32c6|esp32c Target chip type. │ │ 61|esp32c5|esp32e22|esp32h2|esp32h21|esp32 │ │ h4|esp32p4|esp32s2|esp32s3|esp32s31] │ │ --baud -b BAUD-RATE Serial port baud rate used when │ │ flashing/reading. │ │ --port -p SERIAL-PORT Serial port device. │ │ --before [default-reset|usb-reset|no-reset|no-reset Which reset to perform before connecting │ │ -no-sync] to the chip. │ │ --after -a [hard-reset|soft-reset|no-reset|watchdog-r Which reset to perform after operation is │ │ eset] finished. │ │ --debug -d Show debugging information │ │ (loglevel=DEBUG). │ │ --virt For host tests, work in virtual mode (no │ │ chip connection). │ │ --path-efuse-file PATH For host tests, save eFuse memory to file. │ │ --do-not-confirm Do not pause for confirmation before │ │ permanently writing eFuses. Use with │ │ caution! │ │ --postpone/--no-postpone Postpone burning some eFuses from BLOCK0 │ │ at the end (enabled by default, can be │ │ disabled with --no-postpone). │ │ --extend-efuse-table FILENAME CSV file from ESP-IDF │ │ (esp_efuse_custom_table.csv). │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Burn commands ──────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ read-protect-efuse Disable readback for the eFuse. │ │ write-protect-efuse Disable writing to the eFuse. │ │ burn-efuse Burn the eFuse with the specified name. │ │ burn-block-data Burn non-key data to EFUSE blocks. │ │ burn-bit Burn bit in the eFuse block. │ │ burn-key Burn a 256-bit key to EFUSE. │ │ burn-key-digest Parse a RSA public key and burn the digest. │ │ burn-custom-mac Burn a 48-bit Custom MAC address. │ │ set-flash-voltage Permanently set the internal flash voltage regulator. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Read commands ──────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ summary Print human-readable summary of eFuse values. │ │ dump Dump raw hex values of all eFuses. │ │ get-custom-mac Get the 48-bit Custom MAC Address. │ │ adc-info Display information about ADC calibration data stored in eFuse. │ │ check-error Checks eFuse errors. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp3yea5mzh -d --do-not-confirm burn-key-digest /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem -h burn-key flash-encryption /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit espefuse v5.3.1 Usage: python -m espefuse burn-key-digest [OPTIONS] KEYFILE Parse a RSA public key and burn the digest to eFuse for use with Secure Boot V2. ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * KEYFILE FILENAME [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --no-protect-key Disable the default write-protection of the key digest. If this option is not set, once │ │ the key is flashed it cannot be changed. │ │ --force-write-always Write the eFuse even if it looks like it's already been written, or is write protected. │ │ Note that this option can't disable write protection, or clear any bit which has │ │ already been set. │ │ --show-sensitive-info Show data to be burned (may expose sensitive data). Enabled if --debug is used. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp3yea5mzh -d --do-not-confirm burn-key-digest /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem burn-key flash-encryption /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit -h espefuse v5.3.1 Usage: python -m espefuse burn-key [OPTIONS] [ ] ... (max 6 groups) Burn a 256-bit key to EFUSE. Arguments are pairs of block name and key file, containing 256 bits of binary key data. Block is one of: [BLOCK1, flash_encryption, BLOCK2, secure_boot_v1, secure_boot_v2, BLOCK3] ╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ * BLOCK_KEYFILE [ ] ... (max 6 groups) [required] │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --no-protect-key Disable the default read- and write-protection of the key. If this option is not set, │ │ once the key is flashed it cannot be read back or changed. │ │ --force-write-always Write the eFuse even if it looks like it's already been written, or is write protected. │ │ Note that this option can't disable write protection, or clear any bit which has │ │ already been set. │ │ --show-sensitive-info Show data to be burned (may expose sensitive data). Enabled if --debug is used. │ │ --help -h Show this message and exit. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ PASSED test/test_espefuse.py::TestMultipleCommands::test_1_esp32c2 SKIPPED test/test_espefuse.py::TestMultipleCommands::test_2_esp32c2 SKIPPED test/test_espefuse.py::TestMultipleCommands::test_burn_bit Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpu3ddki3k -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpu3ddki3k -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpu3ddki3k -d --do-not-confirm burn-bit BLOCK2 0 1 2 3 burn-bit BLOCK2 4 5 6 7 burn-bit BLOCK2 8 9 10 11 burn-bit BLOCK2 12 13 14 15 summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 2 : 0x00000000000000000000000000000000000000000000000f BLOCK2 (secure_boot_v1 s) [2 ] regs_to_write: 0000000f 00000000 00000000 00000000 00000000 00000000 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x00000000000000000000000000000000000000000000000f Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 2 : 0x0000000000000000000000000000000000000000000000f0 BLOCK2 (secure_boot_v1 s) [2 ] regs_to_write: 000000f0 00000000 00000000 00000000 00000000 00000000 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x0000000000000000000000000000000000000000000000f0 Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 2 : 0x000000000000000000000000000000000000000000000f00 BLOCK2 (secure_boot_v1 s) [2 ] regs_to_write: 00000f00 00000000 00000000 00000000 00000000 00000000 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x000000000000000000000000000000000000000000000f00 Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 2 : 0x00000000000000000000000000000000000000000000f000 BLOCK2 (secure_boot_v1 s) [2 ] regs_to_write: 0000f000 00000000 00000000 00000000 00000000 00000000 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x00000000000000000000000000000000000000000000f000 Batch mode is enabled, the burn will be done at the end of the command. === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: 0000ffff 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK2 Addr 3ff5a0b8, data= ffff Addr 3ff5a0bc, data= 18000000 Addr 3ff5a0c0, data= 0 Addr 3ff5a0c4, data= 0 Addr 3ff5a0c8, data= 0 Addr 3ff5a0cc, data= 0 Addr 3ff5a0d0, data= 0 Addr 3ff5a0d4, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 000000000000000000000000000000000000000000000000180000000000ffff BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 0000ffff 00000000 00000000 00000000 00000000 00000000 BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 0000ffff 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpu3ddki3k -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 0000ffff 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestMultipleCommands::test_burn_bit_deprecated_commands Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp710q1hq2 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp710q1hq2 -d --do-not-confirm burn-efuse CODING_SCHEME 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CODING_SCHEME Burning eFuses: - 'CODING_SCHEME' (Efuse variable block length scheme) 0b00 -> 0b01 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000001000000000000000000000000000000000000000000000000 (coding scheme = NONE) [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000000 00000000 00000000 00000001 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 1 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000001000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp710q1hq2 -d --do-not-confirm burn_bit BLOCK2 0 1 2 3 burn_bit BLOCK2 4 5 6 7 burn_bit BLOCK2 8 9 10 11 burn_bit BLOCK2 12 13 14 15 summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 Warning: Deprecated: Command 'burn_bit' is deprecated. Use 'burn-bit' instead. Warning: Deprecated: Command 'burn_bit' is deprecated. Use 'burn-bit' instead. Warning: Deprecated: Command 'burn_bit' is deprecated. Use 'burn-bit' instead. Warning: Deprecated: Command 'burn_bit' is deprecated. Use 'burn-bit' instead. === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 2 : 0x00000000000000000000000000000000000000000000000f BLOCK2 (secure_boot_v1 s) [2 ] regs_to_write: 0000000f 00000000 00000000 00000000 00000000 00000000 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x00000000000000000000000000000000000000000000000f Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 2 : 0x0000000000000000000000000000000000000000000000f0 BLOCK2 (secure_boot_v1 s) [2 ] regs_to_write: 000000f0 00000000 00000000 00000000 00000000 00000000 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x0000000000000000000000000000000000000000000000f0 Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 2 : 0x000000000000000000000000000000000000000000000f00 BLOCK2 (secure_boot_v1 s) [2 ] regs_to_write: 00000f00 00000000 00000000 00000000 00000000 00000000 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x000000000000000000000000000000000000000000000f00 Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-bit" command === bit_number: [191]........................................................[0] BLOCK 2 : 0x00000000000000000000000000000000000000000000f000 BLOCK2 (secure_boot_v1 s) [2 ] regs_to_write: 0000f000 00000000 00000000 00000000 00000000 00000000 written : 0x000000000000000000000000000000000000000000000000 -> to write: 0x00000000000000000000000000000000000000000000f000 Batch mode is enabled, the burn will be done at the end of the command. === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 is empty, will burn the new value [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK2 (secure_boot_v1 s) [2 ] to_write: 0000ffff 00000000 00000000 00000000 00000000 00000000 Write data to BLOCK2 Addr 3ff5a0b8, data= ffff Addr 3ff5a0bc, data= 18000000 Addr 3ff5a0c0, data= 0 Addr 3ff5a0c4, data= 0 Addr 3ff5a0c8, data= 0 Addr 3ff5a0cc, data= 0 Addr 3ff5a0d0, data= 0 Addr 3ff5a0d4, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 000000000000000000000000000000000000000000000000180000000000ffff BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 0000ffff 00000000 00000000 00000000 00000000 00000000 BURN BLOCK2 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 0000ffff 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmp710q1hq2 -d --do-not-confirm -d summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000001 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 0000ffff 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = 3/4 (BLK1-3 len=192 bits) R/W (0b01) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) PASSED test/test_espefuse.py::TestMultipleCommands::test_not_burn_cmds Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpx1466aya -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpx1466aya -d --do-not-confirm summary dump get-custom-mac adc-info check-error espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) === Run "dump" command === BLOCK0 ( ) [0 ] dump: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] dump: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] dump: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] dump: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 === Run "get-custom-mac" command === Custom MAC Address is not set in the device. === Run "adc-info" command === ADC VRef calibration: None (1100mV nominal) === Run "check-error" command === EFUSE_REG_DEC_STATUS 0x00000000 No errors detected. PASSED test/test_espefuse.py::TestKeyPurposes::test_burn_xts_aes_key_purpose SKIPPED test/test_espefuse.py::TestKeyPurposes::test_burn_ecdsa_key_purpose SKIPPED test/test_espefuse.py::TestKeyPurposes::test_burn_xts_aes_key SKIPPED test/test_espefuse.py::TestKeyPurposes::test_burn_ecdsa_key SKIPPED test/test_espefuse.py::TestPostponedEfuses::test_postpone_efuses[postpone] Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpz3ey6piu -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpz3ey6piu -d --do-not-confirm --postpone burn-efuse UART_DOWNLOAD_DIS 1 DISABLE_BT 1 burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit burn-efuse ABS_DONE_1 1 FLASH_CRYPT_CNT 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - UART_DOWNLOAD_DIS - DISABLE_BT Burning eFuses: - 'UART_DOWNLOAD_DIS' (Disable UART download mode. Valid for ESP32 V3 and newer; only) 0b0 -> 0b1 - 'DISABLE_BT' (Disables Bluetooth) 0b0 -> 0b1 UART_DOWNLOAD_DIS -> 1: eFuses will be read for confirmation, but after that connection to the chip will become impossible. espefuse/esptool will not work. Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - ABS_DONE_1 - FLASH_CRYPT_CNT Burning eFuses: - 'ABS_DONE_1' (Secure boot V2 is enabled for bootloader image) 0b0 -> 0b1 - 'FLASH_CRYPT_CNT' (Flash encryption is enabled if this field has an odd number of bits set) 0b0000000 -> 0b0000001 Batch mode is enabled, the burn will be done at the end of the command. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000020000000000000000000000002000000000000000008100080 (coding scheme = NONE) [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK1 (flash_encryption) [1 ] to_write: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Write data to BLOCK1 Addr 3ff5a098, data= a3a2a1a0 Addr 3ff5a09c, data= a7a6a5a4 Addr 3ff5a0a0, data= abaaa9a8 Addr 3ff5a0a4, data= afaeadac Addr 3ff5a0a8, data= b3b2b1b0 Addr 3ff5a0ac, data= b7b6b5b4 Addr 3ff5a0b0, data= bbbab9b8 Addr 3ff5a0b4, data= bfbebdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a1a0 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0080'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b1'), 'ABS_DONE_1': BitStream('0b1'), 'FLASH_CRYPT_CNT': BitStream('0b0000001')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000002 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 2 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000002000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008002 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 08100080 00000000 00000000 00000000 00000000 00000000 00000020 Write data to BLOCK0 Addr 3ff5a01c, data= 8100080 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 20 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000020000000000000000000000000000000000000000008100080 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 08100080 00000000 00000000 00008002 00000000 00100000 00000020 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 08100080 00000000 00000000 00008002 00000000 00100000 00000020 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. PASSED test/test_espefuse.py::TestPostponedEfuses::test_postpone_efuses[no-postopone] Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpmg1pc5x4 -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpmg1pc5x4 -d --do-not-confirm --no-postpone burn-efuse UART_DOWNLOAD_DIS 1 DISABLE_BT 1 burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit burn-efuse ABS_DONE_1 1 FLASH_CRYPT_CNT 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - UART_DOWNLOAD_DIS - DISABLE_BT Burning eFuses: - 'UART_DOWNLOAD_DIS' (Disable UART download mode. Valid for ESP32 V3 and newer; only) 0b0 -> 0b1 - 'DISABLE_BT' (Disables Bluetooth) 0b0 -> 0b1 UART_DOWNLOAD_DIS -> 1: eFuses will be read for confirmation, but after that connection to the chip will become impossible. espefuse/esptool will not work. Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - ABS_DONE_1 - FLASH_CRYPT_CNT Burning eFuses: - 'ABS_DONE_1' (Secure boot V2 is enabled for bootloader image) 0b0 -> 0b1 - 'FLASH_CRYPT_CNT' (Flash encryption is enabled if this field has an odd number of bits set) 0b0000000 -> 0b0000001 Batch mode is enabled, the burn will be done at the end of the command. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000020000000000000000000000002000000000000000008100080 (coding scheme = NONE) [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK1 (flash_encryption) [1 ] to_write: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Write data to BLOCK1 Addr 3ff5a098, data= a3a2a1a0 Addr 3ff5a09c, data= a7a6a5a4 Addr 3ff5a0a0, data= abaaa9a8 Addr 3ff5a0a4, data= afaeadac Addr 3ff5a0a8, data= b3b2b1b0 Addr 3ff5a0ac, data= b7b6b5b4 Addr 3ff5a0b0, data= bbbab9b8 Addr 3ff5a0b4, data= bfbebdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a1a0 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BURN BLOCK1 - OK (write block == read block) BLOCK0 ( ) [0 ] to_write: 08100080 00000000 00000000 00000002 00000000 00000000 00000020 Write data to BLOCK0 Addr 3ff5a01c, data= 8100080 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 2 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 20 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000020000000000000000000000002000000000000000008100080 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 08100080 00000000 00000000 00008002 00000000 00100000 00000020 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 08100080 00000000 00000000 00008002 00000000 00100000 00000020 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. PASSED test/test_espefuse.py::TestPostponedEfuses::test_postpone_efuses[default] Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmps8b53bu_ -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmps8b53bu_ -d --do-not-confirm burn-efuse UART_DOWNLOAD_DIS 1 DISABLE_BT 1 burn-key BLOCK1 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/256bit burn-efuse ABS_DONE_1 1 FLASH_CRYPT_CNT 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - UART_DOWNLOAD_DIS - DISABLE_BT Burning eFuses: - 'UART_DOWNLOAD_DIS' (Disable UART download mode. Valid for ESP32 V3 and newer; only) 0b0 -> 0b1 - 'DISABLE_BT' (Disables Bluetooth) 0b0 -> 0b1 UART_DOWNLOAD_DIS -> 1: eFuses will be read for confirmation, but after that connection to the chip will become impossible. espefuse/esptool will not work. Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-key" command === Burn keys to blocks: - BLOCK1 -> [a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf] Disabling write to key block... Burn keys in eFuse blocks. The key block will be read and write protected (no further changes or readback). Batch mode is enabled, the burn will be done at the end of the command. === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - ABS_DONE_1 - FLASH_CRYPT_CNT Burning eFuses: - 'ABS_DONE_1' (Secure boot V2 is enabled for bootloader image) 0b0 -> 0b1 - 'FLASH_CRYPT_CNT' (Flash encryption is enabled if this field has an odd number of bits set) 0b0000000 -> 0b0000001 Batch mode is enabled, the burn will be done at the end of the command. Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is not empty (written ): 0x00000000001000000000000000008000000000000000000000000000 (to write): 0x00000020000000000000000000000002000000000000000008100080 (coding scheme = NONE) [01] BLOCK1 is empty, will burn the new value [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! BLOCK1 (flash_encryption) [1 ] to_write: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc Write data to BLOCK1 Addr 3ff5a098, data= a3a2a1a0 Addr 3ff5a09c, data= a7a6a5a4 Addr 3ff5a0a0, data= abaaa9a8 Addr 3ff5a0a4, data= afaeadac Addr 3ff5a0a8, data= b3b2b1b0 Addr 3ff5a0ac, data= b7b6b5b4 Addr 3ff5a0b0, data= bbbab9b8 Addr 3ff5a0b4, data= bfbebdbc BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0afaeadacabaaa9a8a7a6a5a4a3a2a1a0 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BURN BLOCK1 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0080'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b1'), 'ABS_DONE_1': BitStream('0b1'), 'FLASH_CRYPT_CNT': BitStream('0b0000001')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00000002 00000000 00000000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 2 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000002000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008002 00000000 00100000 00000000 BURN BLOCK0 - OK (all write block bits are set) Burn postponed eFuses from BLOCK0. BLOCK0 ( ) [0 ] to_write: 08100080 00000000 00000000 00000000 00000000 00000000 00000020 Write data to BLOCK0 Addr 3ff5a01c, data= 8100080 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 0 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 0 Addr 3ff5a034, data= 20 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000020000000000000000000000000000000000000000008100080 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 08100080 00000000 00000000 00008002 00000000 00100000 00000020 BURN BLOCK0 - OK (all write block bits are set) Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 08100080 00000000 00000000 00008002 00000000 00100000 00000020 BLOCK1 (flash_encryption) [1 ] read_regs: a3a2a1a0 a7a6a5a4 abaaa9a8 afaeadac b3b2b1b0 b7b6b5b4 bbbab9b8 bfbebdbc BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Successful. PASSED test/test_espefuse.py::TestCSVEfuseTable::test_extend_efuse_table_with_csv_file Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpr0v2c3bp -d --do-not-confirm burn-efuse CHIP_VER_REV1 1 CHIP_VER_REV2 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK0 - CHIP_VER_REV1 - CHIP_VER_REV2 Burning eFuses: - 'CHIP_VER_REV1' (bit is set to 1 for rev1 silicon) 0b0 -> 0b1 - 'CHIP_VER_REV2' () 0b0 -> 0b1 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 is empty, will burn the new value [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 nothing to burn . This is an irreversible operation! These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} BLOCK0 ( ) [0 ] to_write: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 Write data to BLOCK0 Addr 3ff5a01c, data= 0 Addr 3ff5a020, data= 0 Addr 3ff5a024, data= 0 Addr 3ff5a028, data= 8000 Addr 3ff5a02c, data= 0 Addr 3ff5a030, data= 100000 Addr 3ff5a034, data= 0 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000001000000000000000008000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BURN BLOCK0 - OK (write block == read block) Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Checking eFuses... Successful. Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpr0v2c3bp -d --do-not-confirm --extend-efuse-table /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/esp_efuse_custom_table.csv summary espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "summary" command === EFUSE_REG_DEC_STATUS 0x00000000 EFUSE_NAME (Block) Description = [Meaningful Value] [Readable/Writeable] (Hex Value) ---------------------------------------------------------------------------------------- Calibration fuses: ADC_VREF (BLOCK0) True ADC reference voltage = 1100 R/W (0b00000) Config fuses: WR_DIS (BLOCK0) Efuse write disable mask = 0 R/W (0x0000) RD_DIS (BLOCK0) Disable reading from BlOCK1-3 = 0 R/W (0x0) DISABLE_APP_CPU (BLOCK0) Disables APP CPU = False R/W (0b0) DISABLE_BT (BLOCK0) Disables Bluetooth = False R/W (0b0) DIS_CACHE (BLOCK0) Disables cache = False R/W (0b0) CHIP_CPU_FREQ_LOW (BLOCK0) If set alongside EFUSE_RD_CHIP_CPU_FREQ_RATED; the = False R/W (0b0) ESP32's max CPU frequency is rated for 160MHz. 24 0MHz otherwise CHIP_CPU_FREQ_RATED (BLOCK0) If set; the ESP32's maximum CPU frequency has been = False R/W (0b0) rated BLK3_PART_RESERVE (BLOCK0) BLOCK3 partially served for ADC calibration data = False R/W (0b0) CLK8M_FREQ (BLOCK0) 8MHz clock freq override = 0 R/W (0x00) VOL_LEVEL_HP_INV (BLOCK0) This field stores the voltage level for CPU to run = 0 R/W (0b00) at 240 MHz; or for flash/PSRAM to run at 80 MHz.0 x0: level 7; 0x1: level 6; 0x2: level 5; 0x3: leve l 4. (RO) CODING_SCHEME (BLOCK0) Efuse variable block length scheme = NONE (BLK1-3 len=256 bits) R/W (0b00) CONSOLE_DEBUG_DISABLE (BLOCK0) Disable ROM BASIC interpreter fallback = False R/W (0b0) DISABLE_SDIO_HOST (BLOCK0) = False R/W (0b0) DISABLE_DL_CACHE (BLOCK0) Disable flash cache in UART bootloader = False R/W (0b0) Flash fuses: FLASH_CRYPT_CNT (BLOCK0) Flash encryption is enabled if this field has an o = 0 R/W (0b0000000) dd number of bits set FLASH_CRYPT_CONFIG (BLOCK0) Flash encryption config (key tweak bits) = 0 R/W (0x0) Identity fuses: CHIP_PACKAGE_4BIT (BLOCK0) Chip package identifier #4bit = False R/W (0b0) CHIP_PACKAGE (BLOCK0) Chip package identifier = 0 R/W (0b000) CHIP_VER_REV1 (BLOCK0) bit is set to 1 for rev1 silicon = True R/W (0b1) CHIP_VER_REV2 (BLOCK0) = True R/W (0b1) WAFER_VERSION_MINOR (BLOCK0) = 0 R/W (0b00) WAFER_VERSION_MAJOR (BLOCK0) calc WAFER VERSION MAJOR from CHIP_VER_REV1 and CH = 3 R/W (0b011) IP_VER_REV2 and apb_ctl_date (read only) PKG_VERSION (BLOCK0) calc Chip package = CHIP_PACKAGE_4BIT << 3 + CHIP_ = 0 R/W (0x0) PACKAGE (read only) Jtag fuses: JTAG_DISABLE (BLOCK0) Disable JTAG = False R/W (0b0) Mac fuses: MAC (BLOCK0) MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W MAC_CRC (BLOCK0) CRC8 for MAC address = 0 R/W (0x00) MAC_VERSION (BLOCK3) Version of the MAC field = 0 R/W (0x00) CUSTOM_MAC_CRC (BLOCK3) CRC8 for custom MAC address = 0 R/W (0x00) CUSTOM_MAC (BLOCK3) Custom MAC address = 00:00:00:00:00:00 (CRC 0x00 OK) R/W Security fuses: UART_DOWNLOAD_DIS (BLOCK0) Disable UART download mode. Valid for ESP32 V3 and = False R/W (0b0) newer; only ABS_DONE_0 (BLOCK0) Secure boot V1 is enabled for bootloader image = False R/W (0b0) ABS_DONE_1 (BLOCK0) Secure boot V2 is enabled for bootloader image = False R/W (0b0) DISABLE_DL_ENCRYPT (BLOCK0) Disable flash encryption in UART bootloader = False R/W (0b0) DISABLE_DL_DECRYPT (BLOCK0) Disable flash decryption in UART bootloader = False R/W (0b0) KEY_STATUS (BLOCK0) Usage of efuse block 3 (reserved) = False R/W (0b0) SECURE_VERSION (BLOCK3) Secure version for anti-rollback = 0 R/W (0x00000000) BLOCK1 (BLOCK1) Flash encryption key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK2 (BLOCK2) Security boot key = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W BLOCK3 (BLOCK3) Variable Block 3 = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W Spi Pad fuses: SPI_PAD_CONFIG_HD (BLOCK0) read for SPI_pad_config_hd = 0 R/W (0b00000) SPI_PAD_CONFIG_CLK (BLOCK0) Override SD_CLK pad (GPIO6/SPICLK) = 0 R/W (0b00000) SPI_PAD_CONFIG_Q (BLOCK0) Override SD_DATA_0 pad (GPIO7/SPIQ) = 0 R/W (0b00000) SPI_PAD_CONFIG_D (BLOCK0) Override SD_DATA_1 pad (GPIO8/SPID) = 0 R/W (0b00000) SPI_PAD_CONFIG_CS0 (BLOCK0) Override SD_CMD pad (GPIO11/SPICS0) = 0 R/W (0b00000) User fuses: MODULE_VERSION (BLOCK3) Module version (56-63) = 0 R/W (0x00) DEVICE_ROLE (BLOCK3) Device role (64-66) = 0 R/W (0b000) SETTING_1 (BLOCK3) [SETTING_1_ALT_NAME] Setting 1 (67-72) = 0 R/W (0b000000) SETTING_2 (BLOCK3) Setting 2 (73-77) = 0 R/W (0b00000) ID_NUM_0 (BLOCK3) [MY_ID_NUM] comment (140-147) = 0 R/W (0x00) ID_NUM_1 (BLOCK3) [MY_ID_NUM] comment (132-139) = 0 R/W (0x00) ID_NUM_2 (BLOCK3) [MY_ID_NUM] comment (122-129) = 0 R/W (0x00) CUSTOM_SECURE_VERSION (BLOCK3) Custom secure version (78-93) = 0 R/W (0x0000) ID_NUMK_0 (BLOCK3) [MY_ID_NUMK] comment (150-157) = 0 R/W (0x00) ID_NUMK_1 (BLOCK3) [MY_ID_NUMK] comment (182-189) = 0 R/W (0x00) MY_DATA (BLOCK3) My data (190-199) = 0 R/W (0b0000000000) MY_DATA_FIELD1 (BLOCK3) Field1 (190-196) = 0 R/W (0b0000000) Vdd fuses: XPD_SDIO_REG (BLOCK0) read for XPD_SDIO_REG = False R/W (0b0) XPD_SDIO_TIEH (BLOCK0) If XPD_SDIO_FORCE & XPD_SDIO_REG = 1.8V R/W (0b0) XPD_SDIO_FORCE (BLOCK0) Ignore MTDI pin (GPIO12) for VDD_SDIO on reset = False R/W (0b0) Flash voltage (VDD_SDIO) determined by GPIO12 on reset (High for 1.8V, Low/NC for 3.3V) Running command: /usr/bin/python3 -m espefuse --chip esp32 --virt --path-efuse-file /tmp/tmpr0v2c3bp -d --do-not-confirm --extend-efuse-table /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/efuse/esp_efuse_custom_table.csv burn-efuse MODULE_VERSION 1 CUSTOM_SECURE_VERSION 4 SETTING_1_ALT_NAME 7 SETTING_2 1 ID_NUM_0 1 ID_NUM_1 1 ID_NUM_2 1 MY_ID_NUMK_0 1 MY_ID_NUMK_1 1 MY_DATA_FIELD1 1 espefuse v5.3.1 BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 EFUSE_REG_DEC_STATUS 0x00000000 === Run "burn-efuse" command === The eFuses to burn: from BLOCK3 - MODULE_VERSION - CUSTOM_SECURE_VERSION - SETTING_1 - SETTING_2 - ID_NUM_0 - ID_NUM_1 - ID_NUM_2 - ID_NUMK_0 - ID_NUMK_1 - MY_DATA_FIELD1 Burning eFuses: - 'MODULE_VERSION' (Module version (56-63)) 0x00 -> 0x01 - 'CUSTOM_SECURE_VERSION' (Custom secure version (78-93)) 0x0000 -> 0x0004 - 'SETTING_1' ([SETTING_1_ALT_NAME] Setting 1 (67-72)) 0b000000 -> 0b000111 - 'SETTING_2' (Setting 2 (73-77)) 0b00000 -> 0b00001 - 'ID_NUM_0' ([MY_ID_NUM] comment (140-147)) 0x00 -> 0x01 - 'ID_NUM_1' ([MY_ID_NUM] comment (132-139)) 0x00 -> 0x01 - 'ID_NUM_2' ([MY_ID_NUM] comment (122-129)) 0x00 -> 0x01 - 'ID_NUMK_0' ([MY_ID_NUMK] comment (150-157)) 0x00 -> 0x01 - 'ID_NUMK_1' ([MY_ID_NUMK] comment (182-189)) 0x00 -> 0x01 - 'MY_DATA_FIELD1' (Field1 (190-196)) 0b0000000 -> 0b0000001 Check all blocks for burn... idx, BLOCK_NAME, Conclusion [00] BLOCK0 nothing to burn [01] BLOCK1 nothing to burn [02] BLOCK2 nothing to burn [03] BLOCK3 is empty, will burn the new value . This is an irreversible operation! BLOCK3 ( ) [3 ] to_write: 00000000 01000000 00010238 04000000 00401010 40400000 00000000 00000000 Write data to BLOCK3 Addr 3ff5a0d8, data= 0 Addr 3ff5a0dc, data= 1000000 Addr 3ff5a0e0, data= 10238 Addr 3ff5a0e4, data= 4000000 Addr 3ff5a0e8, data= 401010 Addr 3ff5a0ec, data= 40400000 Addr 3ff5a0f0, data= 0 Addr 3ff5a0f4, data= 0 BLOCK3 0000000000000000404000000040101004000000000102380100000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 0000000000000000000000000000000000000000000000000000000000000000 BLOCK2 0000000000000000000000000000000000000000000000000000000000000000 BLOCK1 0000000000000000000000000000000000000000000000000000000000000000 BLOCK0 00000000000000000000000000000000000000000000000000000000 BLOCK3 ( ) [3 ] read_regs: 00000000 01000000 00010238 04000000 00401010 40400000 00000000 00000000 BURN BLOCK3 - OK (write block == read block) These BLOCK0 eFuses will be burned later at the very end: {'WR_DIS': BitStream('0x0000'), 'RD_DIS': BitStream('0x0'), 'UART_DOWNLOAD_DIS': BitStream('0b0'), 'ABS_DONE_1': BitStream('0b0'), 'FLASH_CRYPT_CNT': BitStream('0b0000000')} Burn postponed eFuses from BLOCK0. Reading updated eFuses... BLOCK0 ( ) [0 ] read_regs: 00000000 00000000 00000000 00008000 00000000 00100000 00000000 BLOCK1 (flash_encryption) [1 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK2 (secure_boot_v1 s) [2 ] read_regs: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 BLOCK3 ( ) [3 ] read_regs: 00000000 01000000 00010238 04000000 00401010 40400000 00000000 00000000 Checking eFuses... Successful. PASSED test/test_espefuse.py::TestCustomKeyPurposes::test_custom_key_purposes SKIPPED test/test_espefuse.py::TestCustomKeyPurposes::test_custom_digest_key_purposes SKIPPED test/test_espsecure.py::TestESP32SecureBootloader::test_digest_bootloader Executing /usr/bin/python3 -m espsecure digest-secure-bootloader --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpfets73jt --iv /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_iv.bin /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Warning: --iv argument is for TESTING PURPOSES ONLY Using 256-bit key. Digest + image written to "/tmp/tmpfets73jt" PASSED test/test_espsecure.py::TestESP32SecureBootloader::test_digest_rsa_public_key Executing /usr/bin/python3 -m espsecure digest-rsa-public-key --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem -o /tmp/tmpybnwm9e3... DeprecationWarning: The command 'digest-rsa-public-key' is deprecated. espsecure v5.3.1 Writing the public key digest of "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem" to "/tmp/tmpybnwm9e3". PASSED test/test_espsecure.py::TestESP32SecureBootloader::test_extract_public_key_v1 Executing /usr/bin/python3 -m espsecure generate-signing-key --version 1 --scheme ecdsa256 /tmp/tmpsajjlya5/v1_key.pem... espsecure v5.3.1 ECDSA NIST256p private key in PEM format written to "/tmp/tmpsajjlya5/v1_key.pem". Executing /usr/bin/python3 -m espsecure extract-public-key --version 1 --keyfile /tmp/tmpsajjlya5/v1_key.pem /tmp/tmpsajjlya5/v1_public_key.bin... espsecure v5.3.1 "/tmp/tmpsajjlya5/v1_key.pem" public key extracted to "/tmp/tmpsajjlya5/v1_public_key.bin". PASSED test/test_espsecure.py::TestESP32SecureBootloader::test_extract_public_key_v2 Executing /usr/bin/python3 -m espsecure generate-signing-key --version 2 --scheme ecdsa256 /tmp/tmp3w8k_sa5/v2_key.pem... espsecure v5.3.1 ECDSA NIST256p private key in PEM format written to "/tmp/tmp3w8k_sa5/v2_key.pem". Executing /usr/bin/python3 -m espsecure extract-public-key --version 2 --keyfile /tmp/tmp3w8k_sa5/v2_key.pem /tmp/tmp3w8k_sa5/v2_public_key.pem... espsecure v5.3.1 "/tmp/tmp3w8k_sa5/v2_key.pem" public key extracted to "/tmp/tmp3w8k_sa5/v2_public_key.pem". PASSED test/test_espsecure.py::TestSigning::test_key_generation_v1 Executing /usr/bin/python3 -m espsecure generate-signing-key --version 1 /tmp/tmpml2jbrny/key.pem... espsecure v5.3.1 ECDSA NIST256p private key in PEM format written to "/tmp/tmpml2jbrny/key.pem". PASSED test/test_espsecure.py::TestSigning::test_key_generation_v2[rsa3072] Executing /usr/bin/python3 -m espsecure generate-signing-key --version 2 --scheme rsa3072 /tmp/tmpg4yk3ch7/key.pem... espsecure v5.3.1 RSA 3072 private key in PEM format written to "/tmp/tmpg4yk3ch7/key.pem". PASSED test/test_espsecure.py::TestSigning::test_key_generation_v2[ecdsa256] Executing /usr/bin/python3 -m espsecure generate-signing-key --version 2 --scheme ecdsa256 /tmp/tmp4qr2jpwu/key.pem... espsecure v5.3.1 ECDSA NIST256p private key in PEM format written to "/tmp/tmp4qr2jpwu/key.pem". PASSED test/test_espsecure.py::TestSigning::test_key_generation_v2[ecdsa384] Executing /usr/bin/python3 -m espsecure generate-signing-key --version 2 --scheme ecdsa384 /tmp/tmpsf4_v2mq/key.pem... espsecure v5.3.1 ECDSA NIST384p private key in PEM format written to "/tmp/tmpsf4_v2mq/key.pem". PASSED test/test_espsecure.py::TestSigning::test_sign_v1_data Executing /usr/bin/python3 -m espsecure sign-data --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem --output /tmp/tmphqph06sh /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Signed 21696 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin". PASSED test/test_espsecure.py::TestSigning::test_sign_v1_data_pkcs8 Executing /usr/bin/python3 -m espsecure sign-data --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key_pkcs8.pem --output /tmp/tmpmvoputgh /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Signed 21696 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin". PASSED test/test_espsecure.py::TestSigning::test_sign_v1_with_pre_calculated_signature Executing /usr/bin/python3 -m espsecure sign-data --version 1 --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature.bin --output /tmp/tmpgn9exn9p /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Pre-calculated signatures found... Signed 21696 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin". Executing /usr/bin/python3 -m espsecure verify-signature --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem /tmp/tmpgn9exn9p... espsecure v5.3.1 Verifying 21696 bytes of data... Signature is valid. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_data[rsa] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem --output /tmp/tmp164hdouw /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /tmp/tmp164hdouw... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_data[ecdsa256] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem --output /tmp/tmpkkhve5i4 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /tmp/tmpkkhve5i4... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_data[ecdsa384] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem --output /tmp/tmpg5w3282x /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /tmp/tmpg5w3282x... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_data_skip_padding[rsa] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --skip-padding --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem --output /tmp/tmpwvyu6b47 /tmp/tmpr4dnmy9y... espsecure v5.3.1 Skipping sector padding. Data contents are not sector aligned. 1 signing key(s) found. Signed 100 bytes of data from "/tmp/tmpr4dnmy9y". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --skip-padding --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /tmp/tmpwvyu6b47... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_data_skip_padding[ecdsa256] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --skip-padding --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem --output /tmp/tmpe0nbet4x /tmp/tmpgve2nyf9... espsecure v5.3.1 Skipping sector padding. Data contents are not sector aligned. 1 signing key(s) found. Signed 100 bytes of data from "/tmp/tmpgve2nyf9". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --skip-padding --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /tmp/tmpe0nbet4x... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_data_skip_padding[ecdsa384] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --skip-padding --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem --output /tmp/tmpemxw9q7i /tmp/tmpg8j0xscp... espsecure v5.3.1 Skipping sector padding. Data contents are not sector aligned. 1 signing key(s) found. Signed 100 bytes of data from "/tmp/tmpg8j0xscp". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --skip-padding --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /tmp/tmpemxw9q7i... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_v2_skip_padding_file_too_small Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --skip-padding --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /tmp/tmpplg43pem... A fatal error occurred: Invalid datafile. File too small (must be at least 4096 bytes). espsecure v5.3.1 PASSED test/test_espsecure.py::TestSigning::test_sign_v2_multiple_keys_cli[rsa] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key3.pem --output /tmp/tmpomi12oq_ /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /tmp/tmpomi12oq_... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem /tmp/tmpomi12oq_... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 verification successful using the supplied key (RSA). Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key3.pem /tmp/tmpomi12oq_... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 verification successful using the supplied key (RSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_multiple_keys_cli[ecdsa256] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key3.pem --output /tmp/tmp845ncal4 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /tmp/tmp845ncal4... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /tmp/tmp845ncal4... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key3.pem /tmp/tmp845ncal4... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_multiple_keys_cli[ecdsa384] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key3.pem --output /tmp/tmpco51vut3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /tmp/tmpco51vut3... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem /tmp/tmpco51vut3... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key3.pem /tmp/tmpco51vut3... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_multiple_keys[rsa] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key3.pem --output /tmp/tmpqdigi923 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key3.pem /tmp/tmpqdigi923... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 verification successful using the supplied key (RSA). Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem /tmp/tmpqdigi923... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 verification successful using the supplied key (RSA). Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /tmp/tmpqdigi923... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_sign_v2_multiple_keys[ecdsa256] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key3.pem --output /tmp/tmpt_8l26pc /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key3.pem /tmp/tmpt_8l26pc... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /tmp/tmpt_8l26pc... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /tmp/tmpt_8l26pc... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_sign_v2_multiple_keys[ecdsa384] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key3.pem --output /tmp/tmpz0pjn8rl /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key3.pem /tmp/tmpz0pjn8rl... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem /tmp/tmpz0pjn8rl... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /tmp/tmpz0pjn8rl... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_sign_v2_append_signatures[rsa] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key3.pem --output /tmp/tmp46u4kg0w /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_rsa.bin... espsecure v5.3.1 Signature block 0 is valid (RSA). 1 valid signature block(s) already present in the signature sector. 2 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_rsa.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /tmp/tmp46u4kg0w... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem /tmp/tmp46u4kg0w... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 verification successful using the supplied key (RSA). Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key3.pem /tmp/tmp46u4kg0w... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 verification successful using the supplied key (RSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_append_signatures[ecdsa256] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key3.pem --output /tmp/tmpwj6mmp_0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa256.bin... espsecure v5.3.1 Signature block 0 is valid (ECDSA). 1 valid signature block(s) already present in the signature sector. 2 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa256.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /tmp/tmpwj6mmp_0... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /tmp/tmpwj6mmp_0... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key3.pem /tmp/tmpwj6mmp_0... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_append_signatures[ecdsa384] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key3.pem --output /tmp/tmpj185rbz0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa384.bin... espsecure v5.3.1 Signature block 0 is valid (ECDSA). 1 valid signature block(s) already present in the signature sector. 2 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa384.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /tmp/tmpj185rbz0... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem /tmp/tmpj185rbz0... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key3.pem /tmp/tmpj185rbz0... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_append_signatures_multiple_steps[rsa] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem --output /tmp/tmp3umr3jmo /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_rsa.bin... espsecure v5.3.1 Signature block 0 is valid (RSA). 1 valid signature block(s) already present in the signature sector. 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_rsa.bin". Signature sector now has 2 signature blocks. Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key3.pem --output /tmp/tmpc5ad3_o0 /tmp/tmp3umr3jmo... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 1 is valid (RSA). 2 valid signature block(s) already present in the signature sector. 1 signing key(s) found. Signed 32768 bytes of data from "/tmp/tmp3umr3jmo". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /tmp/tmpc5ad3_o0... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem /tmp/tmpc5ad3_o0... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 verification successful using the supplied key (RSA). Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key3.pem /tmp/tmpc5ad3_o0... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 verification successful using the supplied key (RSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_append_signatures_multiple_steps[ecdsa256] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem --output /tmp/tmplnjogdvr /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa256.bin... espsecure v5.3.1 Signature block 0 is valid (ECDSA). 1 valid signature block(s) already present in the signature sector. 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa256.bin". Signature sector now has 2 signature blocks. Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key3.pem --output /tmp/tmps0lqm0fa /tmp/tmplnjogdvr... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 1 is valid (ECDSA). 2 valid signature block(s) already present in the signature sector. 1 signing key(s) found. Signed 32768 bytes of data from "/tmp/tmplnjogdvr". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /tmp/tmps0lqm0fa... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /tmp/tmps0lqm0fa... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key3.pem /tmp/tmps0lqm0fa... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_append_signatures_multiple_steps[ecdsa384] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem --output /tmp/tmpfqxf43xv /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa384.bin... espsecure v5.3.1 Signature block 0 is valid (ECDSA). 1 valid signature block(s) already present in the signature sector. 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa384.bin". Signature sector now has 2 signature blocks. Executing /usr/bin/python3 -m espsecure sign-data --version 2 --append-signatures --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key3.pem --output /tmp/tmpeu74__8b /tmp/tmpfqxf43xv... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 1 is valid (ECDSA). 2 valid signature block(s) already present in the signature sector. 1 signing key(s) found. Signed 32768 bytes of data from "/tmp/tmpfqxf43xv". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /tmp/tmpeu74__8b... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem /tmp/tmpeu74__8b... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key3.pem /tmp/tmpeu74__8b... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_with_pre_calculated_signature[rsa] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey.pem --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_rsa.bin --output /tmp/tmp_wpt_aze /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 Pre-calculated signatures found... 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey.pem /tmp/tmp_wpt_aze... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_with_pre_calculated_signature[ecdsa256] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_ecdsa256.bin --output /tmp/tmps7sutrdl /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 Pre-calculated signatures found... 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem /tmp/tmps7sutrdl... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_with_pre_calculated_signature[ecdsa384] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey.pem --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_ecdsa384.bin --output /tmp/tmpt3x83n64 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 Pre-calculated signatures found... 1 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 1 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey.pem /tmp/tmpt3x83n64... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_sign_v2_with_multiple_pre_calculated_signatures[rsa] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey.pem --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey.pem --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey.pem --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_rsa.bin --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_rsa.bin --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_rsa.bin --output /tmp/tmp8st6s9z8 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 Pre-calculated signatures found... 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey.pem /tmp/tmp8st6s9z8... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 is valid (RSA). Signature block 1 verification successful using the supplied key (RSA). Signature block 2 is valid (RSA). Signature block 2 verification successful using the supplied key (RSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_with_multiple_pre_calculated_signatures[ecdsa256] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_ecdsa256.bin --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_ecdsa256.bin --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_ecdsa256.bin --output /tmp/tmpn3ibrpio /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 Pre-calculated signatures found... 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem /tmp/tmpn3ibrpio... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). PASSED test/test_espsecure.py::TestSigning::test_sign_v2_with_multiple_pre_calculated_signatures[ecdsa384] Executing /usr/bin/python3 -m espsecure sign-data --version 2 --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey.pem --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey.pem --pub-key /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey.pem --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_ecdsa384.bin --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_ecdsa384.bin --signature /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/pre_calculated_bootloader_signature_ecdsa384.bin --output /tmp/tmpfrw64iz8 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin... espsecure v5.3.1 Pre-calculated signatures found... 3 signing key(s) found. Signed 32768 bytes of data from "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_unsigned_v2.bin". Signature sector now has 3 signature blocks. Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey.pem /tmp/tmpfrw64iz8... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 is valid (ECDSA). Signature block 1 verification successful using the supplied key (ECDSA). Signature block 2 is valid (ECDSA). Signature block 2 verification successful using the supplied key (ECDSA). PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_key[v1_pem] Executing /usr/bin/python3 -m espsecure verify-signature --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed.bin... espsecure v5.3.1 Verifying 21696 bytes of data... Signature is valid. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_key[v1_raw] Executing /usr/bin/python3 -m espsecure verify-signature --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey_raw.bin /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed.bin... espsecure v5.3.1 Verifying 21696 bytes of data... Signature is valid. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_key[v2_rsa] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_rsa.bin... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_key[v2_ecdsa384] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa384.bin... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_key[v2_ecdsa256] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa256.bin... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_key_v1 Executing /usr/bin/python3 -m espsecure verify-signature --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed.bin... A fatal error occurred: Signature is not valid. espsecure v5.3.1 Verifying 21696 bytes of data... PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_key_v2[rsa] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_rsa.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_key_v2[ecdsa256] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa256.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_key_v2[ecdsa384] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa384.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_scheme Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed.bin... A fatal error occurred: Invalid datafile. Data size should be non-zero & a multiple of 4096. espsecure v5.3.1 PASSED test/test_espsecure.py::TestSigning::test_verify_signature_multi_signed_wrong_key[rsa] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_key4.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_multi_signed_v2_rsa.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_verify_signature_multi_signed_wrong_key[ecdsa256] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key4.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_multi_signed_v2_ecdsa256.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_verify_signature_multi_signed_wrong_key[ecdsa384] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_key4.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_multi_signed_v2_ecdsa384.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_pubkey[v1] Executing /usr/bin/python3 -m espsecure verify-signature --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed.bin... espsecure v5.3.1 Verifying 21696 bytes of data... Signature is valid. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_pubkey[v2_rsa] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_rsa.bin... espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 verification successful using the supplied key (RSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_pubkey[v2_ecdsa384] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa384.bin... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_correct_pubkey[v2_ecdsa256] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa256.bin... espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 verification successful using the supplied key (ECDSA). Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_pubkey_v1 Executing /usr/bin/python3 -m espsecure verify-signature --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed.bin... A fatal error occurred: Signature is not valid. espsecure v5.3.1 Verifying 21696 bytes of data... PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_pubkey_v2[rsa] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_rsa.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_pubkey_v2[ecdsa256] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa256.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_wrong_pubkey_v2[ecdsa384] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey2.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed_v2_ecdsa384.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 invalid. Skipping. Signature block 2 invalid. Skipping. PASSED test/test_espsecure.py::TestSigning::test_verify_signature_multi_signed_wrong_pubkey[rsa] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/rsa_secure_boot_signing_pubkey4.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_multi_signed_v2_rsa.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (RSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (RSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (RSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_verify_signature_multi_signed_wrong_pubkey[ecdsa256] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_pubkey4.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_multi_signed_v2_ecdsa256.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_verify_signature_multi_signed_wrong_pubkey[ecdsa384] Executing /usr/bin/python3 -m espsecure verify-signature --version 2 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa384_secure_boot_signing_pubkey4.pem /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_multi_signed_v2_ecdsa384.bin... A fatal error occurred: Checked all blocks. Signature could not be verified with the provided key. espsecure v5.3.1 Signature block 0 is valid (ECDSA). Signature block 0 is not signed by the supplied key. Checking the next block... Signature block 1 is valid (ECDSA). Signature block 1 is not signed by the supplied key. Checking the next block... Signature block 2 is valid (ECDSA). Signature block 2 is not signed by the supplied key. Checking the next block... PASSED test/test_espsecure.py::TestSigning::test_extract_binary_public_key Executing /usr/bin/python3 -m espsecure extract-public-key --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /tmp/tmpq0z_1w5s/pubkey1.bin... espsecure v5.3.1 "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem" public key extracted to "/tmp/tmpq0z_1w5s/pubkey1.bin". Executing /usr/bin/python3 -m espsecure extract-public-key --version 1 --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem /tmp/tmpq0z_1w5s/pubkey2.bin... espsecure v5.3.1 "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key2.pem" public key extracted to "/tmp/tmpq0z_1w5s/pubkey2.bin". Executing /usr/bin/python3 -m espsecure verify-signature --version 1 --keyfile /tmp/tmpq0z_1w5s/pubkey1.bin /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed.bin... espsecure v5.3.1 Verifying 21696 bytes of data... Signature is valid. Executing /usr/bin/python3 -m espsecure verify-signature --version 1 --keyfile /tmp/tmpq0z_1w5s/pubkey2.bin /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader_signed.bin... A fatal error occurred: Signature is not valid. espsecure v5.3.1 Verifying 21696 bytes of data... PASSED test/test_espsecure.py::TestSigning::test_generate_and_extract_key_v2[rsa3072] Executing /usr/bin/python3 -m espsecure generate-signing-key --version 2 --scheme rsa3072 /tmp/tmpoa79hekw/key.pem... espsecure v5.3.1 RSA 3072 private key in PEM format written to "/tmp/tmpoa79hekw/key.pem". Executing /usr/bin/python3 -m espsecure extract-public-key --version 2 --keyfile /tmp/tmpoa79hekw/key.pem /tmp/tmpoa79hekw/pubkey.pem... espsecure v5.3.1 "/tmp/tmpoa79hekw/key.pem" public key extracted to "/tmp/tmpoa79hekw/pubkey.pem". PASSED test/test_espsecure.py::TestSigning::test_generate_and_extract_key_v2[ecdsa256] Executing /usr/bin/python3 -m espsecure generate-signing-key --version 2 --scheme ecdsa256 /tmp/tmp8z2bbnez/key.pem... espsecure v5.3.1 ECDSA NIST256p private key in PEM format written to "/tmp/tmp8z2bbnez/key.pem". Executing /usr/bin/python3 -m espsecure extract-public-key --version 2 --keyfile /tmp/tmp8z2bbnez/key.pem /tmp/tmp8z2bbnez/pubkey.pem... espsecure v5.3.1 "/tmp/tmp8z2bbnez/key.pem" public key extracted to "/tmp/tmp8z2bbnez/pubkey.pem". PASSED test/test_espsecure.py::TestSigning::test_generate_and_extract_key_v2[ecdsa384] Executing /usr/bin/python3 -m espsecure generate-signing-key --version 2 --scheme ecdsa384 /tmp/tmpeq22hhc1/key.pem... espsecure v5.3.1 ECDSA NIST384p private key in PEM format written to "/tmp/tmpeq22hhc1/key.pem". Executing /usr/bin/python3 -m espsecure extract-public-key --version 2 --keyfile /tmp/tmpeq22hhc1/key.pem /tmp/tmpeq22hhc1/pubkey.pem... espsecure v5.3.1 "/tmp/tmpeq22hhc1/key.pem" public key extracted to "/tmp/tmpeq22hhc1/pubkey.pem". PASSED test/test_espsecure.py::TestESP32FlashEncryption::test_encrypt_decrypt_bootloader Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpqqs2l7nj/ciphertext.bin --address 4096 --flash-crypt-conf 15 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpqqs2l7nj/plaintext.bin --address 4096 --flash-crypt-conf 15 /tmp/tmpqqs2l7nj/ciphertext.bin... espsecure v5.3.1 Using 256-bit key. PASSED test/test_espsecure.py::TestESP32FlashEncryption::test_encrypt_decrypt_app Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ef-flashencryption-key.bin --output /tmp/tmpnmhr9zt0/ciphertext.bin --address 131072 --flash-crypt-conf 15 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/hello-world-signed.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ef-flashencryption-key.bin --output /tmp/tmpnmhr9zt0/plaintext.bin --address 131072 --flash-crypt-conf 15 /tmp/tmpnmhr9zt0/ciphertext.bin... espsecure v5.3.1 Using 256-bit key. PASSED test/test_espsecure.py::TestESP32FlashEncryption::test_encrypt_decrypt_non_default_conf Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpovh3_qgm/ciphertext.bin --address 4096 --flash-crypt-conf 0 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Using 256-bit key. Warning: Setting FLASH_CRYPT_CONF to zero is not recommended. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpovh3_qgm/plaintext.bin --address 4096 --flash-crypt-conf 0 /tmp/tmpovh3_qgm/ciphertext.bin... espsecure v5.3.1 Using 256-bit key. Warning: Setting FLASH_CRYPT_CONF to zero is not recommended. Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpiav30nv7/ciphertext.bin --address 4096 --flash-crypt-conf 3 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpiav30nv7/plaintext.bin --address 4096 --flash-crypt-conf 3 /tmp/tmpiav30nv7/ciphertext.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmp_by80mib/ciphertext.bin --address 4096 --flash-crypt-conf 9 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmp_by80mib/plaintext.bin --address 4096 --flash-crypt-conf 9 /tmp/tmp_by80mib/ciphertext.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpiwdtbo1m/ciphertext.bin --address 4096 --flash-crypt-conf 12 /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpiwdtbo1m/plaintext.bin --address 4096 --flash-crypt-conf 12 /tmp/tmpiwdtbo1m/ciphertext.bin... espsecure v5.3.1 Using 256-bit key. PASSED test/test_espsecure.py::TestAesXtsFlashEncryption::test_encrypt_decrypt_bootloader Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpl6b03e8g/ciphertext.bin --address 4096 --flash-crypt-conf 15 --aes-xts /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/bootloader.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/256bit_key.bin --output /tmp/tmpl6b03e8g/plaintext.bin --address 4096 --flash-crypt-conf 15 --aes-xts /tmp/tmpl6b03e8g/ciphertext.bin... espsecure v5.3.1 Using 256-bit key. PASSED test/test_espsecure.py::TestAesXtsFlashEncryption::test_encrypt_decrypt_app Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ef-flashencryption-key.bin --output /tmp/tmp4xsj1dyl/ciphertext.bin --address 131072 --flash-crypt-conf 15 --aes-xts /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/hello-world-signed.bin... espsecure v5.3.1 Using 256-bit key. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ef-flashencryption-key.bin --output /tmp/tmp4xsj1dyl/plaintext.bin --address 131072 --flash-crypt-conf 15 --aes-xts /tmp/tmp4xsj1dyl/ciphertext.bin... espsecure v5.3.1 Using 256-bit key. PASSED test/test_espsecure.py::TestAesXtsFlashEncryption::test_encrypt_decrypt_app_512_bit_key Executing /usr/bin/python3 -m espsecure encrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/512bit_key.bin --output /tmp/tmpd8n3nsa4/ciphertext.bin --address 65536 --flash-crypt-conf 15 --aes-xts /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/hello-world-signed.bin... espsecure v5.3.1 Using 512-bit key. Executing /usr/bin/python3 -m espsecure decrypt-flash-data --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/512bit_key.bin --output /tmp/tmpd8n3nsa4/plaintext.bin --address 65536 --flash-crypt-conf 15 --aes-xts /tmp/tmpd8n3nsa4/ciphertext.bin... espsecure v5.3.1 Using 512-bit key. PASSED test/test_espsecure.py::TestAesXtsFlashEncryption::test_padding Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. Using 256-bit key. PASSED test/test_espsecure.py::TestDigest::test_digest_private_key Executing /usr/bin/python3 -m espsecure digest-private-key --keyfile /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem /tmp/tmpfywzcww_... espsecure v5.3.1 SHA-256 digest of private key "/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/secure_images/ecdsa256_secure_boot_signing_key.pem" written to "/tmp/tmpfywzcww_". PASSED test/test_espsecure.py::TestDigest::test_digest_private_key_with_invalid_output PASSED test/test_esptool.py::TestFlashing::test_write_overlap ************************************************** Running the "write-flash 0x0 images/bootloader_esp32.bin 0x1000 images/one_kb.bin" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 write-flash 0x0 images/bootloader_esp32.bin 0x1000 images/one_kb.bin... Usage: python -m esptool write-flash [OPTIONS]
... Try 'python -m esptool write-flash -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for '
...': Detected overlap at address: 0x1000 for file: images/one_kb.bin. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ esptool v5.3.1 PASSED test/test_esptool.py::TestFlashing::test_repeated_address Running the "write-flash 0x0 images/one_kb.bin 0x0 images/one_kb.bin" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 write-flash 0x0 images/one_kb.bin 0x0 images/one_kb.bin... Usage: python -m esptool write-flash [OPTIONS]
... Try 'python -m esptool write-flash -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for '
...': Detected overlap at address: 0x0 for file: images/one_kb.bin. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ esptool v5.3.1 PASSED test/test_esptool.py::TestFlashing::test_write_sector_overlap Running the "write-flash 0xd00 images/one_kb.bin 0x1d00 images/one_kb.bin" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 write-flash 0xd00 images/one_kb.bin 0x1d00 images/one_kb.bin... Usage: python -m esptool write-flash [OPTIONS]
... Try 'python -m esptool write-flash -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for '
...': Detected overlap at address: 0x1d00 for file: images/one_kb.bin. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ esptool v5.3.1 PASSED test/test_esptool.py::TestFlashing::test_write_flash_production_plaintext_guard Configuring flash size... Warning: Security features enabled, so not changing any flash settings. Configuring flash size... Warning: Security features enabled, so not changing any flash settings. Configuring flash size... Warning: Security features enabled, so not changing any flash settings. PASSED test/test_esptool.py::TestFlashSizes::test_invalid_size_arg ************************************************** Running the "write-flash -fs 10MB 0x6000 images/one_kb.bin" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 write-flash -fs 10MB 0x6000 images/one_kb.bin... Usage: python -m esptool write-flash [OPTIONS]
... Try 'python -m esptool write-flash -h' for help ╭─ Error ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ Invalid value for '--flash-size' / '-fs': '10MB' is not one of 'detect', 'keep', '256KB', '512KB', '1MB', '2MB', │ │ '2MB-c1', '4MB', '4MB-c1', '8MB', '16MB', '32MB', '64MB', '128MB'. │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ esptool v5.3.1 PASSED test/test_esptool.py::TestVirtualPort::test_pty_port ************************************************** esptool v5.3.1 Serial port /dev/pts/0: Connecting... Failed to get VID/PID of a device on /dev/pts/0, using standard reset sequence. Failed to get VID/PID of a device on /dev/pts/0, using standard reset sequence. Warning: Chip was NOT reset. Setting RTS/DTR lines is not supported for port '/dev/pts/0'. Set --before and --after arguments to 'no-reset' and switch to bootloader manually to avoid this warning. ................................... A fatal error occurred: Failed to connect to Espressif device: No serial data received. For troubleshooting steps visit: https://docs.espressif.com/projects/esptool/en/latest/troubleshooting.html PASSED test/test_esptool.py::TestConfigFile::test_load_config_file ************************************************** Running the "version" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 version... esptool v5.3.1 Loaded custom configuration from /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/esptool.cfg 5.3.1 Running the "version" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 version... esptool v5.3.1 5.3.1 Running the "version" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 version... esptool v5.3.1 Note: Ignoring invalid config file /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/esptool.cfg: While reading from '/builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/esptool.cfg' [line 3]: option 'connect_attempts' in section 'esptool' already exists 5.3.1 Running the "version" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 version... esptool v5.3.1 Note: Ignoring unknown config file options: bits, timoout Loaded custom configuration from /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/esptool.cfg 5.3.1 Running the "version" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 version... esptool v5.3.1 Loaded custom configuration from /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/tox.ini 5.3.1 PASSED test/test_esptool.py::TestConfigFile::test_load_config_file_with_env_var Running the "version" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 version... esptool v5.3.1 5.3.1 Running the "version" command... Executing /usr/bin/python3 -m esptool --chip esp32 --port /dev/ttyUSB0 --baud 115200 version... esptool v5.3.1 Loaded custom configuration from /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/custom_file.ini (set with ESPTOOL_CFGFILE) 5.3.1 PASSED test/test_esptool.py::TestESPObjectOperations::test_non_esp_operations ************************************************** PASSED test/test_esptool.py::TestOldScripts::test_esptool_py PASSED test/test_esptool.py::TestOldScripts::test_espefuse_py PASSED test/test_esptool.py::TestOldScripts::test_espsecure_py PASSED test/test_esptool.py::TestOldScripts::test_esp_rfc2217_server_py PASSED test/test_esptool.py::TestPortFilter::test_port_filter_name ************************************************** Running the "--port-filter name=NonExistentChip flash-id" command... Executing /usr/bin/python3 -m esptool --chip esp32 --baud 115200 --port-filter name=NonExistentChip flash-id... esptool v5.3.1 Found 0 serial ports... A fatal error occurred: Could not connect to an Espressif device on any of the 0 available serial ports. PASSED test/test_esptool.py::TestPortFilter::test_port_filter_invalid_key_error Running the "--port-filter invalidkey=123 flash-id" command... Executing /usr/bin/python3 -m esptool --chip esp32 --baud 115200 --port-filter invalidkey=123 flash-id... A fatal error occurred: Option --port-filter argument key not recognized. esptool v5.3.1 PASSED test/test_esptool.py::TestPortFilter::test_port_filter_missing_equal_sign Running the "--port-filter name123 flash-id" command... Executing /usr/bin/python3 -m esptool --chip esp32 --baud 115200 --port-filter name123 flash-id... A fatal error occurred: Option --port-filter argument must consist of key=value. esptool v5.3.1 PASSED test/test_esptool.py::TestSlipReaderRead::test_read_on_exhausted_slip_reader_raises_fatalerror PASSED test/test_esptool.py::TestSlipReaderRead::test_read_does_not_leak_stopiteration_through_generator PASSED test/test_esptool.py::TestSlipReaderRead::test_run_stub_failure_links_troubleshooting_guide_once Uploading stub flasher... Running stub flasher... PASSED test/test_image_info.py::TestImageInfo::test_esp32c3 Executing /usr/bin/python3 -m esptool --chip esp32c3 image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/bootloader_esp32c3.bin esptool v5.3.1 Image size: 17744 bytes ESP32-C3 Image Header ===================== Image version: 1 Entry point: 0x403c0000 Segments: 4 Flash size: 2MB Flash freq: 40m Flash mode: DIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00014 0x3fcd6100 0x00000018 DRAM, BYTE_ACCESSIBLE 1 0x01864 0x3fcd6114 0x00000034 DRAM, BYTE_ACCESSIBLE 2 0x00de4 0x403c0000 0x000018a0 IRAM 3 0x01e8c 0x403c2000 0x0000268c IRAM ESP32-C3 Image Footer ===================== Checksum: 0x77 (valid) Validation hash: 4faeab1bd3fd6a7d4adfa0fd38f41bfc67a8c3c0a9d6d882b65580da2e5e6347 (valid) PASSED test/test_image_info.py::TestImageInfo::test_esp8266 Executing /usr/bin/python3 -m esptool --chip esp8266 image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/not_4_byte_aligned.bin esptool v5.3.1 Image size: 53 bytes ESP8266 Image Header ==================== Image version: 1 Entry point: 0x40101844 Segments: 1 Flash size: 512KB Flash freq: 40m Flash mode: QIO Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00014 0x40100000 0x00000008 IRAM ESP8266 Image Footer ==================== Checksum: 0x6b (valid) PASSED test/test_image_info.py::TestImageInfo::test_image_type_detection Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/not_4_byte_aligned.bin esptool v5.3.1 Image size: 53 bytes Detected image type: ESP8266 ESP8266 Image Header ==================== Image version: 1 Entry point: 0x40101844 Segments: 1 Flash size: 512KB Flash freq: 40m Flash mode: QIO Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00014 0x40100000 0x00000008 IRAM ESP8266 Image Footer ==================== Checksum: 0x6b (valid) Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/esp8266_deepsleep.bin esptool v5.3.1 Image size: 297632 bytes Detected image type: ESP8266 ESP8266 Image Header ==================== Image version: 1 Entry point: 0x4010f29c Segments: 1 Flash size: 4MB Flash freq: 40m Flash mode: DIO Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00568 0x4010f000 0x00000008 ESP8266 Image Footer ==================== Checksum: 0x2d (valid) Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/bootloader_esp32.bin esptool v5.3.1 Image size: 7888 bytes Detected image type: ESP32 ESP32 Image Header ================== Image version: 1 Entry point: 0x4009816c Segments: 4 Flash size: 2MB Flash freq: 40m Flash mode: DIO ESP32 Extended Image Header =========================== WP pin: 0x0 Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00000 0x3ffc0000 0x00000018 BYTE_ACCESSIBLE, DRAM 1 0x00b3c 0x3ffc0000 0x00000020 BYTE_ACCESSIBLE, DRAM 2 0x01068 0x40078000 0x00000b64 CACHE_APP 3 0x002e4 0x40098000 0x00001bd4 IRAM ESP32 Image Footer ================== Checksum: 0x83 (valid) Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/ram_helloworld/helloworld-esp32_edit.bin esptool v5.3.1 Image size: 128 bytes Detected image type: ESP32 ESP32 Image Header ================== Image version: 1 Entry point: 0x4008c008 Segments: 2 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00010 0x3ffc0000 0x00000018 BYTE_ACCESSIBLE, DRAM 1 0x00018 0x4008c000 0x00000030 IRAM ESP32 Image Footer ================== Checksum: 0x14 (valid) Validation hash: 8ff3e6430a3ea49ec072aff7b73fe7b881ff47b8f619936385938d4bfb3a9ba9 (invalid) Executing /usr/bin/python3 -m esptool --chip esp32 image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/bootloader_esp32.bin esptool v5.3.1 Image size: 7888 bytes ESP32 Image Header ================== Image version: 1 Entry point: 0x4009816c Segments: 4 Flash size: 2MB Flash freq: 40m Flash mode: DIO ESP32 Extended Image Header =========================== WP pin: 0x0 Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00000 0x3ffc0000 0x00000018 BYTE_ACCESSIBLE, DRAM 1 0x00b3c 0x3ffc0000 0x00000020 BYTE_ACCESSIBLE, DRAM 2 0x01068 0x40078000 0x00000b64 CACHE_APP 3 0x002e4 0x40098000 0x00001bd4 IRAM ESP32 Image Footer ================== Checksum: 0x83 (valid) Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/bootloader_esp32c3.bin esptool v5.3.1 Image size: 17744 bytes Detected image type: ESP32-C3 ESP32-C3 Image Header ===================== Image version: 1 Entry point: 0x403c0000 Segments: 4 Flash size: 2MB Flash freq: 40m Flash mode: DIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00014 0x3fcd6100 0x00000018 DRAM, BYTE_ACCESSIBLE 1 0x01864 0x3fcd6114 0x00000034 DRAM, BYTE_ACCESSIBLE 2 0x00de4 0x403c0000 0x000018a0 IRAM 3 0x01e8c 0x403c2000 0x0000268c IRAM ESP32-C3 Image Footer ===================== Checksum: 0x77 (valid) Validation hash: 4faeab1bd3fd6a7d4adfa0fd38f41bfc67a8c3c0a9d6d882b65580da2e5e6347 (valid) Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/esp32s3_header.bin esptool v5.3.1 Image size: 48 bytes Detected image type: ESP32-S3 ESP32-S3 Image Header ===================== Image version: 1 Entry point: 0xdeadbeef Segments: 1 Flash size: 2MB Flash freq: 40m Flash mode: DIO ESP32-S3 Extended Image Header ============================== WP pin: 0x0 Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 9 (ESP32-S3) Minimal chip revision: v0.0, (legacy min_rev = 10) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00000 0xdeadbeef 0x00000018 ESP32-S3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_image_info.py::TestImageInfo::test_invalid_image_type_detection PASSED test/test_image_info.py::TestImageInfo::test_application_info Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/esp_idf_blink_esp32s2.bin esptool v5.3.1 Image size: 182368 bytes Detected image type: ESP32-S2 ESP32-S2 Image Header ===================== Image version: 1 Entry point: 0x40022f84 Segments: 6 Flash size: 2MB Flash freq: 80m Flash mode: DIO ESP32-S2 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 2 (ESP32-S2) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x08c18 0x3f000020 0x00000018 DROM 1 0x0204c 0x3ffbde90 0x00008c38 BYTE_ACCESSIBLE, MEM_INTERNAL, DRAM 2 0x05384 0x40022000 0x0000ac8c MEM_INTERNAL, IRAM 3 0x15ce8 0x40080020 0x00010018 IROM 4 0x06b0c 0x40027384 0x00025d08 MEM_INTERNAL, IRAM 5 0x00010 0x50000000 0x0002c81c RTC_DATA ESP32-S2 Image Footer ===================== Checksum: 0x18 (valid) Validation hash: 10f48f4a71a48cc4c917d70d13bf717b1bc7f3187b3d564b00192f7e381531b7 (valid) Application Information ======================= Project name: blink App version: qa-test-v5.0-20220830-4-g4532e6 Compile time: Sep 13 2022 19:46:07 ELF file SHA256: 3059e6b55a965865febd28fa9f6028ad5cd0dab311febb0a3ea79eaa223ac2b0 ESP-IDF: v5.0-beta1-427-g4532e6e0b2-dirt Minimal eFuse block revision: 0.0 Maximal eFuse block revision: 0.0 Secure version: 0 Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/bootloader_esp32.bin esptool v5.3.1 Image size: 7888 bytes Detected image type: ESP32 ESP32 Image Header ================== Image version: 1 Entry point: 0x4009816c Segments: 4 Flash size: 2MB Flash freq: 40m Flash mode: DIO ESP32 Extended Image Header =========================== WP pin: 0x0 Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00000 0x3ffc0000 0x00000018 BYTE_ACCESSIBLE, DRAM 1 0x00b3c 0x3ffc0000 0x00000020 BYTE_ACCESSIBLE, DRAM 2 0x01068 0x40078000 0x00000b64 CACHE_APP 3 0x002e4 0x40098000 0x00001bd4 IRAM ESP32 Image Footer ================== Checksum: 0x83 (valid) Executing /usr/bin/python3 -m esptool --chip auto image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/not_4_byte_aligned.bin esptool v5.3.1 Image size: 53 bytes Detected image type: ESP8266 ESP8266 Image Header ==================== Image version: 1 Entry point: 0x40101844 Segments: 1 Flash size: 512KB Flash freq: 40m Flash mode: QIO Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00014 0x40100000 0x00000008 IRAM ESP8266 Image Footer ==================== Checksum: 0x6b (valid) PASSED test/test_image_info.py::TestImageInfo::test_bootloader_info Executing /usr/bin/python3 -m esptool --chip esp32 image-info /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/images/bootloader_esp32_v5_2.bin esptool v5.3.1 Image size: 26768 bytes ESP32 Image Header ================== Image version: 1 Entry point: 0x40080650 Segments: 4 Flash size: 2MB Flash freq: 40m Flash mode: DOUT ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v3.99 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x01bdc 0x3fff0030 0x00000018 BYTE_ACCESSIBLE, DRAM, DIRAM_DRAM 1 0x03d20 0x40078000 0x00001bfc CACHE_APP 2 0x00004 0x40080400 0x00005924 IRAM 3 0x00f2c 0x40080404 0x00005930 IRAM ESP32 Image Footer ================== Checksum: 0xbe (valid) Validation hash: 10cec8cf739f34fb0473993b3cb0e3bd78402d6a7cc5b1cb5e1add2b1105f8ac (valid) Bootloader Information ====================== Bootloader version: 1 ESP-IDF: v5.2-dev-254-g1950b15 Compile time: Apr 25 2023 00:13:32 PASSED test/test_image_info.py::TestImageInfo::test_intel_hex Executing /usr/bin/python3 -m esptool --chip esp32c3 image-info /tmp/tmpe7je_4n5.hex esptool v5.3.1 Merged binary image detected. Processing each file individually. =================================================== Processing file 1/2, offset: 0x0, size: 17744 bytes =================================================== ESP32-C3 Image Header ===================== Image version: 1 Entry point: 0x403c0000 Segments: 4 Flash size: 2MB Flash freq: 40m Flash mode: DIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v0.0 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00014 0x3fcd6100 0x00000018 DRAM, BYTE_ACCESSIBLE 1 0x01864 0x3fcd6114 0x00000034 DRAM, BYTE_ACCESSIBLE 2 0x00de4 0x403c0000 0x000018a0 IRAM 3 0x01e8c 0x403c2000 0x0000268c IRAM ESP32-C3 Image Footer ===================== Checksum: 0x77 (valid) Validation hash: 4faeab1bd3fd6a7d4adfa0fd38f41bfc67a8c3c0a9d6d882b65580da2e5e6347 (valid) =================================================== Processing file 2/2, offset: 0x8000, size: 48 bytes =================================================== ESP32-C3 Image Header ===================== Image version: 1 Entry point: 0xdeadbeef Segments: 1 Flash size: 2MB Flash freq: 40m Flash mode: DIO ESP32-C3 Extended Image Header ============================== WP pin: 0x0 Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v2.55, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00000 0xdeadbeef 0x00000018 ESP32-C3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestESP8266V1Image::test_irom_bin Executing /usr/bin/python3 -m esptool --chip esp8266 elf2image --version 1 esp8266-nonosssdk20-iotdemo.elf esptool v5.3.1 Creating ESP8266 image... Merged 1 ELF section. Successfully created ESP8266 image. PASSED test/test_imagegen.py::TestESP8266V1Image::test_loaded_sections comparing seg 0x3ffe8000 sec 0x3ffe8000 len 0xba0 comparing seg 0x40100000 sec 0x3ffe8ba0 len 0x0 comparing seg 0x3ffe8000 sec 0x40100000 len 0x758c comparing seg 0x40100000 sec 0x40100000 len 0x758c comparing seg 0x3ffe8000 sec 0x3ffe8ba0 len 0xe10 comparing seg 0x40100000 sec 0x3ffe8ba0 len 0xe10 PASSED test/test_imagegen.py::TestESP8266V12SectionHeaderNotAtEnd::test_elf_section_header_not_at_end Executing /usr/bin/python3 -m esptool --chip esp8266 elf2image esp8266-nonossdkv12-example.elf esptool v5.3.1 Creating ESP8266 image... Successfully created ESP8266 image. comparing seg 0x3ffe8000 sec 0x3ffe8000 len 0x548 comparing seg 0x3ffe8550 sec 0x3ffe8548 len 0x0 comparing seg 0x40100000 sec 0x3ffe8548 len 0x0 comparing seg 0x3ffe8000 sec 0x40100000 len 0x63f2 comparing seg 0x3ffe8550 sec 0x40100000 len 0x63f2 comparing seg 0x40100000 sec 0x40100000 len 0x63f2 comparing seg 0x3ffe8000 sec 0x3ffe8550 len 0x4fc comparing seg 0x3ffe8550 sec 0x3ffe8550 len 0x4fc comparing seg 0x40100000 sec 0x3ffe8a4c len 0x0 PASSED test/test_imagegen.py::TestESP8266V2Image::test_nonossdkimage Executing /usr/bin/python3 -m esptool --chip esp8266 elf2image --version 2 esp8266-nonossdkv20-at-v2.elf esptool v5.3.1 Creating ESP8266 image... Successfully created ESP8266 image. In test_elf2image 4 comparing seg 0x0 sec 0x3ffe8000 len 0x86c comparing seg 0x3ffe8000 sec 0x3ffe8000 len 0x86c comparing seg 0x3ffe8870 sec 0x3ffe886c len 0x0 comparing seg 0x40100000 sec 0x3ffe886c len 0x0 comparing seg 0x0 sec 0x40100000 len 0x7a57 comparing seg 0x3ffe8000 sec 0x40100000 len 0x7a57 comparing seg 0x3ffe8870 sec 0x40100000 len 0x7a57 comparing seg 0x40100000 sec 0x40100000 len 0x7a57 comparing seg 0x0 sec 0x3ffe8870 len 0x2184 comparing seg 0x3ffe8000 sec 0x3ffe8870 len 0x2184 comparing seg 0x3ffe8870 sec 0x3ffe8870 len 0x2184 comparing seg 0x40100000 sec 0x3ffea9f4 len 0x0 esptool v5.3.1 Image size: 418852 bytes ESP8266 Image Header ==================== Image version: 2 Entry point: 0x40100004 Segments: 4 Flash size: 1MB Flash freq: 40m Flash mode: QIO Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x5bfa0 0x00000000 0x00000008 1 0x0086c 0x3ffe8000 0x0005bfb8 DRAM 2 0x02184 0x3ffe8870 0x0005c82c DRAM 3 0x07a58 0x40100000 0x0005e9b8 IRAM ESP8266 Image Footer ==================== Checksum: 0x54 (valid) PASSED test/test_imagegen.py::TestESP8266V2Image::test_espopenrtosimage Executing /usr/bin/python3 -m esptool --chip esp8266 elf2image --version 2 esp8266-openrtos-blink-v2.elf esptool v5.3.1 Creating ESP8266 image... Merged 1 ELF section. Successfully created ESP8266 image. In test_elf2image 3 comparing seg 0x0 sec 0x3ffe8000 len 0x886 comparing seg 0x3ffe8000 sec 0x3ffe8000 len 0x886 comparing seg 0x40100000 sec 0x3ffe8886 len 0x0 comparing seg 0x0 sec 0x40100000 len 0x75a5 comparing seg 0x3ffe8000 sec 0x40100000 len 0x75a5 comparing seg 0x40100000 sec 0x40100000 len 0x75a5 comparing seg 0x0 sec 0x3ffe8888 len 0x7af comparing seg 0x3ffe8000 sec 0x3ffe8888 len 0x7af comparing seg 0x40100000 sec 0x3ffe8888 len 0x7af esptool v5.3.1 Image size: 233028 bytes ESP8266 Image Header ==================== Image version: 2 Entry point: 0x40100214 Segments: 3 Flash size: 1MB Flash freq: 40m Flash mode: QIO Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x30830 0x00000000 0x00000008 1 0x075a8 0x40100000 0x00030848 IRAM 2 0x01038 0x3ffe8000 0x00037df8 DRAM ESP8266 Image Footer ==================== Checksum: 0x01 (valid) PASSED test/test_imagegen.py::TestESP32Image::test_bootloader Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-bootloader.elf esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. esptool v5.3.1 Image size: 4240 bytes ESP32 Image Header ================== Image version: 1 Entry point: 0x40098118 Segments: 3 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00398 0x3ffc0000 0x00000018 BYTE_ACCESSIBLE, DRAM 1 0x00aa4 0x40078000 0x000003b8 CACHE_APP 2 0x001fc 0x40098000 0x00000e64 IRAM ESP32 Image Footer ================== Checksum: 0x11 (valid) Validation hash: b60da00702c1e37aa000993c880a5e3b3e3840521e097ecfef9069fc0d39847a (valid) comparing seg 0x3ffc0000 sec 0x40098000 len 0x1fc comparing seg 0x40078000 sec 0x40098000 len 0x1fc comparing seg 0x40098000 sec 0x40098000 len 0x1fc comparing seg 0x3ffc0000 sec 0x40078000 len 0xaa1 comparing seg 0x40078000 sec 0x40078000 len 0xaa1 comparing seg 0x40098000 sec 0x40078aa1 len 0x0 comparing seg 0x3ffc0000 sec 0x3ffc0000 len 0x398 comparing seg 0x40078000 sec 0x3ffc0398 len 0x0 comparing seg 0x40098000 sec 0x3ffc0398 len 0x0 PASSED test/test_imagegen.py::TestESP32Image::test_app_template Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-app-template.elf esptool v5.3.1 Creating ESP32 image... Merged 1 ELF section. Successfully created ESP32 image. esptool v5.3.1 Image size: 601808 bytes ESP32 Image Header ================== Image version: 1 Entry point: 0x4008167c Segments: 5 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x18c0c 0x3f400020 0x00000018 DROM 1 0x02d8c 0x3ffb0000 0x00018c2c BYTE_ACCESSIBLE, DRAM 2 0x04648 0x40080000 0x0001b9c0 IRAM 3 0x67a90 0x400d0018 0x00020010 IROM 4 0x0b3f0 0x40084648 0x00087aa8 IRAM ESP32 Image Footer ================== Checksum: 0x7c (valid) Validation hash: dd3f0a322c19d184aefffad7ac35610fb63753a3f9e8d4c054a53a6348edc74f (valid) Application Information ======================= Project name: app-template App version: 1cd5752 Compile time: Mar 18 2019 10:47:33 ELF file SHA256: 0000000000000000000000000000000000000000000000000000000000000000 ESP-IDF: v4.0-dev-30-g31ca6e399 Minimal eFuse block revision: 0.0 Maximal eFuse block revision: 0.0 Secure version: 0 comparing seg 0x3f400020 sec 0x40080000 len 0x400 comparing seg 0x3ffb0000 sec 0x40080000 len 0x400 comparing seg 0x40080000 sec 0x40080000 len 0x400 comparing seg 0x40084648 sec 0x40080400 len 0x0 comparing seg 0x400d0018 sec 0x40080400 len 0x0 comparing seg 0x3f400020 sec 0x3ffb0000 len 0x2d8c comparing seg 0x3ffb0000 sec 0x3ffb0000 len 0x2d8c comparing seg 0x40080000 sec 0x3ffb2d8c len 0x0 comparing seg 0x40084648 sec 0x3ffb2d8c len 0x0 comparing seg 0x400d0018 sec 0x3ffb2d8c len 0x0 comparing seg 0x3f400020 sec 0x3f400020 len 0x18c0c comparing seg 0x3ffb0000 sec 0x3f418c2c len 0x0 comparing seg 0x40080000 sec 0x3f418c2c len 0x0 comparing seg 0x40084648 sec 0x3f418c2c len 0x0 comparing seg 0x400d0018 sec 0x3f418c2c len 0x0 comparing seg 0x3f400020 sec 0x400d0018 len 0x67a8e comparing seg 0x3ffb0000 sec 0x400d0018 len 0x67a8e comparing seg 0x40080000 sec 0x400d0018 len 0x67a8e comparing seg 0x40084648 sec 0x400d0018 len 0x67a8e comparing seg 0x400d0018 sec 0x400d0018 len 0x67a8e comparing seg 0x3f400020 sec 0x40080400 len 0xf635 comparing seg 0x3ffb0000 sec 0x40080400 len 0xf635 comparing seg 0x40080000 sec 0x40080400 len 0xf635 comparing seg 0x40084648 sec 0x40080400 len 0xf635 comparing seg 0x400d0018 sec 0x40080400 len 0xf635 PASSED test/test_imagegen.py::TestESP32Image::test_too_many_sections PASSED test/test_imagegen.py::TestESP32Image::test_use_segments Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-zephyr.elf esptool v5.3.1 Creating ESP32 image... Merged 4 ELF sections. Successfully created ESP32 image. esptool v5.3.1 Image size: 17488 bytes ESP32 Image Header ================== Image version: 1 Entry point: 0x400807f8 Segments: 4 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00088 0x3ffb0000 0x00000018 BYTE_ACCESSIBLE, DRAM 1 0x0038c 0x3ffb0088 0x000000a8 BYTE_ACCESSIBLE, DRAM 2 0x00400 0x40080000 0x0000043c IRAM 3 0x03bd4 0x40080400 0x00000844 IRAM ESP32 Image Footer ================== Checksum: 0x36 (valid) Validation hash: 84478627b4fd4e89b63794a1278fbdaeec57437a644e2348530be09818e8d4a8 (valid) Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-zephyr.elf --use-segments esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. esptool v5.3.1 Image size: 17472 bytes ESP32 Image Header ================== Image version: 1 Entry point: 0x400807f8 Segments: 2 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00414 0x3ffb0000 0x00000018 BYTE_ACCESSIBLE, DRAM 1 0x03fd4 0x40080000 0x00000434 IRAM ESP32 Image Footer ================== Checksum: 0x36 (valid) Validation hash: dd7ffae166d37c3b59b56defe2e7af93d836a0b0a467a228ac28e9cc20d2c4c6 (valid) PASSED test/test_imagegen.py::TestESP32Image::test_ram_only_header Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-app-template.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Merged 1 ELF section. Successfully created ESP32 image. esptool v5.3.1 Image size: 687148 bytes ESP32 Image Header ================== Image version: 1 Entry point: 0x4008167c Segments: 2 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x02d8c 0x3ffb0000 0x00000018 BYTE_ACCESSIBLE, DRAM 1 0x0fa38 0x40080000 0x00002dac IRAM ESP32 Image Footer ================== Checksum: 0xf9 (valid) PASSED test/test_imagegen.py::TestESP32Image::test_pad_to_size Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-bootloader.elf esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-bootloader.elf --pad-to-size 1MB esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. PASSED test/test_imagegen.py::TestESP32Image::test_pad_to_size_different_sizes[512KB] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-bootloader.elf --pad-to-size 512KB esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. PASSED test/test_imagegen.py::TestESP32Image::test_pad_to_size_different_sizes[2MB] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-bootloader.elf --pad-to-size 2MB esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. PASSED test/test_imagegen.py::TestESP32Image::test_pad_to_size_different_sizes[4MB] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-bootloader.elf --pad-to-size 4MB esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. PASSED test/test_imagegen.py::TestESP8266FlashHeader::test_2mb Executing /usr/bin/python3 -m esptool --chip esp8266 elf2image --version 2 esp8266-nonossdkv20-at-v2.elf --flash-size 2MB --flash-mode dio esptool v5.3.1 Creating ESP8266 image... Successfully created ESP8266 image. header b'\xea\x04\x020' PASSED test/test_imagegen.py::TestESP32FlashHeader::test_16mb Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-app-template.elf --flash-size 16MB --flash-mode dio --min-rev 1 esptool v5.3.1 Creating ESP32 image... Merged 1 ELF section. Successfully created ESP32 image. PASSED test/test_imagegen.py::TestELFSHA256::test_binary_patched_parameter Executing /usr/bin/python3 -m esptool --chip esp32c6 elf2image esp32c6-appdesc.elf --elf-sha256-offset 0xb0 esptool v5.3.1 Creating ESP32-C6 image... MMU page size not specified, set to 64 KB Successfully created ESP32-C6 image. PASSED test/test_imagegen.py::TestELFSHA256::test_binary_patched Executing /usr/bin/python3 -m esptool --chip esp32c6 elf2image esp32c6-appdesc.elf esptool v5.3.1 Creating ESP32-C6 image... MMU page size not specified, set to 64 KB Successfully created ESP32-C6 image. PASSED test/test_imagegen.py::TestELFSHA256::test_no_overwrite_data PASSED test/test_imagegen.py::TestHashAppend::test_hash_append Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-bootloader.elf -o esp32-bootloader.bin esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-bootloader.elf --dont-append-digest -o esp32-bootloader.bin esptool v5.3.1 Creating ESP32 image... Successfully created ESP32 image. PASSED test/test_imagegen.py::TestELFSectionHandling::test_unknown_section_type_warning Executing /usr/bin/python3 -m esptool --chip esp32c6 elf2image esp32c6-appdesc.elf esptool v5.3.1 Warning: Unknown section type 0x99 in ELF file Creating ESP32-C6 image... Successfully created ESP32-C6 image. PASSED test/test_imagegen.py::TestMMUPageSize::test_appdesc_aligned Executing /usr/bin/python3 -m esptool --chip esp32c6 elf2image esp32c6-appdesc.elf esptool v5.3.1 Creating ESP32-C6 image... MMU page size not specified, set to 64 KB Successfully created ESP32-C6 image. PASSED test/test_imagegen.py::TestMMUPageSize::test_appdesc_not_aligned Executing /usr/bin/python3 -m esptool --chip esp32c6 elf2image esp32c6-appdesc.elf esptool v5.3.1 Creating ESP32-C6 image... Warning: App description segment is not aligned to MMU page size, probably linker script issue or wrong MMU page size. Try to set MMU page size parameter manually. Successfully created ESP32-C6 image. PASSED test/test_imagegen.py::TestMMUPageSize::test_appdesc_data Executing /usr/bin/python3 -m esptool --chip esp32c6 elf2image esp32c6-appdesc.elf esptool v5.3.1 Creating ESP32-C6 image... Successfully created ESP32-C6 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[single_aligned-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-single_aligned.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. esptool v5.3.1 Image size: 69664 bytes ESP32 Image Header ================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3ffae000 0x00000018 BYTE_ACCESSIBLE, DRAM ESP32 Image Footer ================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[single_aligned-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-single_aligned.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. esptool v5.3.1 Image size: 73760 bytes ESP32-C3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3fc80000 0x00000018 DRAM ESP32-C3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[single_aligned-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-single_aligned.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. esptool v5.3.1 Image size: 65568 bytes ESP32-C5 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C5 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 23 (ESP32-C5) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x40800000 0x00000018 DRAM, BYTE_ACCESSIBLE, IRAM ESP32-C5 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[single_aligned-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-single_aligned.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. esptool v5.3.1 Image size: 73760 bytes ESP32-S3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-S3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 9 (ESP32-S3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3fc88000 0x00000018 BYTE_ACCESSIBLE, MEM_INTERNAL, DRAM ESP32-S3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[single_off_by_8-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-single_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. esptool v5.3.1 Image size: 65572 bytes ESP32 Image Header ================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3ffae000 0x00000018 BYTE_ACCESSIBLE, DRAM ESP32 Image Footer ================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[single_off_by_8-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-single_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. esptool v5.3.1 Image size: 69656 bytes ESP32-C3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3fc80000 0x00000018 DRAM ESP32-C3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[single_off_by_8-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-single_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. esptool v5.3.1 Image size: 61464 bytes ESP32-C5 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C5 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 23 (ESP32-C5) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x40800000 0x00000018 DRAM, BYTE_ACCESSIBLE, IRAM ESP32-C5 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[single_off_by_8-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-single_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. esptool v5.3.1 Image size: 69656 bytes ESP32-S3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-S3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 9 (ESP32-S3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3fc88000 0x00000018 BYTE_ACCESSIBLE, MEM_INTERNAL, DRAM ESP32-S3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_off_by_8-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-multi_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. esptool v5.3.1 Image size: 196600 bytes ESP32 Image Header ================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00040 0x3ffae000 0x00000018 BYTE_ACCESSIBLE, DRAM ESP32 Image Footer ================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_off_by_8-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-multi_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. esptool v5.3.1 Image size: 200696 bytes ESP32-C3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00040 0x3fc80000 0x00000018 DRAM ESP32-C3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_off_by_8-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-multi_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. esptool v5.3.1 Image size: 192504 bytes ESP32-C5 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C5 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 23 (ESP32-C5) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00040 0x40800000 0x00000018 DRAM, BYTE_ACCESSIBLE, IRAM ESP32-C5 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_off_by_8-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-multi_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. esptool v5.3.1 Image size: 200696 bytes ESP32-S3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-S3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 9 (ESP32-S3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00040 0x3fc88000 0x00000018 BYTE_ACCESSIBLE, MEM_INTERNAL, DRAM ESP32-S3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_far_apart-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-multi_far_apart.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. esptool v5.3.1 Image size: 129056 bytes ESP32 Image Header ================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00080 0x3ffae000 0x00000018 BYTE_ACCESSIBLE, DRAM ESP32 Image Footer ================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_far_apart-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-multi_far_apart.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. esptool v5.3.1 Image size: 133152 bytes ESP32-C3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00080 0x3fc80000 0x00000018 DRAM ESP32-C3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_far_apart-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-multi_far_apart.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. esptool v5.3.1 Image size: 124960 bytes ESP32-C5 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C5 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 23 (ESP32-C5) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00080 0x40800000 0x00000018 DRAM, BYTE_ACCESSIBLE, IRAM ESP32-C5 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_far_apart-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-multi_far_apart.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. esptool v5.3.1 Image size: 133152 bytes ESP32-S3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-S3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 9 (ESP32-S3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00080 0x3fc88000 0x00000018 BYTE_ACCESSIBLE, MEM_INTERNAL, DRAM ESP32-S3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_three_segs-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-multi_three_segs.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. esptool v5.3.1 Image size: 197204 bytes ESP32 Image Header ================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3ffae000 0x00000018 BYTE_ACCESSIBLE, DRAM ESP32 Image Footer ================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_three_segs-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-multi_three_segs.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. esptool v5.3.1 Image size: 201300 bytes ESP32-C3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3fc80000 0x00000018 DRAM ESP32-C3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_three_segs-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-multi_three_segs.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. esptool v5.3.1 Image size: 193108 bytes ESP32-C5 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C5 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 23 (ESP32-C5) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x40800000 0x00000018 DRAM, BYTE_ACCESSIBLE, IRAM ESP32-C5 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[multi_three_segs-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-multi_three_segs.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. esptool v5.3.1 Image size: 201300 bytes ESP32-S3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-S3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 9 (ESP32-S3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x00100 0x3fc88000 0x00000018 BYTE_ACCESSIBLE, MEM_INTERNAL, DRAM ESP32-S3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[large_ram_segment-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-large_ram_segment.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. esptool v5.3.1 Image size: 258072 bytes ESP32 Image Header ================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32 Extended Image Header =========================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 0 (ESP32) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x04000 0x3ffae000 0x00000018 BYTE_ACCESSIBLE, DRAM ESP32 Image Footer ================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[large_ram_segment-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-large_ram_segment.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. esptool v5.3.1 Image size: 262168 bytes ESP32-C3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 5 (ESP32-C3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x04000 0x3fc80000 0x00000018 DRAM ESP32-C3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[large_ram_segment-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-large_ram_segment.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. esptool v5.3.1 Image size: 253976 bytes ESP32-C5 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-C5 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 23 (ESP32-C5) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x04000 0x40800000 0x00000018 DRAM, BYTE_ACCESSIBLE, IRAM ESP32-C5 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_layout[large_ram_segment-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-large_ram_segment.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. esptool v5.3.1 Image size: 262168 bytes ESP32-S3 Image Header ===================== Image version: 1 Entry point not set Segments: 1 Flash size: 1MB Flash freq: 40m Flash mode: QIO ESP32-S3 Extended Image Header ============================== WP pin: 0xee (disabled) Flash pins drive settings: clk_drv: 0x0, q_drv: 0x0, d_drv: 0x0, cs0_drv: 0x0, hd_drv: 0x0, wp_drv: 0x0 Chip ID: 9 (ESP32-S3) Minimal chip revision: v0.0, (legacy min_rev = 0) Maximal chip revision: v655.35 Segments Information ==================== Segment Length Load addr File offs Memory types ------- ------- ---------- ---------- ------------ 0 0x04000 0x3fc88000 0x00000018 BYTE_ACCESSIBLE, MEM_INTERNAL, DRAM ESP32-S3 Image Footer ===================== Checksum: 0xef (valid) PASSED test/test_imagegen.py::TestRamOnlyHeader::test_no_sha256[esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-nosha.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_no_sha256[esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-nosha.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_no_sha256[esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-nosha.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_no_sha256[esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-nosha.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_segment_count[esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-segcount.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_segment_count[esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-segcount.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_segment_count[esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-segcount.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_segment_count[esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-segcount.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[single_off_by_8-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-flashpresent-single_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[single_off_by_8-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-flashpresent-single_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[single_off_by_8-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-flashpresent-single_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[single_off_by_8-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-flashpresent-single_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_off_by_8-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-flashpresent-multi_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_off_by_8-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-flashpresent-multi_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_off_by_8-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-flashpresent-multi_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_off_by_8-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-flashpresent-multi_off_by_8.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_far_apart-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-flashpresent-multi_far_apart.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_far_apart-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-flashpresent-multi_far_apart.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_far_apart-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-flashpresent-multi_far_apart.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_far_apart-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-flashpresent-multi_far_apart.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_three_segs-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-flashpresent-multi_three_segs.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_three_segs-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-flashpresent-multi_three_segs.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_three_segs-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-flashpresent-multi_three_segs.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[multi_three_segs-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-flashpresent-multi_three_segs.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[large_ram_segment-esp32] Executing /usr/bin/python3 -m esptool --chip esp32 elf2image esp32-flashpresent-large_ram_segment.elf --ram-only-header esptool v5.3.1 Creating ESP32 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[large_ram_segment-esp32c3] Executing /usr/bin/python3 -m esptool --chip esp32c3 elf2image esp32c3-flashpresent-large_ram_segment.elf --ram-only-header esptool v5.3.1 Creating ESP32-C3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C3 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[large_ram_segment-esp32c5] Executing /usr/bin/python3 -m esptool --chip esp32c5 elf2image esp32c5-flashpresent-large_ram_segment.elf --ram-only-header esptool v5.3.1 Creating ESP32-C5 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-C5 image. PASSED test/test_imagegen.py::TestRamOnlyHeader::test_flash_segments_present[large_ram_segment-esp32s3] Executing /usr/bin/python3 -m esptool --chip esp32s3 elf2image esp32s3-flashpresent-large_ram_segment.elf --ram-only-header esptool v5.3.1 Creating ESP32-S3 image... Image has only RAM segments visible. ROM segments are hidden and SHA256 digest is not appended. Successfully created ESP32-S3 image. PASSED test/test_logger.py::TestLogger::test_singleton PASSED test/test_logger.py::TestLogger::test_print PASSED test/test_logger.py::TestLogger::test_note_message PASSED test/test_logger.py::TestLogger::test_warning_message PASSED test/test_logger.py::TestLogger::test_error_message PASSED test/test_logger.py::TestLogger::test_stage PASSED test/test_logger.py::TestLogger::test_progress_bar PASSED test/test_logger.py::TestLogger::test_set_incomplete_logger PASSED test/test_logger.py::TestLogger::test_set_logger PASSED test/test_merge_bin.py::TestMergeBin::test_simple_merge Executing /usr/bin/python3 -m esptool --chip esp8266 merge-bin -o /tmp/tmpw5q56414 0x0 one_kb.bin 0x1000 one_kb.bin 0x10000 one_kb.bin esptool v5.3.1 Wrote 0x10400 bytes to file '/tmp/tmpw5q56414', ready to flash to offset 0x0. PASSED test/test_merge_bin.py::TestMergeBin::test_args_out_of_order Executing /usr/bin/python3 -m esptool --chip esp8266 merge-bin -o /tmp/tmpexmhuaiw 0x0 one_kb.bin 0x1000 one_kb.bin 0x10000 one_kb.bin esptool v5.3.1 Wrote 0x10400 bytes to file '/tmp/tmpexmhuaiw', ready to flash to offset 0x0. Executing /usr/bin/python3 -m esptool --chip esp8266 merge-bin -o /tmp/tmpbaxuv3mm 0x0 one_kb.bin 0x10000 one_kb.bin 0x1000 one_kb.bin esptool v5.3.1 Wrote 0x10400 bytes to file '/tmp/tmpbaxuv3mm', ready to flash to offset 0x0. Executing /usr/bin/python3 -m esptool --chip esp8266 merge-bin -o /tmp/tmp_obue3ml 0x1000 one_kb.bin 0x0 one_kb.bin 0x10000 one_kb.bin esptool v5.3.1 Wrote 0x10400 bytes to file '/tmp/tmp_obue3ml', ready to flash to offset 0x0. Executing /usr/bin/python3 -m esptool --chip esp8266 merge-bin -o /tmp/tmpl44k8otc 0x1000 one_kb.bin 0x10000 one_kb.bin 0x0 one_kb.bin esptool v5.3.1 Wrote 0x10400 bytes to file '/tmp/tmpl44k8otc', ready to flash to offset 0x0. Executing /usr/bin/python3 -m esptool --chip esp8266 merge-bin -o /tmp/tmppi_0k283 0x10000 one_kb.bin 0x0 one_kb.bin 0x1000 one_kb.bin esptool v5.3.1 Wrote 0x10400 bytes to file '/tmp/tmppi_0k283', ready to flash to offset 0x0. Executing /usr/bin/python3 -m esptool --chip esp8266 merge-bin -o /tmp/tmp2wn2sfmk 0x10000 one_kb.bin 0x1000 one_kb.bin 0x0 one_kb.bin esptool v5.3.1 Wrote 0x10400 bytes to file '/tmp/tmp2wn2sfmk', ready to flash to offset 0x0. PASSED test/test_merge_bin.py::TestMergeBin::test_error_overlap PASSED test/test_merge_bin.py::TestMergeBin::test_leading_padding Executing /usr/bin/python3 -m esptool --chip esp32c3 merge-bin -o /tmp/tmphoqaa05a 0x100000 one_mb.bin esptool v5.3.1 Wrote 0x200000 bytes to file '/tmp/tmphoqaa05a', ready to flash to offset 0x0. PASSED test/test_merge_bin.py::TestMergeBin::test_update_bootloader_params Executing /usr/bin/python3 -m esptool --chip esp32 merge-bin -o /tmp/tmps1zjwe3c --flash-size 2MB --flash-mode dout 0x1000 bootloader_esp32.bin 0x10000 ram_helloworld/helloworld-esp32.bin esptool v5.3.1 Flash parameters set to 0x0310. Wrote 0x10080 bytes to file '/tmp/tmps1zjwe3c', ready to flash to offset 0x0. PASSED test/test_merge_bin.py::TestMergeBin::test_target_offset Executing /usr/bin/python3 -m esptool --chip esp32 merge-bin -o /tmp/tmpps1c6x5p --target-offset 0x1000 0x1000 bootloader_esp32.bin 0x10000 ram_helloworld/helloworld-esp32.bin esptool v5.3.1 Wrote 0xf080 bytes to file '/tmp/tmpps1c6x5p', ready to flash to offset 0x1000. PASSED test/test_merge_bin.py::TestMergeBin::test_pad_to_size Executing /usr/bin/python3 -m esptool --chip esp32c3 merge-bin -o /tmp/tmpfk6gfsd5 --pad-to-size 4MB 0x0 bootloader_esp32c3.bin esptool v5.3.1 Wrote 0x400000 bytes to file '/tmp/tmpfk6gfsd5', ready to flash to offset 0x0. PASSED test/test_merge_bin.py::TestMergeBin::test_pad_to_size_w_target_offset Executing /usr/bin/python3 -m esptool --chip esp32 merge-bin -o /tmp/tmpt775qhgr --target-offset 0x1000 --pad-to-size 2MB 0x1000 bootloader_esp32.bin 0x10000 ram_helloworld/helloworld-esp32.bin esptool v5.3.1 Wrote 0x1ff000 bytes to file '/tmp/tmpt775qhgr', ready to flash to offset 0x1000. PASSED test/test_merge_bin.py::TestMergeBin::test_merge_mixed Executing /usr/bin/python3 -m esptool --chip esp32 merge-bin -o /tmp/tmpezzht8fu --format hex 0x1000 bootloader_esp32.bin esptool v5.3.1 Warning: Only one input file specified, output may include additional padding if input file was previously merged. Please refer to the documentation for more information: https://docs.espressif.com/projects/esptool/en/latest/esptool/basic-commands.html#hex-output-format Wrote 0x54c8 bytes to file '/tmp/tmpezzht8fu', ready to flash to offset 0x0. Executing /usr/bin/python3 -m esptool --chip esp32 merge-bin -o /tmp/tmpjs_yytzc --target-offset 0x1000 --pad-to-size 2MB 0x1000 /tmp/tmp8i9g1bln.hex 0x10000 ram_helloworld/helloworld-esp32.bin esptool v5.3.1 Wrote 0x1ff000 bytes to file '/tmp/tmpjs_yytzc', ready to flash to offset 0x1000. PASSED test/test_merge_bin.py::TestMergeBin::test_merge_bin2hex Executing /usr/bin/python3 -m esptool --chip esp32 merge-bin -o /tmp/tmpzjshcfrl --format hex 0x1000 bootloader_esp32.bin esptool v5.3.1 Warning: Only one input file specified, output may include additional padding if input file was previously merged. Please refer to the documentation for more information: https://docs.espressif.com/projects/esptool/en/latest/esptool/basic-commands.html#hex-output-format Wrote 0x54c8 bytes to file '/tmp/tmpzjshcfrl', ready to flash to offset 0x0. Executing /usr/bin/python3 -m esptool --chip esp32 merge-bin -o /tmp/tmp6si2n23g --format raw 0x1000 /tmp/tmpnfuqy__v.hex esptool v5.3.1 Wrote 0x2ed0 bytes to file '/tmp/tmp6si2n23g', ready to flash to offset 0x0. PASSED test/test_merge_bin.py::TestMergeBin::test_hex_header_raw_file Executing /usr/bin/python3 -m esptool --chip esp32 merge-bin -o /tmp/tmpnyba7im8 0x0 /tmp/tmpn8zqsw4d esptool v5.3.1 Wrote 0x1 bytes to file '/tmp/tmpnyba7im8', ready to flash to offset 0x0. PASSED test/test_merge_bin.py::TestUF2::test_simple esptool v5.3.1 Adding '/tmp/tmp8l58opb1' at 0x0... Wrote 0x200 bytes to file '/tmp/tmpbzqr3oqs', ready to be flashed with any ESP USB Bridge. PASSED test/test_merge_bin.py::TestUF2::test_more_files esptool v5.3.1 Adding '/tmp/tmpmdb379k_' at 0x100... Adding '/tmp/tmpy8aiwj4y' at 0x1000... Wrote 0x400 bytes to file '/tmp/tmp1b_k3gza', ready to be flashed with any ESP USB Bridge. PASSED test/test_merge_bin.py::TestUF2::test_larger_files esptool v5.3.1 Adding '/tmp/tmpivzieb8p' at 0x100... Adding '/tmp/tmp8tzgnl8n' at 0x1000... Wrote 0x400 bytes to file '/tmp/tmp0hxkwbc5', ready to be flashed with any ESP USB Bridge. PASSED test/test_merge_bin.py::TestUF2::test_boundaries esptool v5.3.1 Adding '/tmp/tmpst9t2ov_' at 0x100... Adding '/tmp/tmpyv_8wv_l' at 0x2000... Adding '/tmp/tmpk02i9fss' at 0x3000... Wrote 0xc00 bytes to file '/tmp/tmp5e22jc52', ready to be flashed with any ESP USB Bridge. PASSED test/test_merge_bin.py::TestUF2::test_files_with_more_blocks esptool v5.3.1 Adding '/tmp/tmp1zxyfh9e' at 0x100... Adding '/tmp/tmpp2cbbef7' at 0x2000... Adding '/tmp/tmpuzlyar7c' at 0x3000... Wrote 0x1400 bytes to file '/tmp/tmpmywfywl5', ready to be flashed with any ESP USB Bridge. PASSED test/test_merge_bin.py::TestUF2::test_very_large_files esptool v5.3.1 Adding '/tmp/tmp_3bh70cj' at 0x100... Adding '/tmp/tmpjplh6hhw' at 0x10000... Adding '/tmp/tmpbij01927' at 0x100000... Wrote 0x16a00 bytes to file '/tmp/tmpreautu9g', ready to be flashed with any ESP USB Bridge. PASSED test/test_merge_bin.py::TestUF2::test_chunk_size esptool v5.3.1 Adding '/tmp/tmpm2g3zozk' at 0x1000... Adding '/tmp/tmpmgq2gc5j' at 0x2000... Adding '/tmp/tmpdrm8v8q7' at 0x3000... Wrote 0x800 bytes to file '/tmp/tmpbu31v9ms', ready to be flashed with any ESP USB Bridge. PASSED test/test_merge_bin.py::TestUF2::test_md5_disable esptool v5.3.1 Adding '/tmp/tmp1knmma5p' at 0x100... Adding '/tmp/tmpmuvh76bk' at 0x2000... Wrote 0x400 bytes to file '/tmp/tmps61ms2vb', ready to be flashed with any ESP USB Bridge. PASSED test/test_modules.py::test_reed_solomon_encoding PASSED test/test_nand_cmds.py::TestReadFlashNandWithSkip::test_linear_no_bad_blocks PASSED test/test_nand_cmds.py::TestReadFlashNandWithSkip::test_bad_block_skipped Custom logger: Skipping bad block at 0x00000000 during read PASSED test/test_nand_cmds.py::TestReadFlashNandWithSkip::test_end_address_exhausted_raises Custom logger: Skipping bad block at 0x00000000 during read Custom logger: Skipping bad block at 0x00020000 during read PASSED test/test_nand_cmds.py::TestReadFlashNandWithSkip::test_exact_slice_to_size PASSED test/test_nand_cmds.py::TestReadFlashNandWithSkip::test_progress_callback_invoked PASSED test/test_nand_cmds.py::TestWriteFlashNandValidation::test_unaligned_address_raises Custom logger: Warning: NAND flash support is experimental and may change without notice. PASSED test/test_nand_cmds.py::TestWriteFlashNandValidation::test_overlapping_images_raises Custom logger: Wrote 131072 bytes at 0x00000000 in 0.0 seconds (1086742.4 kbit/s). PASSED test/test_nand_cmds.py::TestWriteFlashNandValidation::test_not_enough_good_blocks_raises PASSED test/test_nand_cmds.py::TestWriteFlashNandRecovery::test_program_failed_marks_bad_retries_next_block Custom logger: Wrote 131072 bytes at 0x00020000 in 0.0 seconds (1177522.5 kbit/s). Custom logger: Leaving... PASSED test/test_nand_cmds.py::TestWriteFlashNandRecovery::test_verify_mismatch_clears_on_reread Custom logger: Wrote 131072 bytes at 0x00000000 in 0.0 seconds (1012674.8 kbit/s). Custom logger: Leaving... PASSED test/test_nand_cmds.py::TestWriteFlashNandRecovery::test_verify_mismatch_persists_marks_bad Custom logger: Wrote 131072 bytes at 0x00000000 in 0.0 seconds (1000238.0 kbit/s). Custom logger: Wrote 131072 bytes at 0x00020000 in 0.0 seconds (1412346.3 kbit/s). Custom logger: Leaving... PASSED test/test_nand_cmds.py::TestWriteFlashNandRecovery::test_mark_bad_failure_swallowed Custom logger: Wrote 131072 bytes at 0x00020000 in 0.0 seconds (972373.8 kbit/s). Custom logger: Leaving... PASSED test/test_nand_cmds.py::TestEraseFlashNand::test_efail_marks_block_bad Custom logger: Erasing NAND flash (all blocks including bad-marked)... Custom logger: NAND erase complete in 0.0s: 1023 blocks erased, 1 failed (marked bad). PASSED test/test_nand_cmds.py::TestEraseFlashNand::test_mark_bad_failure_swallowed Custom logger: Erasing NAND flash (all blocks including bad-marked)... Custom logger: NAND erase complete in 0.0s: 0 blocks erased, 1024 failed (marked bad). PASSED test/test_nand_cmds.py::TestEraseFlashNand::test_all_blocks_iterated Custom logger: Erasing NAND flash (all blocks including bad-marked)... Custom logger: NAND erase complete in 0.0s: 1024 blocks erased, 0 failed (marked bad). PASSED test/test_nand_cmds.py::TestEraseRegionNand::test_unaligned_address_raises PASSED test/test_nand_cmds.py::TestEraseRegionNand::test_unaligned_size_raises PASSED test/test_nand_cmds.py::TestEraseRegionNand::test_aligned_range_erases_correct_block_count Custom logger: Erasing NAND flash region... Custom logger: NAND region erase complete in 0.0s: 3 blocks erased, 0 failed (marked bad). PASSED test/test_nand_cmds.py::TestVerifyFlashNand::test_unaligned_address_raises PASSED test/test_nand_cmds.py::TestVerifyFlashNand::test_good_data_no_mismatch Custom logger: Verifying 0x20000 (131072) bytes at 0x00000000 against input bytes... Custom logger: Verification successful. PASSED test/test_nand_cmds.py::TestVerifyFlashNand::test_bad_block_skipped_during_verify Custom logger: Verifying 0x20000 (131072) bytes at 0x00000000 against input bytes... Custom logger: Skipping bad block at 0x00000000 during verify Custom logger: Verification successful. PASSED test/test_nand_cmds.py::TestVerifyFlashNand::test_mismatch_raises_fatalerror Custom logger: Verifying 0x20000 (131072) bytes at 0x00000000 against input bytes... Custom logger: Block at 0x00000000: MISMATCH Custom logger: Verification failed. PASSED test/test_nand_cmds.py::TestVerifyFlashNand::test_mismatch_with_diff_logs_differences Custom logger: Verifying 0x20000 (131072) bytes at 0x00000000 against input bytes... Custom logger: Block at 0x00000000: 131072 byte differences, first at offset 0 Custom logger: Verification failed. PASSED test/test_nand_cmds.py::TestFlashSpiNandAttach::test_known_winbond_w25n01gv Custom logger: Detected NAND chip: Winbond W25N01GV (1Gbit) PASSED test/test_nand_cmds.py::TestFlashSpiNandAttach::test_unknown_jedec_raises PASSED test/test_nand_cmds.py::TestFlashSpiNandAttach::test_short_response_raises PASSED test/test_nand_cmds.py::TestFlashSpiNandAttach::test_nonzero_status_byte_raises PASSED test/test_nand_cmds.py::TestFlashSpiNandAttach::test_nonzero_prot_reg_warns PASSED test/test_nand_cmds.py::TestDumpBbm::test_file_length_equals_block_count Custom logger: BBM dump: 16 blocks scanned, 0 bad. Custom logger: Written to '/tmp/pytest-of-mockbuild/pytest-0/test_file_length_equals_block_0/bbm.bin' (16 bytes, 0x00=good 0x01=bad). PASSED test/test_nand_cmds.py::TestDumpBbm::test_good_block_encodes_as_zero Custom logger: BBM dump: 4 blocks scanned, 0 bad. Custom logger: Written to '/tmp/pytest-of-mockbuild/pytest-0/test_good_block_encodes_as_zer0/bbm.bin' (4 bytes, 0x00=good 0x01=bad). PASSED test/test_nand_cmds.py::TestDumpBbm::test_bad_block_encodes_as_one Custom logger: BBM dump: 4 blocks scanned, 4 bad. Custom logger: Bad block indices: [0, 1, 2, 3] Custom logger: Written to '/tmp/pytest-of-mockbuild/pytest-0/test_bad_block_encodes_as_one0/bbm.bin' (4 bytes, 0x00=good 0x01=bad). PASSED test/test_nand_cmds.py::TestDumpBbm::test_page_numbers_are_block_times_pages_per_block Custom logger: BBM dump: 8 blocks scanned, 0 bad. Custom logger: Written to '/tmp/pytest-of-mockbuild/pytest-0/test_page_numbers_are_block_ti0/bbm.bin' (8 bytes, 0x00=good 0x01=bad). PASSED test/test_nand_cmds.py::TestReadFlashNandLoader::test_not_stub_raises PASSED test/test_nand_cmds.py::TestReadFlashNandLoader::test_md5_mismatch_raises PASSED test/test_nand_cmds.py::TestReadFlashNandLoader::test_short_digest_frame_raises PASSED test/test_nand_cmds.py::TestNandSpareLoader::test_read_nand_spare_correct_opcode_and_pack PASSED test/test_nand_cmds.py::TestNandSpareLoader::test_write_nand_spare_correct_opcode_and_pack PASSED test/test_nand_cmds.py::TestCliValidation::test_read_flash_nand_missing_spi_connection PASSED test/test_nand_cmds.py::TestCliValidation::test_write_flash_nand_missing_spi_connection PASSED test/test_nand_cmds.py::TestCliValidation::test_erase_flash_nand_missing_spi_connection PASSED test/test_nand_cmds.py::TestCliValidation::test_erase_region_nand_missing_spi_connection PASSED test/test_nand_cmds.py::TestCliValidation::test_verify_flash_nand_missing_spi_connection PASSED test/test_nand_cmds.py::TestCliValidation::test_read_nand_spare_missing_spi_connection PASSED test/test_port_sorting.py::TestPortSorting::test_linux_port_sorting PASSED test/test_port_sorting.py::TestPortSorting::test_macos_port_sorting PASSED test/test_port_sorting.py::TestPortSorting::test_windows_port_sorting PASSED test/test_port_sorting.py::TestPortSorting::test_port_filtering_parameters PASSED test/test_stub_plugin.py::TestStubFlasherWithoutPlugin::test_v2_json_exists PASSED test/test_stub_plugin.py::TestStubFlasherWithoutPlugin::test_no_plugin_segments PASSED test/test_stub_plugin.py::TestStubFlasherWithoutPlugin::test_text_and_data_decoded PASSED test/test_stub_plugin.py::TestStubFlasherWithoutPlugin::test_data_size_unchanged_without_plugin PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_plugin_segment_added Custom logger: Stub: 7.5 KB (base) + 3.8 KB (nand) PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_plugin_segment_address Custom logger: Stub: 7.5 KB (base) + 3.8 KB (nand) PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_plugin_text_4byte_aligned Custom logger: Stub: 7.5 KB (base) + 3.8 KB (nand) PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_data_extended_by_bss_size Custom logger: Stub: 7.5 KB (base) + 3.8 KB (nand) PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_plugin_bss_zeros Custom logger: Stub: 7.5 KB (base) + 3.8 KB (nand) PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_fpt_entries_patched Custom logger: Stub: 7.5 KB (base) + 3.8 KB (nand) PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_unpatched_fpt_slots_unchanged Custom logger: Stub: 7.5 KB (base) + 3.8 KB (nand) PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_unknown_plugin_raises PASSED test/test_stub_plugin.py::TestStubFlasherWithNandPlugin::test_v1_stub_with_plugin_raises PASSED test/test_stub_plugin.py::TestPluginChipSupport::test_non_esp32s3_with_nand_raises[esp32.json-ESP32] PASSED test/test_stub_plugin.py::TestPluginChipSupport::test_non_esp32s3_with_nand_raises[esp32s2.json-ESP32-S2] PASSED test/test_stub_plugin.py::TestPluginChipSupport::test_non_esp32s3_with_nand_raises[esp32c3.json-ESP32-C3] PASSED test/test_stub_plugin.py::TestPluginChipSupport::test_non_esp32s3_with_nand_raises[esp32c6.json-ESP32-C6] PASSED test/test_stub_plugin.py::TestPluginChipSupport::test_non_esp32s3_with_nand_raises[esp32h2.json-ESP32-H2] PASSED test/test_stub_plugin.py::TestPluginChipSupport::test_esp32s3_nand_succeeds Custom logger: Stub: 7.5 KB (base) + 3.8 KB (nand) PASSED test/test_stub_plugin.py::TestPluginChipSupport::test_no_plugins_loads_fine_on_any_chip PASSED test/test_stub_plugin.py::TestCustomStubCompatibility::test_custom_stub_no_plugin_segments Custom logger: Uploading stub flasher... Custom logger: Running stub flasher... Custom logger: Stub flasher running. PASSED test/test_stub_plugin.py::TestNANDFailureCodeDecoding::test_program_failed_decodes_to_subclass PASSED test/test_stub_plugin.py::TestNANDFailureCodeDecoding::test_erase_failed_decodes_to_subclass PASSED test/test_stub_plugin.py::TestNANDFailureCodeDecoding::test_transport_error_stays_plain_fatalerror PASSED test/test_stub_plugin.py::TestNANDBadBlockPolicy::test_transport_error_does_not_mark_bad Custom logger: Erasing NAND flash region... PASSED test/test_stub_plugin.py::TestNANDBadBlockPolicy::test_chip_erase_failed_marks_bad Custom logger: Erasing NAND flash region... Custom logger: NAND region erase complete in 0.0s: 0 blocks erased, 1 failed (marked bad). PASSED test/test_stub_plugin.py::TestNANDBadBlockPolicy::test_chip_pfail_bypasses_loader_retry PASSED test/test_stub_plugin.py::TestNANDBadBlockPolicy::test_chip_efail_bypasses_loader_retry PASSED =================================================== warnings summary =================================================== ../BUILDROOT/usr/lib/python3.14/site-packages/espefuse/cli_util.py:8 /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/cli_util.py:8: DeprecationWarning: 'parser.OptionParser' is deprecated and will be removed in Click 9.0. The old parser is available in 'optparse'. from click.parser import OptionParser, ParsingState, _unpack_args ../BUILDROOT/usr/lib/python3.14/site-packages/espefuse/cli_util.py:8 /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/lib/python3.14/site-packages/espefuse/cli_util.py:8: DeprecationWarning: 'parser.ParsingState' is deprecated and will be removed in Click 9.0. The old parser is available in 'optparse'. from click.parser import OptionParser, ParsingState, _unpack_args -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ------------- generated xml file: /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/test/report.xml -------------- ======================= 343 passed, 44 skipped, 172 deselected, 2 warnings in 255.07s (0:04:15) ======================== + RPM_EC=0 ++ jobs -p + exit 0 Processing files: esptool-5.3.1-1.fc44.noarch Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.hnk42R + umask 022 + cd /builddir/build/BUILD/esptool-5.3.1-build + cd esptool-5.3.1 + DOCDIR=/builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/share/doc/esptool + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/share/doc/esptool + cp -pr /builddir/build/BUILD/esptool-5.3.1-build/esptool-5.3.1/README.md /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT/usr/share/doc/esptool + RPM_EC=0 ++ jobs -p + exit 0 Provides: esptool = 5.3.1-1.fc44 esptool.py = 5.3.1-1.fc44 python3.14dist(esptool) = 5.3.1 python3dist(esptool) = 5.3.1 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: ((python3.14dist(bitstring) < 4.2 or python3.14dist(bitstring) > 4.2) with python3.14dist(bitstring) >= 3.1.6) (python3.14dist(reedsolo) < 1.8~~ with python3.14dist(reedsolo) >= 1.5.3) /usr/bin/python3 python(abi) = 3.14 python3.14dist(click) < 9~~ python3.14dist(cryptography) >= 43 python3.14dist(intelhex) python3.14dist(pyserial) >= 3.3 python3.14dist(pyyaml) >= 5.1 python3.14dist(rich-click) < 2~~ Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILD/esptool-5.3.1-build/BUILDROOT Wrote: /builddir/build/SRPMS/esptool-5.3.1-1.fc44.src.rpm Wrote: /builddir/build/RPMS/esptool-5.3.1-1.fc44.noarch.rpm Finish: rpmbuild esptool-5.3.1-1.fc44.src.rpm Finish: build phase for esptool-5.3.1-1.fc44.src.rpm INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-44-x86_64-1782739298.788803/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names INFO: Done(/var/lib/copr-rpmbuild/results/esptool-5.3.1-1.fc44.src.rpm) Config(child) 4 minutes 42 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot Finish: run Running RPMResults tool Package info: { "packages": [ { "name": "esptool", "epoch": null, "version": "5.3.1", "release": "1.fc44", "arch": "noarch" }, { "name": "esptool", "epoch": null, "version": "5.3.1", "release": "1.fc44", "arch": "src" } ] } RPMResults finished