Skip to content

Commit 1b37d3d

Browse files
committed
docs(esp32h4): Add ESP32-H4 documentation
1 parent cacc180 commit 1b37d3d

File tree

9 files changed

+246
-19
lines changed

9 files changed

+246
-19
lines changed

.github/copilot-instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ This document provides essential information for coding agents working on the es
1010
- `espsecure.py` - Security-related operations (signing, encryption)
1111
- `esp_rfc2217_server.py` - RFC2217 serial-over-TCP server
1212

13-
**Project type:** Python 3.10+ package with console entry points, using setuptools build system and Click/rich_click for CLI interfaces. Supports ESP32, ESP32-S2, ESP32-S3, ESP32-C2, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-H2, ESP32-H21, ESP32-P4, ESP8266, and other Espressif chips.
13+
**Project type:** Python 3.10+ package with console entry points, using setuptools build system and Click/rich_click for CLI interfaces. Supports ESP32, ESP32-S2, ESP32-S3, ESP32-C2, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-H2, ESP32-H21, ESP32-H4, ESP32-P4, ESP8266, and other Espressif chips.
1414

1515
**Repository size:** ~200 files, primarily Python code with some binary stub flasher files and YAML configuration files.
1616

.gitlab-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,7 @@ build_docs:
545545
script:
546546
- pip install ".[docs]" --prefer-binary # esptool is needed for the automatic API documentation generation
547547
- cd docs
548-
- build-docs -l en -t {esp8266,esp32,esp32s2,esp32c3,esp32s3,esp32c2,esp32c6,esp32h2,esp32p4,esp32c5,esp32c61,esp32h21}
548+
- build-docs -l en -t {esp8266,esp32,esp32s2,esp32c3,esp32s3,esp32c2,esp32c6,esp32h2,esp32p4,esp32c5,esp32c61,esp32h21,esp32h4}
549549

550550
.deploy_docs_template:
551551
stage: deploy_docs

docs/_static/esptool_versions.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ var DOCUMENTATION_VERSIONS = {
33
supported_targets: [ "esp32" ]
44
},
55
VERSIONS: [
6-
{ name: "latest", old: false, pre_release: false, supported_targets: [ "esp8266", "esp32", "esp32s2", "esp32s3", "esp32c3", "esp32c2", "esp32c6", "esp32p4", "esp32h2", "esp32c5", "esp32c61", "esp32h21" ] },
7-
{ name: "release-v4", old: false, pre_release: false, supported_targets: [ "esp8266", "esp32", "esp32s2", "esp32s3", "esp32c3", "esp32c2", "esp32c6", "esp32p4", "esp32h2", "esp32c5", "esp32c61", "esp32h21" ] },
6+
{ name: "latest", old: false, pre_release: false, supported_targets: [ "esp8266", "esp32", "esp32s2", "esp32s3", "esp32c3", "esp32c2", "esp32c6", "esp32p4", "esp32h2", "esp32c5", "esp32c61", "esp32h21", "esp32h4" ] },
7+
{ name: "release-v4", old: false, pre_release: false, supported_targets: [ "esp8266", "esp32", "esp32s2", "esp32s3", "esp32c3", "esp32c2", "esp32c6", "esp32p4", "esp32h2", "esp32c5", "esp32c61", "esp32h21", "esp32h4" ] },
88
],
99
IDF_TARGETS: [
1010
{ text: "ESP32", value: "esp32" },
@@ -15,6 +15,7 @@ var DOCUMENTATION_VERSIONS = {
1515
{ text: "ESP32-C61", value: "esp32c61" },
1616
{ text: "ESP32-H2", value: "esp32h2" },
1717
{ text: "ESP32-H21", value: "esp32h21" },
18+
{ text: "ESP32-H4", value: "esp32h4" },
1819
{ text: "ESP32-P4", value: "esp32p4" },
1920
{ text: "ESP32-S2", value: "esp32s2" },
2021
{ text: "ESP32-S3", value: "esp32s3" },

docs/conf_common.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"esp32c2",
1111
"esp32c6",
1212
"esp32h2",
13+
"esp32h4",
1314
"esp32p4",
1415
"esp32c5",
1516
"esp32c61",
@@ -51,6 +52,7 @@
5152
"esp32c2": ESP32_DOCS,
5253
"esp32c6": ESP32_DOCS,
5354
"esp32h2": ESP32_DOCS,
55+
"esp32h4": ESP32_DOCS,
5456
"esp32p4": ESP32_DOCS,
5557
"esp32c5": ESP32_DOCS,
5658
"esp32c61": ESP32_DOCS,

docs/en/advanced-topics/boot-mode-selection.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
{IDF_TARGET_STRAP_BOOT_GPIO:default="GPIO9", esp8266="GPIO0", esp32="GPIO0", esp32s2="GPIO0", esp32s3="GPIO0", esp32p4="GPIO35", esp32c5="GPIO28", esp32h21="GPIO14"}
1+
{IDF_TARGET_STRAP_BOOT_GPIO:default="GPIO9", esp8266="GPIO0", esp32="GPIO0", esp32s2="GPIO0", esp32s3="GPIO0", esp32p4="GPIO35", esp32c5="GPIO28", esp32h21="GPIO14", esp32h4="GPIO14"}
22

3-
{IDF_TARGET_STRAP_BOOT_2_GPIO:default="GPIO8", esp32="GPIO2", esp32s2="GPIO46", esp32s3="GPIO46", esp32p4="GPIO36", esp32c5="GPIO27", esp32h21="GPIO13"}
3+
{IDF_TARGET_STRAP_BOOT_2_GPIO:default="GPIO8", esp32="GPIO2", esp32s2="GPIO46", esp32s3="GPIO46", esp32p4="GPIO36", esp32c5="GPIO27", esp32h21="GPIO13", esp32h4="GPIO13"}
44

55
{IDF_TARGET_BOOTLOADER_OFFSET:default="0x0", esp32="0x1000", esp32s2="0x1000", esp32p4="0x2000", esp32c5="0x2000"}
66

@@ -87,7 +87,7 @@ This guide explains how to select the boot mode correctly and describes the boot
8787

8888
{IDF_TARGET_STRAP_BOOT_2_GPIO} must also be either left unconnected/floating, or driven Low, in order to enter the serial bootloader.
8989

90-
.. only:: esp32c3 or esp32c2 or esp32h2 or esp32c6 or esp32p4 or esp32c5 or esp32c61 or esp32h21
90+
.. only:: esp32c3 or esp32c2 or esp32h2 or esp32c6 or esp32p4 or esp32c5 or esp32c61 or esp32h21 or esp32h4
9191

9292
{IDF_TARGET_STRAP_BOOT_2_GPIO} must also be driven High, in order to enter the serial bootloader reliably. The strapping combination of {IDF_TARGET_STRAP_BOOT_2_GPIO} = 0 and {IDF_TARGET_STRAP_BOOT_GPIO} = 0 is invalid and will trigger unexpected behavior.
9393

docs/en/advanced-topics/firmware-image-format.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
{IDF_TARGET_FLASH_FREQ_F:default="80", esp32c2="60", esp32h2="48", esp32h21="48"}
1+
{IDF_TARGET_FLASH_FREQ_F:default="80", esp32c2="60", esp32h2="48", esp32h21="48", esp32h4="48"}
22

3-
{IDF_TARGET_FLASH_FREQ_0:default="40", esp32c2="30", esp32h2="24", esp32h21="24"}
3+
{IDF_TARGET_FLASH_FREQ_0:default="40", esp32c2="30", esp32h2="24", esp32h21="24", esp32h4="24"}
44

5-
{IDF_TARGET_FLASH_FREQ_1:default="26", esp32c2="20", esp32h2="16", esp32h21="16"}
5+
{IDF_TARGET_FLASH_FREQ_1:default="26", esp32c2="20", esp32h2="16", esp32h21="16", esp32h4="16"}
66

7-
{IDF_TARGET_FLASH_FREQ_2:default="20", esp32c2="15", esp32h2="12", esp32h21="12"}
7+
{IDF_TARGET_FLASH_FREQ_2:default="20", esp32c2="15", esp32h2="12", esp32h21="12", esp32h4="12"}
88

99
{IDF_TARGET_BOOTLOADER_OFFSET:default="0x0", esp32="0x1000", esp32s2="0x1000", esp32p4="0x2000", esp32c5="0x2000"}
1010

@@ -103,7 +103,7 @@ The image header is 8 bytes long:
103103
Flash frequency with value ``0`` can mean either 80MHz or 40MHz based on MSPI clock source mode.
104104

105105

106-
.. only:: esp32c5 or esp32c61 or esp32h21
106+
.. only:: esp32c5 or esp32c61 or esp32h21 or esp32h4
107107

108108
+--------+------------------------------------------------------------------------------------------------+
109109
| Byte | Description |
@@ -121,7 +121,7 @@ The image header is 8 bytes long:
121121
| 4-7 | Entry point address |
122122
+--------+------------------------------------------------------------------------------------------------+
123123

124-
.. only:: not (esp8266 or esp32c6 or esp32s3 or esp32s2 or esp32p4 or esp32c5 or esp32c61 or esp32h21)
124+
.. only:: not (esp8266 or esp32c6 or esp32s3 or esp32s2 or esp32p4 or esp32c5 or esp32c61 or esp32h21 or esp32h4)
125125

126126
+--------+------------------------------------------------------------------------------------------------+
127127
| Byte | Description |

0 commit comments

Comments
 (0)