ESP32 Dev Kitc Development Board

Zambiri Zamalonda

Zofotokozera

  • Mtengo: ESP32
  • Chitsogozo cha Mapulogalamu: ESP-IDF
  • Mtundu Wotulutsidwa: v5.0.9
  • Wopanga: Espressif Systems
  • Tsiku lotulutsa: Meyi 16, 2025

Malangizo Ogwiritsira Ntchito Zogulitsa

1. Yambanipo

Musanayambe ndi ESP32, dziwani za
zotsatirazi:

1.1 Mawu Oyamba

Phunzirani za ntchito zoyambira ndi luso la
Chithunzi cha ESP32.

1.2 Zomwe Mukufuna

Onetsetsani kuti muli ndi zida zofunika ndi mapulogalamu:

  • Zida: Onani mndandanda wa zida zofunika
    zigawo.
  • Mapulogalamu: Kwabasi zofunika mapulogalamu
    zigawo.

1.3 Kuyika

Tsatirani izi kuti muyike IDE ndikukhazikitsa
chilengedwe:

  • IDE: Ikani IDE yovomerezeka ya
    Kukonzekera kwa ESP32.
  • Kuyika Pamanja: Konzani pamanja
    chilengedwe ngati pakufunika.

1.4 Pangani Ntchito Yanu Yoyamba

Pangani ndi kupanga polojekiti yanu yoyamba pogwiritsa ntchito ESP32.

1.5 Chotsani ESP-IDF

Ngati ndi kotheka, phunzirani momwe mungachotsere ESP-IDF kuchokera pakompyuta yanu
dongosolo.

2. API Reference

Onani zolemba za API kuti mumve zambiri
ma protocol, kusamalira zolakwika, ndi kasinthidwe
zomangamanga.

Mafunso Ofunsidwa Kawirikawiri (FAQ)

Q: Kodi ndingathetse bwanji vuto la ESP32?

A: Onani gawo lazovuta mu bukhu la mapulogalamu
kapena pitani kwa opanga webtsamba lothandizira zothandizira.

Q: Kodi ndingagwiritse ntchito ESP-IDF ndi ma microcontroller ena?

A: ESP-IDF idapangidwira ESP32, koma mutha kupeza
Kugwirizana ndi ma microcontrollers ena a Espressif.

ESP32
ESP-IDF Programming Guide
Kutulutsa v5.0.9 Espressif Systems Meyi 16, 2025

M'ndandanda wazopezekamo

M'ndandanda wazopezekamo

i

1 Yambanipo

3

1.1 Chiyambi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 Zomwe Mukufuna. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2.1 Zida Zamagetsi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Pulogalamu ya 1.2.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.3 Kuyika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.3.1 IDE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.3.2 Kuyika pamanja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.4 Pangani Ntchito Yanu Yoyamba. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

1.5 Chotsani ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2 API Reference

45

2.1 API Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

2.1.1 Kusamalira zolakwika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

2.1.2 Mapangidwe a kasinthidwe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

2.1.3 Ma API Achinsinsi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

2.1.4 Zigawo mu Exampndi ma project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

2.1.5 API Kukhazikika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

2.2 Ndondomeko Zogwiritsa Ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

2.2.1 doko la ASIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

2.2.2 ESP-Modbus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

2.2.3 ESP-MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

2.2.4 ESP-TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

2.2.5 ESP HTTP Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

2.2.6 ESP Local Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

2.2.7 ESP Serial Slave Link . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

2.2.8 ESP x509 Chiphaso cha Satifiketi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

2.2.9 HTTP Seva. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

2.2.10 Seva ya HTTPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

2.2.11 ICMP Echo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

2.2.12 mDNS Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

2.2.13 Mbed TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

2.2.14 IP Network Layer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

2.3 Bluetooth API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

2.3.1 Bluetooth® Common . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

2.3.2 Bluetooth® Low Energy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171

2.3.3 Bluetooth® Classic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325

2.3.4 Wowongolera & HCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471

2.3.5 ESP-BLE-MESH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485

2.3.6 NimBLE-based host host APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767

2.4 Zolakwika za Codes Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769

2.5 Networking APIs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 776

2.5.1 Wi-Fi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 776

2.5.2 Efaneti. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899

2.5.3 Ulusi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936

i

2.5.4 ESP-NETIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942 2.5.5 IP Network Layer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974 2.5.6 Gulu la Ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976 2.6 Peripherals API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 2.6.1 Analogi ku Digital Converter (ADC) Oneshot Mode Driver . . . . . . . . . . . . . . . . . 977 2.6.2 Analogi to Digital Converter (ADC) Woyendetsa Mode Wopitirira . . . . . . . . . . . . . . . 986 2.6.3 Dalaivala Yowongolera Analogi kupita Ku Digital (ADC) . . . . . . . . . . . . . . . . . . . 993 2.6.4 Mtengo wa Wotchi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 2.6.5 Digital To Analogi Converter (DAC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004 2.6.6 GPIO & RTC GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 2.6.7 General Purpose Timer (GPTimer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027 2.6.8 Inter-Integrated Circuit (I2C) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039 2.6.9 Phokoso la Inter-IC (I2S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zithunzi za 10562.6.10 LCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1090 2.6.11 Kuwongolera kwa LED (LEDC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107 2.6.12 Motor Control Pulse Width Modulator (MCPWM) . . . . . . . . . . . . . . . . . . . . . 1126 2.6.13 Pulse Counter (PCNT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178 2.6.14 Remote Control Transceiver (RMT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193 2.6.15 Zofunikira Zokoka za SD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1220 2.6.16 SDMMC Host Dalaivala . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1223 2.6.17 SD SPI Host Dalaivala . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229 2.6.18 SDIO Card Slave Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234 2.6.19 Sigma-Delta Modulation (SDM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244 2.6.20 SPI Master Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1249 2.6.21 SPI Slave Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1274 2.6.22 ESP32-WROOM-32SE (Chinthu Chotetezedwa) . . . . . . . . . . . . . . . . . . . . . . . . . 1281 2.6.23 Touch Sensor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1282 2.6.24 Chiyankhulo cha Magalimoto Awiri Awiri (TWAI) . . . . . . . . . . . . . . . . . . . . . . . . . . 1299 2.6.25 Universal Asynchronous Receiver/Transmitter (UART) . . . . . . . . . . . . . . . . . . 1317 2.7 Kukonzekera kwa Ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342 2.7.1 Chiyambi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342 2.7.2 Menyu Yokonzekera Ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342 2.7.3 Kugwiritsa ntchito sdkconfig.defaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342 2.7.4 Kconfig Formatting Malamulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1343 2.7.5 Kugwirizana Kwambuyo Kwazosankha za Kconfig . . . . . . . . . . . . . . . . . . . . . . . . 1343 2.7.6 Zosankha Zosintha Zokhudza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1343 2.8 Provisioning API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1647 2.8.1 Kulumikizana kwa Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1647 2.8.2 Kupereka Mgwirizano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1665 2.8.3 Kupereka kwa Wi-Fi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1669 2.9 API Yosungira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FileSystem Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1691 2.9.2 Zopangira Zopangira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1699 2.9.3 Laibulale Yosungirako yosasunthika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1703 2.9.4 NVS Partition Generator Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1725 2.9.5 SD/SDIO/MMC Dalaivala . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1730 2.9.6 SPI Flash API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1744 2.9.7 SPIFFS Filedongosolo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1780 2.9.8 Zowona filechigawo chadongosolo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1784 2.9.9 Wear Leveling API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1800 2.10 System API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1803 2.10.1 Mtundu Wazithunzi Zapulogalamu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1803 2.10.2 Kutsata Mlingo wa Ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1808 2.10.3 Ntchito yoyimba ndi stack yakunja. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1813 2.10.4 Chip Revision. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1815 2.10.5 Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1817 2.10.6 Woyang'anira eFuse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1826 2.10.7 Makhodi Olakwika ndi Ntchito Zothandizira. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1846
ii

2.10.8 ESP HTTPS OTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1849 2.10.9 Laibulale ya Chochitika Chozungulira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1856 2.10.10 FreeRTOS (Overview). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1869 2.10.11 FreeRTOS (ESP-IDF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1871 2.10.12 FreeRTOS (Zowonjezera Zowonjezera) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1988 2.10.13 Kugawa kwa Memory Mulu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2008 2.10.14 Mulu wa Memory Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2021 2.10.15 High Resolution Timer (ESP Timer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2032 2.10.16 Ma API Amkati ndi Osakhazikika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2038 2.10.17 Inter-Processor Itanani . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2040 2.10.18 Kugawa kwapakati. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2045 2.10.19 Laibulale yodula mitengo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2051 2.10.20 Miscellaneous System APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2058 2.10.21 Over The Air Updates (OTA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2073 2.10.22 Ntchito Yowunika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2084 2.10.23 Kuwongolera Mphamvu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2087 2.10.24 POSIX Ulusi Wothandizira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2093 2.10.25 Nambala Yosasinthika. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2097 2.10.26 Njira Zogona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2099 2.10.27 Maluso a SoC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2111 2.10.28 Nthawi Yadongosolo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2121 2.10.29 The himem allocation API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2126 2.10.30 ULP Coprocessor mapulogalamu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2129 2.10.31 Alonda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2161

3 Hardware Reference

2167

3.1 Chip Series Kufananiza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2167

3.1.1 Zolemba Zogwirizana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2170

4 API Guides

2171

4.1 Laibulale Yoyang'anira Ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171

4.1.1 Paview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171

4.1.2 Njira zogwirira ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171

4.1.3 Zosankha Zosintha ndi Zodalira. . . . . . . . . . . . . . . . . . . . . . . . . . 2172

4.1.4 Momwe Mungagwiritsire Ntchito Laibulaleyi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2173

4.2 Kuyamba kwa Ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2181

4.2.1 Gawo loyambatagndi bootloader. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2182

4.2.2 Chachiwiri stagndi bootloader. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2182

4.2.3 Kuyambitsa ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2183

4.3 Bluetooth® Classic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2184

4.3.1 Paview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2184

4.4 Bluetooth® Low Energy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2186

4.4.1 Paview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2186

4.4.2 Yambani . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2191

4.4.3 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2240

4.5 Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2284

4.5.1 Kugwirizana kwa Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2285

4.5.2 Log Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2285

4.5.3 Kukhazikitsanso fakitale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2286

4.5.4 Yambirani kuchokera ku Mayeso Firmware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2286

4.5.5 Kubwereranso. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287

4.5.6 Woyang'anira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287

4.5.7 Kukula kwa Bootloader. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287

4.5.8 Fast jombo kuchokera Kugona Kwakukulu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287

4.5.9 Custom bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287

4.6 Pangani dongosolo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2288

4.6.1 Paview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2288

4.6.2 Kugwiritsa Ntchito Build System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2289

iii

4.6.3 Eksampndi Project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2291 4.6.4 Project CMakeLists File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2291 4.6.5 Chigawo CMakeLists Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2293 4.6.6 Kukonzekera Kwachigawo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2295 4.6.7 Tanthauzo la Preprocessor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2295 4.6.8 Zofunikira Zagawo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2295 4.6.9 Kupitilira Mbali za Ntchitoyi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2299 4.6.10 Zosintha Zokha Zokha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2300 4.6.11 Kuthetsa zolakwika CMake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2300 4.6.12 Eksample Component CMakeLists. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2301 4.6.13 Zosasintha za sdkconfig. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2305 4.6.14 Makambirano onyezimira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2305 4.6.15 Kumanga Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2306 4.6.16 Kulemba Koyera CPangani Zigawo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2306 4.6.17 Kugwiritsa Ntchito Ntchito Zachipani Chachitatu CPangani Ntchito Zokhala ndi Zigawo . . . . . . . . . . . . . . . . . . . 2306 4.6.18 Kugwiritsa Ntchito Ma library Omangidwa Ndi Magawo . . . . . . . . . . . . . . . . . . . . . . . . . 2307 4.6.19 Kugwiritsa Ntchito ESP-IDF mu Mapulojekiti Amakonda CMake . . . . . . . . . . . . . . . . . . . . . . . . . 2307 4.6.20 ESP-IDF CMake Build System API . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2308 4.6.21 File Globbing & Zowonjezera Zomanga. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2312 4.6.22 Pangani Metadata Yadongosolo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2313 4.6.23 Pangani Zamkatimu Zamkati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2313 4.6.24 Kusamuka kuchokera ku ESP-IDF GNU Pangani System . . . . . . . . . . . . . . . . . . . . . . . 2315 4.7 Kutaya Kwambiri. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2316 4.7.1 Kupitiliraview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2316 4.7.2 Masanjidwe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2317 4.7.3 Sungani dambo lalikulu kuti muwale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2317 4.7.4 Sindikizani dambo loyambira ku UART. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2318 4.7.5 ROM Ntchito mu Backtraces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2318 4.7.6 Kutaya zosinthika pakufunidwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2318 4.7.7 Kuthamanga espcoredump.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2319 4.8 Tulo Lakuya Amadzuka. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.1 Malamulo a Zikwapu Zake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.2 Kugwiritsa Ntchito Stub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.3 Kuyika Khodi Mu Memory ya RTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.4 Kukweza Deta mu Memory ya RTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2323 4.8.5 CRC Yang'anani Ma Wake Stubs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2323 4.8.6 Eksample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2323 4.9 Kusamalira Zolakwa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2324 4.9.1 Kupitiliraview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2324 4.9.2 Zizindikiro zolakwika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2324 4.9.3 Kutembenuza manambala olakwika kukhala mauthenga olakwika. . . . . . . . . . . . . . . . . . . . . . . . . . 2324 4.9.4 ESP_ERROR_CHECK zazikulu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.5 ESP_ERROR_CHECK_WITHOUT_ABORT zazikulu . . . . . . . . . . . . . . . . . . . . . 2325 4.9.6 ESP_RETURN_ON_ERROR zazikulu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.7 ESP_GOTO_ON_ERROR zazikulu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.8 ESP_RETURN_ON_FALSE zazikulu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.9 ESP_GOTO_ON_FALSE zazikulu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.10 ONANI MACROS Eksamples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2326 4.9.11 Zolakwika zogwirira ntchito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2326 4.9.12 C++ Kupatulapo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2327 4.10 ESP-WIFI-MESH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2327 4.10.1 Kupitiliraview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2327 4.10.2 Chiyambi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2328 4.10.3 Malingaliro a ESP-WIFI-MESH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2329 4.10.4 Kumanga Network. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2334 4.10.5 Kuwongolera Netiweki . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2339 4.10.6 Kutumiza kwa Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2342 4.10.7 Kusintha kwa Channel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2344
iv

4.10.8 Magwiridwe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2347 4.10.9 Mfundo Zina. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2348 4.11 Kusamalira Zochitika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2348 4.11.1 Wi-Fi, Efaneti, ndi Zochitika za IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2348 4.11.2 Mesh Zochitika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2349 4.11.3 Zochitika za Bluetooth. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12 Zolakwa Zowopsa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.1 Kupitiliraview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.2 Panic Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.3 Lembani Kutaya ndi Kumbuyo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2351 4.12.4 GDB Stub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2353 4.12.5 RTC Watchdog Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2354 4.12.6 Guru Kusinkhasinkha Zolakwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2354 4.12.7 Zolakwa Zina Zakupha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2356 4.13 Flash Encryption. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2358 4.13.1 Chiyambi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2359 4.13.2 Ma eFuse Oyenera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2359 4.13.3 Njira Yakubisa Kung'anima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2360 4.13.4 Kusintha kwa Flash Encryption. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2360 4.13.5 Zolephera zotheka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2366 4.13.6 ESP32 Mawonekedwe a Kubisa kwa Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2368 4.13.7 Kuwerenga ndi Kulemba Deta mu Kung'anima Kobisika . . . . . . . . . . . . . . . . . . . . . . . 2368 4.13.8 Kusintha Kung'anima Kwachinsinsi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2369 4.13.9 Kuletsa Kubisa kwa Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2369 4.13.10 Mfundo Zazikulu Za Kubisa Kwa Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2370 4.13.11 Zochepera pa Kubisa kwa Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2370 4.13.12 Flash Encryption ndi Boot Yotetezedwa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2371 4.13.13 Zapamwamba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2371 4.13.14 Tsatanetsatane waukadaulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2373 4.14 Chidule cha Hardware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2373 4.14.1 Zomangamanga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2374 4.14.2 LL (Low Level) Wosanjikiza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2375 4.14.3 HAL (Hardware Abstraction Layer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2376 4.15 Zosokoneza Zapamwamba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2377 4.15.1 Kusokoneza Magawo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2377 4.15.2 Zolemba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TAG Kuthetsa vuto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2378 4.16.1 Chiyambi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2378 4.16.2 Momwe Zimagwirira Ntchito? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2379 4.16.3 Kusankha JTAG Adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2380 4.16.4 Kukhazikitsa kwa OpenOCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2380 4.16.5 Kukonza Cholinga cha ESP32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2380 4.16.6 Kuyambitsa Debugger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2386 4.16.7 Kuthetsa vuto Eksamples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2386 4.16.8 Kumanga OpenOCD kuchokera ku Magwero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2386 4.16.9 Maupangiri ndi Zovuta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2391 4.16.10 Zolemba Zogwirizana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2396 4.17 Linker Script Generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2421 4.17.1 Kupitiliraview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2421 4.17.2 Kuyamba Mwamsanga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2421 4.17.3 Linker Script Generation Internals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2424 4.18 lIP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2430 4.18.1 Ma API Othandizira. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2430 4.18.2 BSD Sockets API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2431 4.18.3 Netconn API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2435 4.18.4 lwIP Ntchito ya FreeRTOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2435 4.18.5 IPv6 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2435 4.18.6 esp-lwip zosintha makonda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2436
v

4.18.7 Kukhathamiritsa Kwantchito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2438 4.19 Mitundu Yakukumbukira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2439
4.19.1 DRAM (Data RAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2439 4.19.2 IRAM (Malangizo RAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2440 4.19.3 IROM (code yochitidwa kuchokera ku flash) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.4 DROM (deta yosungidwa mu flash) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.5 RTC Slow memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.6 RTC FAST kukumbukira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.7 Chofunikira Chokwanira cha DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.8 DMA Buffer mu stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2442 4.20 OpenThread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2442 4.20.1 Mitundu ya OpenThread stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2443 4.20.2 Momwe Mungalembere OpenThread Application . . . . . . . . . . . . . . . . . . . . . . . . . 2443 4.20.3 Njira ya OpenThread Border. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2444 4.21 Magawo Ogawa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2444 4.21.1 Kupitiliraview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2445 4.21.2 Matebulo Ogawikana Omangidwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2445 4.21.3 Kupanga Matebulo Amakonda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2445 4.21.4 Kupanga Binary Partition Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2448 4.21.5 Macheke Kukula kwa Gawo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2448 4.21.6 Kuwunikira tebulo logawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2449 4.21.7 Chida Chogawa (parttool.py) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2449 4.22 Magwiridwe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2450 4.22.1 Momwe Mungakulitsire Magwiridwe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2450 4.22.2 Atsogoleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2451 4.23 RF kusinthidwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2468 4.23.1 Kusintha pang'ono . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2468 4.23.2 Kuwongolera kwathunthu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.23.3 Palibe kusanja. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.23.4 PHY deta yoyambitsa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.23.5 API Buku . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.24 Boot Yotetezedwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2472 4.24.1 Mbiri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2472 4.24.2 Njira Yotetezedwa Yoyambira Yathaview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2473 4.24.3 Makiyi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2473 4.24.4 Bootloader Kukula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2474 4.24.5 Momwe Mungayambitsire Chitetezo Chotetezedwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2474 4.24.6 Re-Flashable Software Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2475 4.24.7 Kupanga Kiyi Yosaina Yotetezedwa ya Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2475 4.24.8 Kusayina Kwakutali kwa Zithunzi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2475 4.24.9 Njira Zabwino Kwambiri za Boot Yotetezedwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2476 4.24.10 Tsatanetsatane waukadaulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2476 4.24.11 Boot Yotetezedwa & Kubisa kwa Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2477 4.24.12 Kutsimikizika kwa Pulogalamu Yosaina Popanda Boot Yotetezedwa ndi Hardware. . . . . . . . . . . . . . . . . . 2478 4.24.13 Zapamwamba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2478 4.25 Chitetezo Chotetezedwa V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2478 4.25.1 Mbiri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2479 4.25.2 Advantages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2479 4.25.3 Njira Yotetezedwa ya Boot V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2479 4.25.4 Siginecha Block Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2480 4.25.5 Padding Yotetezedwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2480 4.25.6 Kutsimikizira Chizindikiro Chosaina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.7 Kutsimikizira Chithunzi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.8 Bootloader Kukula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.9 Kugwiritsa ntchito eFuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.10 Momwe Mungayambitsire Chitetezo Chotetezedwa V2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.11 Zoletsa pambuyo pa Boot Yotetezedwa yayatsidwa. . . . . . . . . . . . . . . . . . . . . . . . . . 2482 4.25.12 Kupanga Kiyi Yosaina Yotetezedwa ya Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2482
vi

4.25.13 Kusaina kwakutali kwa Zithunzi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2483 4.25.14 Njira Zabwino Kwambiri za Boot Yotetezedwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2484 4.25.15 Tsatanetsatane waukadaulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2484 4.25.16 Boot Yotetezedwa & Kubisa kwa Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2484 4.25.17 Chitsimikizo Chosaina Pulogalamu Yopanda Boot Yotetezedwa ndi Hardware. . . . . . . . . . . . . . . . . . 2484 4.25.18 Zapamwamba Zapamwamba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2485 4.26 Thandizo la RAM Yakunja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2485 4.26.1 Chiyambi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2485 4.26.2 Zida Zamagetsi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2485 4.26.3 Kukonza RAM Yakunja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2486 4.26.4 Zoletsa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2487 4.26.5 Kulephera kuyambitsa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.26.6 Chip Revisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.27 Ulusi Wosungirako M'deralo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.27.1 Kupitiliraview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.27.2 FreeRTOS Native API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.27.3 Pthread API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.27.4 C11 Muyezo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.28 Zida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.28.1 IDF Frontend - idf.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.28.2 Chithunzi cha IDF Docker. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2493 4.28.3 IDF Windows Installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2495 4.28.4 Woyang'anira Chigawo cha IDF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2496 4.28.5 IDF Clang Tidy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2497 4.28.6 Zida Zotsitsa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2498 4.29 Kuyesa kwa Magawo mu ESP32. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2512 4.29.1 Mayesero Achizolowezi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2512 4.29.2 Milandu Yoyesera Zida Zambiri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2513 4.29.3 Mipikisanotage Mayeso Oyesa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2514 4.29.4 Mayesero a Zolinga Zosiyana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2514 4.29.5 Ntchito Yoyeserera Yomanga Unit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2515 4.29.6 Kuthamanga kwa Mayeso a Unit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2515 4.29.7 Khodi Yanthawi ndi Cache Compensed Timer . . . . . . . . . . . . . . . . . . . . . . . 2516 4.29.8 Zonyoza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2517 4.30 Unit Testing pa Linux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2519 4.30.1 Mayeso Ophatikizidwa a Mapulogalamu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2519 4.30.2 Mayeso a IDF Unit pa Linux Host. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2520 4.31 Woyendetsa Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.1 ESP32 Wi-Fi Mndandanda wa Zinthu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.2 Momwe Mungalembere Wi-Fi Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.3 ESP32 Wi-Fi API Khodi Yolakwika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.4 ESP32 Wi-Fi API Parameter Kuyambitsa. . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.5 ESP32 Wi-Fi Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.6 ESP32 Wi-Fi Kufotokozera Kwa Zochitika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2523 4.31.7 ESP32 Wi-Fi Station General Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . 2526 4.31.8 ESP32 Wi-Fi AP General Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.9 ESP32 Wi-Fi Jambulani . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.10 ESP32 Wi-Fi Station yolumikiza Scenario . . . . . . . . . . . . . . . . . . . . . . . . . 2536 4.31.11 ESP32 Wi-Fi Station Kulumikiza Pamene Ma AP Angapo Apezeka. . . . . . . . . . . . . 2543 4.31.12 Wi-Fi Lumikizaninso. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.13 Wi-Fi Beacon Timeout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.14 ESP32 Kusintha kwa Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.15 Wi-Fi Easy ConnectTM (DPP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.16 Wireless Network Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.17 Kuyeza kwa Zida Zapawailesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.18 Kusintha Kwachangu kwa BSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2550 4.31.19 ESP32 Wi-Fi Njira Yosungira Mphamvu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2550 4.31.20 ESP32 Wi-Fi Kudutsa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vii

4.31.21 Wi-Fi 80211 Paketi Tumizani. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2552 4.31.22 Wi-Fi Sniffer Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2554 4.31.23 Ma Antena Angapo a Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2554 4.31.24 Wi-Fi Channel State Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2556 4.31.25 Wi-Fi Channel State Information Konzani . . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.26 Wi-Fi HT20/40 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.27 Wi-Fi QoS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.28 Wi-Fi AMSDU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.29 Chidutswa cha Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.30 Wolembetsa pa WPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.31 Kugwiritsa Ntchito Wi-Fi Buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.32 Momwe Mungasinthire Mayendedwe a Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2559 4.31.33 Wi-Fi Menuconfig. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2562 4.31.34 Kuthetsa mavuto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2565 4.32 Chitetezo cha Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2568 4.32.1 ESP32 Zotetezedwa za Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2568 4.32.2 Mafelemu Otetezedwa Otetezedwa (PMF) . . . . . . . . . . . . . . . . . . . . . . . . . . . 2571 4.32.3 WiFi Enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2572 4.32.4 WPA3-Payekha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2572 4.32.5 Wi-Fi Yowonjezera OpenTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2573 4.33 RF Kukhala Pamodzi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2573 4.33.1 Kupitiliraview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2574 4.33.2 Zochitika Zogwirizana Zogwirizana za ESP32. . . . . . . . . . . . . . . . . . . . . . . . . 2574 4.33.3 Kukhalira limodzi Njira ndi Ndondomeko . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2574 4.33.4 Momwe Mungagwiritsire Ntchito Chigawo Chogwirizana . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2576 4.34 Zomangamanga Zobwerezedwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2577 4.34.1 Chiyambi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2577 4.34.2 Zifukwa zomanga zosapangana . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2577 4.34.3 Kuthandizira zomanganso mu ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . . . . 2577 4.34.4 Momwe zomanga zopangitsira zimakwaniritsidwa. . . . . . . . . . . . . . . . . . . . . . . . . . . . 2578 4.34.5 Zomanganso zobwezeredwa ndi kukonza zolakwika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2578 4.34.6 Zinthu zomwe zimakhudzabe zomanga zopangika . . . . . . . . . . . . . . . . . . . . . . . . 2578 4.35 Maupangiri Ogwiritsa Ntchito Mphamvu Zochepa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2578

5 Maupangiri osamukira

2579

5.1 ESP-IDF 5.x Maupangiri Osamuka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2579

5.1.1 Kusamuka kuchokera ku 4.4 kupita ku 5.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2579

6 Ma library ndi Frameworks

2611

6.1 Cloud Frameworks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

6.1.1 ESP RainMaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

6.1.2 AWS IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

6.1.3 Azure IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

6.1.4 Google IoT Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

6.1.5 Aliyun IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

6.1.6 Joylink IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

6.1.7 Tencent IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612

6.1.8 Tencentyun IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612

6.1.9 Baidu IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612

6.2 Espressifns Frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612

6.2.1 Espressif Audio Development Framework . . . . . . . . . . . . . . . . . . . . . . . . . 2612

6.2.2 ESP-CSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612

6.2.3 Espressif DSP Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612

6.2.4 ESP-WIFI-MESH Development Framework . . . . . . . . . . . . . . . . . . . . . . . . 2613

6.2.5 ESP-WHO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613

6.2.6 ESP RainMaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613

6.2.7 ESP-IoT-Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613

6.2.8 ESP-Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613

viii

6.2.9 ESP-BSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2614

7 Zopereka Zothandizira

2615

7.1 Momwe Mungathandizire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2615

7.2 Musanapereke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2615

7.3 Dongosolo Lakufunsira. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2615

7.4 Gawo Lalamulo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2616

7.5 Zolemba Zogwirizana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2616

7.5.1 Espressif IoT Development Framework Style Guide . . . . . . . . . . . . . . . . . . . . 2616

7.5.2 Ikani Hook yokonzekeratu polojekiti ya ESP-IDF. . . . . . . . . . . . . . . . . . . . . . . 2623

7.5.3 Documenting Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2624

7.5.4 Kupanga Eksamples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2629

7.5.5 API Documentation Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2630

7.5.6 Mgwirizano wa Wothandizira. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2632

7.5.7 Maupangiri a Mutu wa Copyright . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2634

Mayeso a 7.5.8 ESP-IDF ndi Pytest Guide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2635

8 Mabaibulo a ESP-IDF

2645

8.1 Zotulutsidwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645

8.2 Ndiyenera Kuyamba Ndi Mtundu Wanji? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645

8.3 Versioning Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645

8.4 Nthawi Zothandizira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2646

8.5 Kuyang'ana Mtundu Watsopano. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2647

8.6 Git Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2648

8.7 Kusintha ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2648

8.7.1 Kusintha Kutulutsidwa Kokhazikika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649

8.7.2 Kukonzanso ku Mtundu Wotulutsidwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649

8.7.3 Kusinthidwa ku Nthambi Yabwino. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649

8.7.4 Kusintha ku Nthambi Yotulutsidwa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2650

9 Zida

2651

9.1 PlatformIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2651

9.1.1 Kodi PlatformIO ndi chiyani? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2651

9.1.2 Kuyika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2651

9.1.3 Kusintha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652

9.1.4 Maphunziro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652

9.1.5 Pulojekiti Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652

9.1.6 Njira Zotsatira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652

9.2 Maulalo Othandiza. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652

10 Maumwini ndi Ziphatso

2653

10.1 Maumwini a Mapulogalamu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2653

10.1.1 Zigawo za Firmware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2653

10.1.2 Zolemba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2654

10.2 ROM Source Code Copyrights. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2654

10.3 Xtensa libhal MIT License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

10.4 TinyBasic Plus MIT License. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

10.5 TJpgDec License. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

11 Za

2657

12 Kusintha Pakati pa Zinenero

2659

Mlozera

2661

Mlozera

2661

ix

x

M'ndandanda wazopezekamo
Izi ndi zolembedwa za Espressif IoT Development Framework (esp-idf). ESP-IDF ndiye maziko ovomerezeka a ESP32, ESP32-S ndi ESP32-C Series SoCs. Chikalatachi chikufotokoza kugwiritsa ntchito ESP-IDF ndi ESP32 SoC.

Yambanipo

API Reference

Ma API Guides

Espressif Systems

1 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

M'ndandanda wazopezekamo

Espressif Systems

2 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1
Yambanipo
Chikalatachi chapangidwa kuti chikuthandizeni kukhazikitsa malo opangira mapulogalamu a hardware kutengera chip ESP32 cholembedwa ndi Espressif. Pambuyo pake, wosavuta wakaleample ikuwonetsani momwe mungagwiritsire ntchito ESP-IDF (Espressif IoT Development Framework) pokonza menyu, kenako pomanga ndi kuwunikira fimuweya pa bolodi la ESP32.
Zindikirani: Izi ndi zolembedwa za mtundu wokhazikika wa v5.0.9 wa ESP-IDF. Mabaibulo ena a ESP-IDF aliponso.
1.1 Mawu Oyamba
ESP32 ndi makina pa chip omwe amaphatikiza zinthu zotsatirazi: · Wi-Fi (2.4 GHz band) · Bluetooth · Dual high performance Xtensa® 32-bit LX6 CPU cores · Ultra Low Power co-processor · Zotumphukira zingapo
Mothandizidwa ndi ukadaulo wa 40 nm, ESP32 imapereka nsanja yolimba, yophatikizika kwambiri, yomwe imathandiza kukwaniritsa zofuna zosalekeza za kugwiritsa ntchito mphamvu moyenera, kapangidwe kake, chitetezo, magwiridwe antchito apamwamba, komanso kudalirika. Espressif imapereka zida zoyambira ndi mapulogalamu kuti zithandizire opanga mapulogalamu kuzindikira malingaliro awo pogwiritsa ntchito zida za ESP32. Mapangidwe a mapulogalamu a Espressif adapangidwa kuti apange mapulogalamu a Internetof-Things (IoT) okhala ndi Wi-Fi, Bluetooth, kasamalidwe ka mphamvu ndi zina zingapo zamakina.
1.2 Zomwe Mukufuna
1.2.1 Hardware
Chithunzi cha ESP32. · Chingwe cha USB - USB A / yaying'ono USB B. · Makompyuta omwe ali ndi Windows, Linux, kapena macOS.
Chidziwitso: Pakadali pano, ena mwama board otukula akugwiritsa ntchito zolumikizira za USB Type C. Onetsetsani kuti muli ndi chingwe choyenera cholumikizira bolodi lanu!
Ngati muli ndi imodzi mwama board a ESP32 ovomerezeka omwe alembedwa pansipa, mutha kudina ulalo kuti mudziwe zambiri za hardware.
3

Mutu 1. Yambani
ESP32-DevKitS(-R)
Bukuli limapereka chidziwitso pa ESP32-DevKitS(-R), bolodi yowunikira ya ESP32 yopangidwa ndi Espressif. ESP32-DevKitS(-R) ndi kuphatikiza kwa mayina awiri a bolodi: ESP32-DevKitS ndi ESP32-DevKitS-R. S imayimira akasupe, ndipo R imayimira WROVER.

ESP32-DevKitS

ESP32-DevKitS-R

Chikalatachi chili ndi zigawo zazikuluzikulu izi: · Chiyambi: Kupereka nthawi yomalizaview ya ESP32-DevKitS(-R) ndi malangizo a hardware/software kuti muyambe. · Hardware Reference: Imapereka zambiri za ESP32-DevKitS(-R)ns hardware. · Zolemba Zofananira: Amapereka maulalo ku zolembedwa zofananira.

Chiyambi Gawoli likufotokoza momwe mungayambitsire ESP32-DevKitS(-R). Imayamba ndi zigawo zingapo zoyambira za ESP32-DevKitS(-R), kenako Gawo Momwe Mungatsegule Board imapereka malangizo amomwe mungayikitsire gawo pa ESP32-DevKitS(-R), konzekerani, ndi kung'anima fimuweya pamenepo.

Zathaview ESP32-DevKitS(-R) ndi Espressifns flashing board yopangidwira ESP32. Itha kugwiritsidwa ntchito kuwunikira gawo la ESP32 popanda kusinthanitsa gawoli kumagetsi ndi mizere yama siginecha. Ndi gawo lokhazikitsidwa, ESP32-DevKitS(-R) itha kugwiritsidwanso ntchito ngati bolodi lachitukuko laling'ono ngati ESP32-DevKitC.
Ma board a ESP32-DevKitS ndi ESP32-DevKitS-R amasiyana malinga ndi mapini a kasupe kuti agwirizane ndi ma module a ESP32 otsatirawa.
ESP32-DevKitS: ESP32-WROOM-32 ESP32-WROOM-32D ESP32-WROOM-32U ESP32-SOLO-1 ESP32-WROOM-32E ESP32-WROOM-32UE
ESP32-DevKitS-R: ESP32-WROVER (PCB & IPEX) ESP32-WROVER-B (PCB & IPEX) ESP32-WROVER-E ESP32-WROVER-IE
Kuti mudziwe zambiri za ma module apamwamba, chonde onani ma ESP32 Series Modules.

Kufotokozera kwa Zigawo

Espressif Systems

4 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Chithunzi 1: ESP32-DevKitS - kutsogolo

Espressif Systems

Chithunzi 2: ESP32-DevKitS-R - kutsogolo 5
Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Key Component Spring Pins 2.54 mm Mitu Yachikazi
USB-to-UART Bridge LDO yaying'ono-USB cholumikizira/Yaying'ono USB Port EN Button Boot Button
Mphamvu Pa LED

Kufotokozera Dinani gawo mkati. Zikhomo zidzakwanira mu mabowo a ma modules. Mitu yachikazi iyi imalumikizidwa ndi mapini a module omwe adayikidwa pa bolodi. Kuti mumve zambiri pamitu ya akazi, chonde onani Mitu ya Mitu. Single-chip USB kupita ku mlatho wa UART imapereka ndalama zosinthira mpaka 3 Mbps.
5V-to-3.3V low-dropout voltage regulator (LDO).
USB mawonekedwe. Kupereka mphamvu kwa bolodi komanso kulumikizana pakati pa kompyuta ndi bolodi.
Bwezerani batani.
Tsitsani batani. Kugwira pansi Boot ndiyeno kukanikiza EN kumayambitsa Firmware Download mode kuti mutsitse firmware kudzera pa serial port.
Imayatsa pomwe USB kapena magetsi alumikizidwa ndi bolodi.

Momwe Mungayambitsire Bodi Musanawonjezere ESP32-DevKitS(-R), chonde onetsetsani kuti ili bwino popanda zizindikiro zoonekeratu za kuwonongeka.
Zida Zamagetsi Zofunikira · Gawo la ESP32 lomwe mwasankha · Chingwe cha USB 2.0 (Standard-A mpaka Micro-B) · Makompyuta omwe ali ndi Windows, Linux, kapena macOS
Kukhazikitsa kwa Hardware Chonde kwezani gawo lomwe mwasankha pa ESP32-DevKitS(-R) yanu molingana ndi izi:
· Ikani gawo lanu mofatsa pa bolodi la ESP32-DevKitS(-R). Onetsetsani kuti mabowo omwe ali pagawo lanu akugwirizana ndi zikhomo za masika pa bolodi.
· Kanikizani gawo lanu pansi pa bolodi mpaka litadina. · Onani ngati onse masika zikhomo anaikapo mu maenje castellated. Ngati pali mapini a masika olakwika,
ikani m'mabowo okhala ndi ma tweezers.
Kukhazikitsa Mapulogalamu
Njira Yosankhidwiratu Chitukuko cha ESP-IDF chimapereka njira yomwe mumakonda yowunikira ma binaries pa ESP32-DevKitS(-R). Chonde pitilizani ku Yambirani, pomwe Kuyika kwa Gawo kudzakuthandizani kukhazikitsa malo otukuka ndikuwunikira pulogalamu yakaleamplowani ku ESP32-DevKitS(-R) yanu.
Njira ina Monga njira ina, ogwiritsa ntchito Windows amatha kuwunikira ma binaries pogwiritsa ntchito Flash Download Tool. Ingotsitsani, tsegulani, ndikutsatira malangizo omwe ali mufoda ya doc.
Chidziwitso: 1. Kuwunikira bayinare files, ESP32 iyenera kukhazikitsidwa ku Firmware Download mode. Izi zitha kuchitika pogwiritsa ntchito chida chong'anima zokha, kapena pogwira batani la Boot ndikudina batani la EN. 2. Pambuyo kuthwanima bayinare files, Flash Download Tool iyambitsanso gawo lanu la ESP32 ndikuyambitsa pulogalamu yowunikira mwachisawawa.

Zamkatimu za Board Dimensions ndi Kupaka

Espressif Systems

6 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambitsani Chithunzi 3: ESP32-DevKitS makulidwe a board - kumbuyo

Espressif Systems

Chithunzi 4: ESP32-DevKitS-R miyeso ya board - kumbuyo 7
Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Maoda ogulitsa Ngati muyitanitsa ma sampLes, ESP32-DevKitS(-R) iliyonse imabwera mu phukusi la munthu aliyense mu thumba la antistatic kapena phukusi lililonse kutengera wogulitsa. Pazamalonda ogulitsa, chonde pitani ku https://www.espressif.com/en/contact-us/get-samples.
Maoda Ogulitsa Zinthu Zambiri Mukayitanitsa zambiri, matabwa amabwera m'mabokosi akulu akulu. Pamaoda ogulitsa, chonde pitani ku https://www.espressif.com/en/contact-us/sales-questions.
Hardware Reference
Chojambula cha block A block block pansipa chikuwonetsa zigawo za ESP32-DevKitS(-R) ndi kulumikizana kwake.

Chithunzi 5: ESP32-DevKitS(-R) (dinani kuti mukulitse)
Zosankha Zopangira Mphamvu Pali njira zitatu zoperekera mphamvu ku bolodi: · Micro USB port, magetsi osakhazikika · 5V ndi GND mapini amutu · 3V3 ndi ma pin amutu a GND
Ndikulangizidwa kugwiritsa ntchito njira yoyamba: doko la Micro USB.

Espressif Systems

.

Chizindikiro cha chizindikiro

Chithunzi cha L1 3V3 VDD 3V3

L2 EN CHIP_PU

L3 VP SENSOR_VP

L4 VN SENSOR_VN

L5 34

Chithunzi cha GPIO34

L6 35

Chithunzi cha GPIO35

L7 32

Chithunzi cha GPIO32

L8 33

Chithunzi cha GPIO33

ikupitilira patsamba lotsatira

8 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Gulu 1 likupitilira kuchokera patsamba lapitalo

.

Chizindikiro cha chizindikiro

L9 25

Chithunzi cha GPIO25

L10 26

Chithunzi cha GPIO26

L11 27

Chithunzi cha GPIO27

L12 14

Chithunzi cha GPIO14

L13 12

Chithunzi cha GPIO12

L14 GND

L15 13

Chithunzi cha GPIO13

L16 D2 SD_DATA2

L17 D3 SD_DATA3

L18 CMD SD_CMD

Chithunzi cha L19 5V

Zakunja 5V

R1 GND

pa 2

Chithunzi cha GPIO23

pa 3

Chithunzi cha GPIO22

R4 TX U0TXD

Mtengo wa R5 RX U0RXD

pa 6

Chithunzi cha GPIO21

R7 GND

pa 8

Chithunzi cha GPIO19

pa 9

Chithunzi cha GPIO18

pa 10

Chithunzi cha GPIO5

pa 11

Chithunzi cha GPIO17

pa 12

Chithunzi cha GPIO16

pa 13

Chithunzi cha GPIO4

pa 14

Chithunzi cha GPIO0

pa 15

Chithunzi cha GPIO2

pa 16

Chithunzi cha GPIO15

R17 D1 SD_DATA1

R18 D0 SD_DATA0

R19 CLK SD_CLK

Zolemba Zamutu Pazithunzi za midadada yamutu, chonde onani Kufotokozera kwa Zigawo.

Zolemba Zogwirizana
· ESP32-DevKitS(-R) Schematics (PDF) · ESP32 Datasheet (PDF) · ESP32-WROOM-32 Datasheet (PDF) · ESP32-WROOM-32D & ESP32-WROOM-32U Datasheet (PDF) · ESP32-SOLO-1 Datasheet · ESPROOM-W PDF (32PDF) ESP32-WROVER-B Datasheet (PDF) · ESP Product Selector

ESP32-DevKitM-1

Bukuli likuthandizani kuti muyambe ndi ESP32-DevKitM-1 ndipo likupatsaninso zambiri zakuya.
ESP32-DevKitM-1 ndi gulu lachitukuko la ESP32-MINI-1(1U) lopangidwa ndi Espressif. Mapini ambiri a I/O amathyoledwa pamitu ya pini mbali zonse ziwiri kuti azitha kulumikizana mosavuta. Ogwiritsa ntchito amatha kulumikiza zotumphukira ndi mawaya odumphira kapena kukwera ESP32-DevKitM-1 pa bolodi.

Espressif Systems

9 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

ESP32-DevKitM-1 - kutsogolo

ESP32-DevKitM-1 - isometric

Chikalatachi chili ndi zigawo zikuluzikulu izi: · Kuyamba: Kupereka nthawi yomalizaview ya ESP32-DevKitM-1 ndi malangizo a hardware/software kuti muyambe. · Maupangiri a Hardware: Amapereka zambiri zamtundu wa ESP32-DevKitM-1ns. · Zolemba Zofananira: Amapereka maulalo okhudzana ndi documentaiton.

Chiyambi Gawoli likufotokoza momwe mungayambitsire ESP32-DevKitM-1. Imayamba ndi magawo oyambira ochepa okhudza ESP32-DevKitM-1, kenako Gawo Loyambira Ntchito Yopanga Ntchito imapereka malangizo amomwe mungakhazikitsire zida zoyambira komanso momwe mungatsegulire fimuweya pa ESP32-DevKitM-1.

Zathaview Ili ndi bolodi laling'ono komanso losavuta lomwe limakhala ndi:
· ESP32-MINI-1, kapena ESP32-MINI-1U module · USB-to-serial programming interface yomwe imaperekanso mphamvu pa bolodi · pin headers · pushbuttons for reset and activation of Firmware Download mode · zigawo zina zingapo

Zamkatimu ndi Kupaka

Maoda ogulitsa Ngati muyitanitsa ma sampLes, ESP32-DevKitM-1 iliyonse imabwera m'thumba la antistatic kapena phukusi lililonse kutengera wogulitsa wanu.
Pazamalonda ogulitsa, chonde pitani ku https://www.espressif.com/en/contact-us/get-samples.

Maoda Ogulitsa Zinthu Zambiri Mukayitanitsa zambiri, matabwa amabwera m'mabokosi akulu akulu. Pamaoda ogulitsa, chonde pitani ku https://www.espressif.com/en/contact-us/sales-questions.

Kufotokozera Zazigawo Chithunzi chotsatirachi ndi tebulo ili m'munsili likufotokoza za zigawo zikuluzikulu, mawonekedwe ndi maulamuliro a bolodi la ESP32-DevKitM-1. Timatenga bolodi ndi gawo la ESP32-MINI-1 ngati example m'zigawo zotsatirazi.

Espressif Systems

10 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Chithunzi 6: ESP32-DevKitM-1 - kutsogolo

Gawo Lofunika Pa bolodi module
5 V mpaka 3.3 V LDO Boot Button
Bwezeretsani Batani Laling'ono-USB Port
USB-to-UART Bridge 3.3 V Mphamvu Pa LED
Cholumikizira cha I/O

Kufotokozera
ESP32-MINI-1 gawo kapena ESP32-MINI-1U gawo. ESP32-MINI-1 imabwera ndi mlongoti wa PCB. ESP32-MINI-1U imabwera ndi cholumikizira chakunja cha mlongoti. Ma module awiri onse ali ndi 4 MB kung'anima mu phukusi la chip. Kuti mudziwe zambiri, chonde onani ESP32-MINI-1 & ESP32-MINI-1U Datasheet.
Wowongolera mphamvu amasintha 5 V kukhala 3.3 V.
Tsitsani batani. Kugwira pansi Boot kenako kukanikiza Bwezerani kumayambitsa Firmware Download mode kuti mutsitse firmware kudzera pa doko la serial.
Bwezerani Batani
USB mawonekedwe. Magetsi pa bolodi komanso njira yolumikizirana pakati pa kompyuta ndi chip ESP32.
Single USB-UART mlatho chip imapereka ndalama zosinthira mpaka 3 Mbps.
Imayatsa pomwe USB ilumikizidwa ndi bolodi. Kuti mudziwe zambiri, chonde onani schematics mu Zolemba Zogwirizana. Zikhomo zonse za GPIO (kupatula basi ya SPI ya kung'anima) zathyoledwa pamitu ya pini pa bolodi. Ogwiritsa ntchito amatha kukonza chip ESP32 kuti athe kugwira ntchito zingapo.

Yambitsani Ntchito Yopanga Ntchito Musanayatse ESP32-DevKitM-1 yanu, chonde onetsetsani kuti ili bwino popanda zizindikiro zoonekeratu za kuwonongeka.
Zida Zamagetsi Zofunika · ESP32-DevKitM-1 · USB 2.0 chingwe (Standard-A mpaka Micro-B) · Makompyuta omwe ali ndi Windows, Linux, kapena macOS
Kukhazikitsa Mapulogalamu Chonde pitilizani kuti Yambitsani, pomwe Kuyika Gawo kudzakuthandizani kukhazikitsa malo otukuka ndikuwunikira pulogalamu yakale.ampPitani ku ESP32-DevKitM-1 yanu.

Espressif Systems

11 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Chidziwitso: Ma board a ESP32-DevKitM-1 opangidwa pamaso pa Disembala 2, 2021 ali ndi gawo limodzi lokhazikitsidwa. Kuti mutsimikizire kuti muli ndi gawo liti, chonde onani zolembera mu PCN-2021-021. Ngati bolodi lanu lili ndi gawo limodzi loyikapo, chonde yambitsani single core mode (CONFIG_FREERTOS_UNICORE) mu menuconfig musanayatse mapulogalamu anu.
Chithunzi cha block block cha Hardware Chithunzi chomwe chili pansipa chikuwonetsa zigawo za ESP32-DevKitM-1 ndi kulumikizana kwake.

Chithunzi cha 7: ESP32-DevKitM-1
Power Source Select Pali njira zitatu zomwe zimagwirizana zoperekera mphamvu ku bolodi: · Micro USB port, magetsi osasinthika · 5V ndi GND mapini amutu · 3V3 ndi GND mapini amutu
Chenjezo: · Mphamvu zamagetsi ziyenera kuperekedwa pogwiritsa ntchito njira imodzi yokha yomwe ili pamwambapa, apo ayi bolodi ndi / kapena gwero lamagetsi likhoza kuwonongeka. · Mphamvu zamagetsi ndi doko yaying'ono USB tikulimbikitsidwa.

Kufotokozera Mapini Gome ili pansipa likupereka Dzina ndi Ntchito ya mapini mbali zonse za bolodi. Pamakonzedwe a pini zotumphukira, chonde onani ESP32 Datasheet.

Ayi.

Dzina

Mtundu

1

GND

P

2

Mtengo wa 3V3

P

Ntchito Ground 3.3 V magetsi

ikupitilira patsamba lotsatira

Espressif Systems

12 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Gulu 2 likupitilira kuchokera patsamba lapitalo

Ayi.

Dzina

Mtundu

Ntchito

3

ndi 36

I

GPIO36, ADC1_CH0, RTC_GPIO0

4

ndi 37

I

GPIO37, ADC1_CH1, RTC_GPIO1

5

ndi 38

I

GPIO38, ADC1_CH2, RTC_GPIO2

6

ndi 39

I

GPIO39, ADC1_CH3, RTC_GPIO3

7

Mtengo wa RST

I

Bwezeraninso; Pamwamba: yambitsani; Pansi: Mphamvu zazimitsa

8

ndi 34

I

GPIO34, ADC1_CH6, RTC_GPIO4

9

ndi 35

I

GPIO35, ADC1_CH7, RTC_GPIO5

10

IO32

Ine/O

GPIO32, XTAL_32K_P (32.768 kHz crystal oscillator input),

ADC1_CH4, TOUCH9, RTC_GPIO9

11

IO33

Ine/O

GPIO33, XTAL_32K_N (32.768 kHz crystal oscillator output),

ADC1_CH5, TOUCH8, RTC_GPIO8

12

IO25

Ine/O

GPIO25, DAC_1, ADC2_CH8, RTC_GPIO6, EMAC_RXD0

13

IO26

Ine/O

GPIO26, DAC_2, ADC2_CH9, RTC_GPIO7, EMAC_RXD1

14

IO27

Ine/O

GPIO27, ADC2_CH7, TOUCH7, RTC_GPIO17, EMAC_RX_DV

15

IO14

Ine/O

GPIO14, ADC2_CH6, TOUCH6, RTC_GPIO16, MMS, HSPICLK,

HS2_CLK, SD_CLK, EMAC_TXD2

16

5V

P

5 V magetsi

17

IO12

Ine/O

GPIO12, ADC2_CH5, TOUCH5, RTC_GPIO15, MTDI, HSPIQ,

HS2_DATA2, SD_DATA2, EMAC_TXD3

18

IO13

Ine/O

GPIO13, ADC2_CH4, TOUCH4, RTC_GPIO14, MTCK, HSPID,

HS2_DATA3, SD_DATA3, EMAC_RX_ER

19

IO15

Ine/O

GPIO15, ADC2_CH3, TOUCH3, RTC_GPIO13, MTDO, HSPICS0,

HS2_CMD, SD_CMD, EMAC_RXD3

20

IO2

Ine/O

GPIO2, ADC2_CH2, TOUCH2, RTC_GPIO12, HSPIWP,

HS2_DATA0, SD_DATA0

21

IO0

Ine/O

GPIO0, ADC2_CH1, TOUCH1, RTC_GPIO11, CLK_OUT1,

EMAC_TX_CLK

22

IO4

Ine/O

GPIO4, ADC2_CH0, TOUCH0, RTC_GPIO10, HSPIHD,

HS2_DATA1, SD_DATA1, EMAC_TX_ER

23

IO9

Ine/O

GPIO9, HS1_DATA2, U1RXD, SD_DATA2

24

IO10

Ine/O

GPIO10, HS1_DATA3, U1TXD, SD_DATA3

25

IO5

Ine/O

GPIO5, HS1_DATA6, VSPICS0, EMAC_RX_CLK

26

IO18

Ine/O

GPIO18, HS1_DATA7, VSPICLK

27

IO23

Ine/O

GPIO23, HS1_STROBE, VSPID

28

IO19

Ine/O

GPIO19, VSPIQ, U0CTS, EMAC_TXD0

29

IO22

Ine/O

GPIO22, VSPIWP, U0RTS, EMAC_TXD1

30

IO21

Ine/O

GPIO21, VSPIHD, EMAC_TX_EN

31

Chithunzi cha TXD0

Ine/O

GPIO1, U0TXD, CLK_OUT3, EMAC_RXD2

32

RXD0

Ine/O

GPIO3, U0RXD, CLK_OUT2

Tsatanetsatane Wakukonzanso Kwa Hardware Palibe mitundu yam'mbuyomu yomwe ilipo.
Zolemba Zogwirizana
· ESP32-MINI-1 & ESP32-MINI-1U Datasheet (PDF) · ESP32-DevKitM-1 Schematics (PDF) · ESP32-DevKitM-1 PCB layout (PDF) · ESP32-DevKitM-1 layout (DXF) – Mukhoza view ndi Autodesk Viewpa intaneti · ESP32 Datasheet (PDF) · ESP Product Selector
Pazolemba zina zamapangidwe a board, chonde titumizireni ku sales@espressif.com.

Espressif Systems

13 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Pulogalamu ya 1.2.2
Kuti muyambe kugwiritsa ntchito ESP-IDF pa ESP32, yikani mapulogalamu otsatirawa: · Toolchain kuti mupange code ya ESP32 · Pangani zida - CMake ndi Ninja kuti mupange Application yonse ya ESP32 · ESP-IDF yomwe ili ndi API (ma library library ndi code code) ya ESP32 ndi zolemba zogwiritsira ntchito Toolchain.

1.3 Kuyika
Kuti tiyike mapulogalamu onse ofunikira, timapereka njira zosiyanasiyana zothandizira ntchitoyi. Sankhani chimodzi mwazosankha zomwe zilipo.
1.3.1 IDE

Chidziwitso: Tikukulimbikitsani kukhazikitsa ESP-IDF kudzera mu IDE yomwe mumakonda.
· Pulogalamu yowonjezera ya Eclipse · VSCode Extension

1.3.2 Kuyika pamanja
Kwa ndondomeko yamanja, chonde sankhani malinga ndi dongosolo lanu.

Espressif Systems

14 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Kukhazikitsa Standard kwa Toolchain kwa Windows
Chiyambi cha ESP-IDF chimafuna zida zina zofunika kuti zikhazikike kuti mutha kupanga firmware ya tchipisi chothandizira. Zida zofunika kwambiri ndi Python, Git, cross-compilers, CMake ndi Ninja zida zomangira. Pachiyambi ichi tigwiritsa ntchito Command Prompt, koma ESP-IDF ikakhazikitsidwa mutha kugwiritsa ntchito Eclipse Plugin kapena IDE ina yojambula ndi CMake thandizo m'malo mwake. Chidziwitso: Zolepheretsa: - Njira yoyika zida za ESP-IDF ndi ESP-IDF siziyenera kupitilira zilembo 90. Kuyika njira zazitali kwambiri kungapangitse kumanga kulephera. - Njira yoyika Python kapena ESP-IDF siyenera kukhala ndi mipata yoyera kapena mabatani. - Njira yoyika Python kapena ESP-IDF siyenera kukhala ndi zilembo zapadera (nonASCII) pokhapokha ngati makina ogwiritsira ntchito asinthidwa ndi oUnicode UTF-8psupport. Woyang'anira System atha kuloleza chithandizo kudzera pa Gulu Lowongolera - Sinthani tsiku, nthawi, kapena mawonekedwe a manambala - Tabu yoyang'anira - Sinthani malo amtundu - fufuzani njira oBeta: Gwiritsani ntchito Unicode UTF-8 pakuthandizira zilankhulo zapadziko lonse lapansi - Chabwino ndikuyambitsanso kompyuta.
ESP-IDF Tools Installer Njira yosavuta yoyika zofunikira za ESP-IDFns ndikutsitsa imodzi mwa ESP-IDF Tools Installers.

Tsitsani Windows Installer
Momwe mungagwiritsire ntchito pa Online and Offline Installer Online Installer ndi yaying'ono kwambiri ndipo imalola kuyika zonse zomwe zikupezeka za ESP-IDF. Woyikirayo amatsitsa zodalira zofunika zokha kuphatikiza Git For Windows panthawi yoyika. Zosungirako zidatsitsidwa files mu bukhu la cache % userprofile%. espressif
Offline Installer sichifuna kulumikizidwa kulikonse. Choyikiracho chili ndi zonse zofunikira kuphatikiza Git For Windows.
Zigawo za installer The installer imagwiritsa ntchito zigawo zotsatirazi:
· Python Embedded · Cross-compilers · OpenOCD · CMake and Ninja build tools · ESP-IDF
Choyikiracho chimalolanso kugwiritsa ntchito chikwatu chomwe chilipo ndi ESP-IDF. Chikwatu chovomerezeka ndi %userprofile%Desktopep-idf pomwe %userprofile% ndi chikwatu chakunyumba kwanu.

Espressif Systems

15 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Kukhazikitsa Chilengedwe cha ESP-IDF Pamapeto pa kuyika mutha kuyang'ana njira Thamangani ESP-IDF PowerShell Environment kapena Thamangani ESP-IDF Command Prompt (cmd.exe). Woyikirayo adzayambitsa ESP-IDF chilengedwe mumsanga wosankhidwa. Yendetsani ESP-IDF PowerShell Environment:

Chithunzi 8: Kumaliza ESP-IDF Tools Setup Wizard with Run ESP-IDF PowerShell Environment
Thamangani ESP-IDF Command Prompt (cmd.exe):
Pogwiritsa ntchito Command Prompt Pamasitepe otsala oyambira, tidzagwiritsa ntchito Windows Command Prompt. ESP-IDF Tools Installer imapanganso njira yachidule mu menyu Yoyambira kuti mutsegule ESP-IDF Command Prompt. Njira yachiduleyi imayambitsa Command Prompt (cmd.exe) ndikuyendetsa export.bat script kukhazikitsa zosintha zachilengedwe (PATH, IDF_PATH ndi ena). M'kati mwachidziwitso ichi, zida zonse zoyikidwa zilipo. Dziwani kuti njira yachiduleyi ndi yachikwatu cha ESP-IDF chosankhidwa mu ESP-IDF Tools Installer. Ngati muli ndi zolemba zambiri za ESP-IDF pakompyuta (mwachitsanzoample, kuti mugwire ntchito ndi mitundu yosiyanasiyana ya ESP-IDF), muli ndi njira ziwiri zomwe mungagwiritse ntchito:
1. Pangani kopi ya njira yachidule yopangidwa ndi ESP-IDF Tools Installer, ndikusintha chikwatu chogwirira ntchito cha njira yachidule ya ESP-IDF yomwe mukufuna kugwiritsa ntchito.
2. Kapenanso, thamangani cmd.exe, kenako sinthani ku chikwatu cha ESP-IDF chomwe mukufuna kugwiritsa ntchito, ndikuyendetsa export.bat. Dziwani kuti mosiyana ndi njira yapitayi, njira iyi imafuna Python ndi Git kukhalapo PATH. Ngati mupeza zolakwika zokhudzana ndi Python kapena Git osapezeka, gwiritsani ntchito njira yoyamba.
Njira Zoyamba pa ESP-IDF Tsopano popeza zofunikira zonse zakwaniritsidwa, mutu wotsatira ukutsogolerani momwe mungayambitsire ntchito yanu yoyamba.

Espressif Systems

16 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambitsani Chithunzi 9: ESP-IDF PowerShell

Chithunzi 10: Kumaliza ESP-IDF Tools Setup Wizard ndi Run ESP-IDF Command Prompt (cmd.exe)

Espressif Systems

17 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Chithunzi 11: ESP-IDF Command Prompt

Espressif Systems

18 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Bukuli likuthandizani pamasitepe oyamba pogwiritsa ntchito ESP-IDF. Tsatirani bukhuli kuti muyambe pulojekiti yatsopano pa ESP32 ndikumanga, kung'anima, ndi kuyang'anira kutuluka kwa chipangizocho. Zindikirani: Ngati simunayikebe ESP-IDF, chonde pitani ku Installation ndikutsatira malangizowo kuti mupeze mapulogalamu onse ofunikira kugwiritsa ntchito bukhuli.

Yambitsani Ntchito Tsopano mwakonzeka kukonzekera pulogalamu yanu ya ESP32. Mutha kuyamba ndi getstart/hello_world project kuchokera examples directory mu ESP-IDF.
Chofunika: Dongosolo la ESP-IDF lomanga siligwirizana ndi mipata yopita ku ESP-IDF kapena mapulojekiti.
Lembani pulojekiti yoyambira/hello_world ku ~/esp chikwatu: cd %userprofile% esp xcopy /e /i %IDF_PATH%examplesget-startedhello_world moni_dziko
Zindikirani: Pali mitundu ingapo ya exampma project mu examples directory mu ESP-IDF. Mutha kukopera projekiti iliyonse monga momwe tafotokozera pamwambapa ndikuyendetsa. Ndizothekanso kupanga examples m'malo popanda kuwatengera poyamba.

Lumikizani Chipangizo Chanu Tsopano polumikizani bolodi lanu la ESP32 ku kompyuta ndikuyang'ana padoko lomwe gulu likuwonekera. Mayina amtundu wa doko amayamba ndi COM mu Windows. Ngati simukudziwa momwe mungayang'anire dzina la doko la serial, chonde lemberani ku Khazikitsani Kulumikizana kwa Serial ndi ESP32 kuti mumve zambiri.
Zindikirani: Sungani dzina la doko lili pafupi ndi momwe mungafunikire pamasitepe otsatirawa.

Konzani Pulojekiti Yanu Yang'anani ku chikwatu chanu cha hello_world, ikani ESP32 monga chandamale, ndikuyendetsa ntchito yosinthira pulojekiti menyuconfig.
Windows cd% userprofile%esphello_world idf.py set-target esp32 idf.py menuconfig
Mukatsegula pulojekiti yatsopano, muyenera kukhazikitsa chandamale ndi idf.py set-target esp32. Zindikirani kuti zomanga zomwe zilipo kale mu polojekitiyi, ngati zilipo, zidzayeretsedwa ndikuyambitsa ndondomekoyi. Cholingacho chikhoza kusungidwa pakusintha kwachilengedwe kuti mulumphe sitepe iyi nkomwe. Onani Sankhani Chip Target: set-target kuti mudziwe zambiri. Ngati masitepe am'mbuyomu achitidwa molondola, mndandanda wotsatirawu ukuwonekera: Mukugwiritsa ntchito menyuyi kukhazikitsa zosintha zenizeni, mwachitsanzo, dzina la netiweki ya Wi-Fi ndi mawu achinsinsi, liwiro la purosesa, ndi zina zambiri.ample imayenda ndi kasinthidwe kokhazikika.
Chidziwitso: Ngati mugwiritsa ntchito ESP32-DevKitC board ndi ESP32-SOLO-1 module, kapena ESP32-DevKitM-1 board yokhala ndi ESP32-MIN1-1(1U) module, chonde yambitsani single core mode (CONFIG_FREERTOS_UNICORE) mu menuconfig musanayatse ex.amples.

Espressif Systems

19 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Chithunzi 12: Kukonzekera kwa polojekiti - Zenera la kunyumba
Zindikirani: Mitundu ya menyu ikhoza kukhala yosiyana mu terminal yanu. Mutha kusintha mawonekedwe ndi njira -style. Chonde thamangani idf.py menuconfig -help kuti mudziwe zambiri.
Ngati mukugwiritsa ntchito imodzi mwama board opititsa patsogolo, mutha kufulumizitsa chitukuko chanu pogwiritsa ntchito Board Support Package. Onani Maupangiri Owonjezera kuti mudziwe zambiri.
Pangani Project Pangani projekitiyo poyendetsa:
idf.py kumanga
Lamuloli liphatikiza pulogalamuyo ndi zida zonse za ESP-IDF, kenako lipanga chojambulira, tebulo la magawo, ndi ma binaries.
$ idf.py kumanga Kuthamanga kwa cmake mu chikwatu /path/to/hello_world/build Kuchita "cmake -G Ninja -warn-uninitialized /path/to/hello_world"… Chenjezani za makhalidwe omwe sanayambike. - Yapeza Git: /usr/bin/git (yomwe yapezeka "2.17.0") - Kumanga chigawo chopanda kanthu cha aws_iot chifukwa cha kasinthidwe - Maina azinthu: ... - Njira zamagulu: ...
… (mizere yambiri yopangira makina opangira)
[527/527] Kupanga hello_world.bin esptool.py v2.3.1
Ntchito yomanga yatha. Kuti muwale, yendetsani lamulo ili: ../../../components/esptool_py/esptool/esptool.py -p (PORT) -b 921600 write_flash -flash_mode dio -flash_size detect -flash_freq 40m 0x10000 build/hello_world. bin kumanga 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/ partition-table.bin kapena thamangani 'idf.py -p PORT flash'
Ngati palibe zolakwika, kumangako kudzatha popanga firmware binary .bin files.

Espressif Systems

20 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Kung'anima pa Chipangizo Chong'anirani mabatani omwe mwangopanga kumene (bootloader.bin, partition-table.bin ndi hello_world.bin) pa bolodi lanu la ESP32 pothamanga: idf.py -p PORT [-b BAUD] flash
Sinthani PORT ndi dzina lanu la ESP32 boardns serial port. Mutha kusinthanso kuchuluka kwa baud posintha BAUD ndi kuchuluka komwe mukufuna. Mtengo wokhazikika wa baud ndi 460800. Kuti mudziwe zambiri pa mikangano ya idf.py, onani idf.py.
Zindikirani: Kuwala kosankha kumangopanga ndikuwunikira pulojekitiyo, kotero kuyendetsa idf.py build sikofunikira.

Munakumana ndi Mavuto Pamene Mukuwala? Ngati muyendetsa lamulo lomwe mwapatsidwa ndikuwona zolakwika monga asoFailed to connectp, pangakhale zifukwa zingapo za izi. Chimodzi mwazifukwa chikhoza kukhala nkhani zomwe zimakumana ndi esptool.py, zomwe zimatchedwa ndi zomangamanga kuti zikhazikitsenso chip, kugwirizana ndi ROM bootloader, ndi firmware flash. Njira imodzi yosavuta yoyesera ndikukhazikitsanso pamanja zomwe zafotokozedwa pansipa, ndipo ngati sizikuthandizani mutha kupeza zambiri zazovuta zomwe zingatheke mu Kuthetsa Mavuto.
esptool.py imakhazikitsanso ESP32 mwa kutsimikizira mizere yowongolera ya DTR ndi RTS ya USB kupita ku serial converter chip, mwachitsanzo, FTDI kapena CP210x (kuti mumve zambiri, onani Kukhazikitsa Kulumikizana Kwachinsinsi ndi ESP32). Mizere yowongolera ya DTR ndi RTS imalumikizidwanso ndi zikhomo za GPIO0 ndi CHIP_PU (EN) za ESP32, motero kusintha kwa vol.tage milingo ya DTR ndi RTS idzayambitsa ESP32 mu Firmware Download mode. Monga example, yang'anani dongosolo la ESP32 DevKitC Development board.
Nthawi zambiri, simuyenera kukhala ndi vuto ndi matabwa ovomerezeka a esp-idf. Komabe, esptool.py siyitha kukonzanso zida zanu mwazinthu zotsatirazi:
· Zida zanu zilibe mizere ya DTR ndi RTS yolumikizidwa ku GPIO0 ndi CHIP_PU · Mizere ya DTR ndi RTS imakonzedwa mosiyana · Palibe mizere yotereyi.
Kutengera mtundu wa zida zomwe muli nazo, zitha kukhala zothekanso kuyika bolodi lanu la ESP32 pamanja munjira yotsitsa Firmware (kukonzanso).
· Pama board otukuka opangidwa ndi Espressif, izi zitha kupezeka m'mabuku oyambira kapena maupangiri ogwiritsa ntchito. Za example, kuti mukonzenso bolodi lachitukuko la ESP-IDF, gwirani batani la Boot (GPIO0) ndikusindikiza batani la EN (CHIP_PU).
· Pamitundu ina ya zida, yesani kukokera GPIO0 pansi.

Ntchito Yachizolowezi Mukayaka, mudzawona chipika chofanana ndi ichi:
... esptool.py -chip esp32 -p /dev/ttyUSB0 -b 460800 -before=default_reset -after=hard_reset write_flash -flash_mode dio -flash_freq 40m -flash_size 2MB 0x8000 partition_table/load0booter1load.0 0x10000 hello_world.bin esptool.py v3.0-dev Serial port /dev/ttyUSB0 Connecting…….._ Chip ndi ESP32D0WDQ6 (revision 0) Mawonekedwe: WiFi, BT, Dual Core, Coding Scheme Palibe Crystal ndi 40MHz MAC: 24: 1b: Kukwera: 24: 0a: 1b4: 0a: 1b4 stub… Kuthamanga kwachulu… Kusintha kwa baud kukhala 460800 Zasinthidwa.
(ikupitilira patsamba lotsatira)

Espressif Systems

21 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
(kuchokera patsamba lapitalo) Kukonza kukula kwa kung'anima... Kuponderezedwa 3072 byte kufika ku 103… Kulemba pa 0x00008000… (100 %) Analemba 3072 byte (103 compressed) pa 0x00008000 mu 0.0 seconds (effective 8.8 Habit of 596) Kupsinjidwa 26096 byte kufika ku 15408… Kulemba pa 0x00001000… (100 %) Analemba 26096 byte (15408 compressed) pa 0x00001000 mu masekondi 0.4 (mogwira 546.7 kbit/s data) … Kuponderezedwa 147104 byte kufika ku 77364… Kulemba pa 0x00010000… (20 %) Kulemba pa 0x00014000… (40 %) Kulemba pa 0x00018000… (60 %) Kulemba pa 0x0001c0 (Writing at 0x0001c0) 0x00020000… (100 %) Analemba 147104 mabayiti (77364 oponderezedwa) pa 0x00010000 mu masekondi 1.9 (ogwira ntchito 615. 5 kbit/s)… Hashi ya deta yatsimikiziridwa.
Kuchoka… Kukhazikitsanso mwamphamvu kudzera pa pin ya RTS… Ndamaliza
Ngati palibe zovuta pakutha kwa kung'anima, bolodi idzayambiranso ndikuyamba theohello_worldpapplication. Ngati mukufuna kugwiritsa ntchito Eclipse kapena VS Code IDE m'malo mongoyendetsa idf.py, onani Eclipse Plugin, VSCode Extension.
Yang'anirani Zotuluka Kuti muwone ngati ohello_worldpis ikuyendadi, lembani idf.py -p PORT monitor (Osayiwala kusintha PORT ndi dzina lanu la doko).
Lamuloli likuyambitsa pulogalamu ya IDF Monitor:
$ idf.py -p monitor Kuthamanga idf_monitor mu chikwatu […]/esp/hello_world/build Kuchita “python […]/esp-idf/tools/idf_monitor.py -b 115200 […]/esp/hello_ world/build/hello_world.elf”… — idf_monitor on 115200 —– Siyani: Ctrl+] | Menyu: Ctrl+T | Thandizo: Ctrl+T kutsatiridwa ndi Ctrl+H –ets Jun 8 2016 00:22:57
rst:0x1 (POWERON_RESET), boot:0x13 (SPI_FAST_FLASH_BOOT) ets Jun 8 2016 00:22:57 ...
Pambuyo poyambira ndi zolembera zowunikira, muyenera kuwona OHello world! yosindikizidwa ndi pulogalamuyi.
… Moni Dziko Lapansi! Ikuyambiranso pakadutsa masekondi 10... Ichi ndi chip esp32 chokhala ndi 2 CPU core(ma) WiFi/BT/BLE, silicon revision 1, 2MB kung'anima kwakunja Kuchepera kwa mulu waulere: 298968 mabayiti Kuyambanso masekondi 9... Kuyambiranso mumasekondi 8... Kuyambiranso mumasekondi 7...
Kuti mutuluke kuwunika kwa IDF gwiritsani ntchito njira yachidule Ctrl+].

Espressif Systems

22 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Ngati kuwunika kwa IDF kulephera posakhalitsa kutsitsa, kapena, ngati m'malo mwa mauthenga omwe ali pamwambapa, muwona zinyalala zosasinthika zomwe zaperekedwa pansipa, bolodi lanu liyenera kugwiritsa ntchito kristalo wa 26 MHz. Mapangidwe ambiri a boardboard amagwiritsa ntchito 40 MHz, kotero ESP-IDF imagwiritsa ntchito ma frequency awa ngati mtengo wokhazikika.

Ngati muli ndi vuto ngati limeneli, chitani zotsatirazi: 1. Tulukani mu polojekiti. 2. Bwererani ku menuconfig. 3. Pitani ku config config > Hardware Settings > Main XTAL Config > Main XTAL frequency, kenako sintha CONFIG_XTAL_FREQ_SEL kukhala 26 MHz. 4. Pambuyo pake, pangani ndikuwunikiranso pulogalamuyo.
Mu mtundu waposachedwa wa ESP-IDF, ma frequency akulu a XTAL othandizidwa ndi ESP32 ndi motere:
26 MHz · 40 MHz
Zindikirani: Mutha kuphatikiza zomanga, zowunikira ndikuwunika kukhala sitepe imodzi pothamanga: idf.py -p PORT flash monitor
Onaninso: · IDF Monitor kuti mupeze njira zazifupi komanso zambiri zakugwiritsa ntchito mowunikira wa IDF. · idf.py kuti mudziwe zambiri za malamulo a idf.py ndi zosankha.
Ndizo zonse zomwe muyenera kuti muyambe ndi ESP32! Tsopano mwakonzeka kuyesa wina wakaleamples, kapena pitani mwachindunji kupanga mapulogalamu anu.
Zofunika: Zina zakaleamples sizigwirizana ndi ESP32 chifukwa zida zofunika sizikuphatikizidwa mu ESP32 kotero sizitha kuthandizidwa. Ngati kupanga example, chonde onani README file pa tebulo la Supported Targets. Ngati izi zilipo kuphatikiza chandamale cha ESP32, kapena tebulo kulibe konse, example idzagwira ntchito pa ESP32.
Malangizo Owonjezera
Nkhani zololeza /dev/ttyUSB0 Ndi magawo ena a Linux, mutha kupeza Cholephereka kutsegula doko /dev/ttyUSB0 uthenga wolakwika mukawunikira ESP32. Izi zitha kuthetsedwa powonjezera wogwiritsa ntchito pano pagulu la dialog.
Kugwirizana kwa Python ESP-IDF imathandizira Python 3.7 kapena yatsopano. Ndibwino kuti mukweze makina anu ogwiritsira ntchito kuti akhale atsopano omwe akukwaniritsa izi. Zosankha zina zikuphatikiza kuyika Python kuchokera kumagwero kapena kugwiritsa ntchito kasamalidwe ka mtundu wa Python monga pyenv.
Yambani ndi Phukusi Lothandizira Gulu Kuti mufulumizitse kujambula pama board ena achitukuko, mutha kugwiritsa ntchito Phukusi la Board Support (BSPs), zomwe zimapangitsa kuti kuyambika kwa bolodi kukhale kosavuta ngati kuyimba pang'ono.

Espressif Systems

23 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

BSP nthawi zambiri imathandizira zida zonse zoperekedwa pagulu lachitukuko. Kupatulapo tanthauzo la pinout ndi ntchito zoyambira, sitima za BSP zokhala ndi madalaivala azinthu zakunja monga masensa, mawonedwe, ma codec omvera etc. BSPs amagawidwa kudzera mu IDF Component Manager, kotero iwo angapezeke mu IDF Component Registry. Herens ndi exampMomwe mungawonjezere ESP-WROVER-KIT BSP ku polojekiti yanu: idf.py add-dependency esp_wrover_kit
Zambiri exampzochepa za kugwiritsa ntchito BSP zitha kupezeka mu BSP examples chikwatu.
Zolemba Zofananira Kwa ogwiritsa ntchito apamwamba omwe akufuna kusintha makonda oyika: · Kukonzanso zida za ESP-IDF pa Windows · Khazikitsani Kulumikizana Kwachinsinsi ndi ESP32 · Eclipse Plugin · VSCode Extension · IDF Monitor
Kusintha zida za ESP-IDF pa Windows
Ikani zida za ESP-IDF pogwiritsa ntchito script Kuchokera pa Windows Command Prompt, sinthani ku bukhu komwe ESPIDF yayikidwa. Kenako thamangani:
install.bat
Kwa Powershell, sinthani ku chikwatu komwe ESP-IDF imayikidwa. Kenako thamangani:
install.ps1
Izi zidzatsitsa ndikuyika zida zofunika kugwiritsa ntchito ESP-IDF. Ngati mtundu wa chidacho wakhazikitsidwa kale, palibe chomwe chidzachitike. Zida zimatsitsidwa ndikuyikidwa mu bukhu lomwe limatchulidwa panthawi ya ESP-IDF Tools Installer. Mwachisawawa, iyi ndi C:Userusername.espressif.
Onjezani zida za ESP-IDF ku PATH pogwiritsa ntchito choyika zida za ESP-IDF ndikupanga njira yachidule ya menyu ya oESP-IDF Command Promptp. Njira yachidule iyi imatsegula zenera la Command Prompt pomwe zida zonse zili kale
kupezeka. Nthawi zina, mungafune kugwira ntchito ndi ESP-IDF pawindo la Command Prompt lomwe silinayambe kugwiritsa ntchito njira yachiduleyo. Ngati ndi choncho, tsatirani malangizo omwe ali pansipa kuti muwonjezere zida za ESP-IDF ku PATH. M'mawu olamula omwe muyenera kugwiritsa ntchito ESP-IDF, sinthani ku bukhu komwe ESP-IDF yayikidwa, kenako perekani export.bat:
cd% userprofile%espesp-idf export.bat
Kapenanso mu Powershell komwe muyenera kugwiritsa ntchito ESP-IDF, sinthani ndandanda yomwe ESP-IDF yayikidwa, kenako perekani export.ps1:
cd ~/esp/esp-idf export.ps1
Izi zikachitika, zidazo zizipezeka muzowongolera izi.
Khazikitsani Kulumikizana Kwachinsinsi ndi ESP32 Gawoli likupereka chitsogozo cha momwe mungakhazikitsire kulumikizana pakati pa ESP32 ndi PC.

Espressif Systems

24 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Lumikizani ESP32 ku PC Lumikizani bolodi la ESP32 ku PC pogwiritsa ntchito chingwe cha USB. Ngati dalaivala wa chipangizocho sakhazikitsa zokha, zindikirani USB kupita ku serial converter chip pa bolodi lanu la ESP32 (kapena chosinthira chakunja), fufuzani madalaivala pa intaneti ndikuyiyika. Pansipa pali mndandanda wa tchipisi ta USB to serial converter chomwe chayikidwa pama board ambiri a ESP32 opangidwa ndi Espressif limodzi ndi maulalo oyendetsa:
· CP210x: CP210x USB kupita ku UART Bridge VCP Madalaivala · FTDI: FTDI Virtual COM Port Drivers Chonde onani kalozera wogwiritsa ntchito USB to serial converter chip yogwiritsidwa ntchito. Madalaivala omwe ali pamwambawa ndi ofunikira. Nthawi zonse, madalaivala ayenera kumangidwa ndi makina ogwiritsira ntchito ndikuyika okha polumikiza bolodi ku PC.
Yang'anani pa Windows Onani mndandanda wa madoko a COM odziwika mu Windows Device Manager. Chotsani ESP32 ndikuyilumikizanso, kuti muwonetsetse kuti ndi doko liti lomwe likusoweka pamndandanda ndikuwonetsanso. Zithunzi pansipa zikuwonetsa doko la ESP32 DevKitC ndi ESP32 WROVER KIT

Chithunzi 13: USB kupita ku UART mlatho wa ESP32-DevKitC mu Windows Chipangizo Manager

Yang'anani pa Linux ndi macOS Kuti muwone dzina la chipangizo cha doko la serial la bolodi lanu la ESP32 (kapena dongle yosinthira kunja), yendetsani lamuloli kawiri, choyamba ndi bolodi / dongle osatsegula, kenako ndi plugging. Doko lomwe likuwonekera kachiwiri ndi lomwe mukufuna: Linux
ls /dev/tty*
macOS

Espressif Systems

25 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Chithunzi 14: Madoko Awiri Awiri a USB a ESP-WROVER-KIT mu Windows Device Manager

Espressif Systems

26 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

ls /dev/cu.* Zindikirani: ogwiritsa ntchito a macOS: ngati simukuwona doko la serial ndiye fufuzani kuti muli ndi madalaivala a USB/serial. Onani Gawo Lumikizani ESP32 ku PC kuti mupeze maulalo amadalaivala. Kwa macOS High Sierra (10.13), mungafunikenso kulola madalaivala kuti azitsitsa. Tsegulani Zokonda Zadongosolo -> Chitetezo & Zazinsinsi -> Zambiri ndikuwona ngati pali uthenga womwe wawonetsedwa pano wokhudza oSystem Software kuchokera kwa wopanga mapulogalamu pomwe dzina la wopanga ndi Silicon Labs kapena FTDI.

Kuwonjeza wogwiritsa ntchito pa Linux Wogwiritsa ntchito pakali pano ayenera kuti adawerenga ndi kulemba mwayi wofikira padoko pa USB. Pa magawo ambiri a Linux, izi zimachitika powonjezera wogwiritsa ntchito ku gulu loyimba ndi lamulo ili:
sudo usermod -a -G kuyimba $USER
pa Arch Linux izi zimachitika powonjezera wosuta ku gulu la uucp ndi lamulo ili:
sudo usermod -a -G uucp $USER
Onetsetsani kuti mwalowanso kuti mutsegule zilolezo zowerenga ndi kulemba za doko la serial.
Tsimikizirani kulumikizidwa kwa serial Tsopano tsimikizirani kuti kulumikizaku kukugwira ntchito. Mutha kuchita izi pogwiritsa ntchito serial terminal program poyang'ana ngati mupeza zotuluka pa terminal mutakhazikitsanso ESP32. Mlingo wokhazikika wa console baud pa ESP32 ndi 115200.
Windows ndi Linux Mu chitsanzo ichiample tigwiritsa ntchito PuTTY SSH Client yomwe imapezeka pa Windows ndi Linux. Mutha kugwiritsa ntchito mapulogalamu ena osalekeza ndikuyika magawo olumikizirana monga pansipa. Thamangani terminal ndikukhazikitsa doko lodziwika. Baud rate = 115200 (ngati kuli kofunikira, sinthani izi kukhala zosasinthika za baud rate ya chip yomwe ikugwiritsidwa ntchito), ma data bits = 8, stop bits = 1, ndi parity = N. Pansipa pali exampndi zithunzi zoyika doko ndi magawo otumizira (mwachidule ofotokozedwa ngati 115200-8-1-N) pa Windows ndi Linux. Kumbukirani kusankha doko lomwelo lomwe mwazindikira pamasitepe pamwambapa. Kenako tsegulani doko la serial mu terminal ndikuwunika, ngati muwona chipika chilichonse chosindikizidwa ndi ESP32. Zomwe zili mkati mwa chipika zimatengera pulogalamu yomwe yatumizidwa ku ESP32, onani Eksampndi Output.
Zindikirani: Tsekani serial terminal mukatsimikizira kuti kulumikizana kukugwira ntchito. Ngati musunga gawo la terminal lotseguka, doko la serial silingathe kuyika firmware pambuyo pake.

MacOS Kuti mupewe vuto lokhazikitsa pulogalamu yoyeserera, macOS imapereka lamulo lazenera. · Monga momwe tafotokozera mu Check port pa Linux ndi macOS, thamangani:

ls /dev/cu.* · Muyenera kuwona zotsatira zofanana:

/dev/cu.Bluetooth-Incoming-Port /dev/cu.SLAB_USBtoUART USBtoUART7

/dev/cu.SLAB_

· The linanena bungwe adzakhala zosiyanasiyana malinga ndi mtundu ndi chiwerengero cha matabwa olumikizidwa kwa PC wanu. Kenako sankhani dzina la chipangizo cha bolodi lanu ndikuyendetsa (ngati kuli kofunikira, sinthani o115200kufika pamlingo wokhazikika wa chip chomwe chikugwiritsidwa ntchito):

skrini /dev/cu.device_name 115200 Bwezerani chipangizo_name ndi dzina lopezeka likuyendetsa ls /dev/cu.*.

Espressif Systems

27 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Chithunzi 15: Kukhazikitsa Kuyankhulana Kwachinsinsi mu PuTTY pa Windows

Espressif Systems

28 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Chithunzi 16: Kukhazikitsa Kuyankhulana kwa Seri mu PuTTY pa Linux

Espressif Systems

29 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
· Zomwe mukuyang'ana ndi chipika chowonetsedwa ndi chophimba. Zomwe zili mkati mwa chipika zimatengera pulogalamu yomwe yatumizidwa ku ESP32, onani Eksampndi Output. Kuti mutuluke pagawo lazenera lembani Ctrl-A + .
Zindikirani: Musaiwale kutuluka pazenera mutatsimikizira kuti kulumikizana kukugwira ntchito. Mukalephera kutero ndikungotseka zenera la terminal, doko la serial silipezeka kuti mukweze firmware pambuyo pake.
Example Output An example log ikuwonetsedwa pansipa. Bwezerani bolodi ngati simukuwona kalikonse. ndi Jun 8 2016 00:22:57
choyamba:0x5 (DEEPSLEEP_RESET), boot:0x13 (SPI_FAST_FLASH_BOOT) ets Jun 8 2016 00:22:57
rst:0x7 (TG0WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0x00 clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0008,len:8 load:0x3fff0010,len:3464 load:0x40078000,len:7828 load:0x40080000,len:252 entry 0x40080034 I (44) boot: ESP-IDF v2.0-rc1-401-gf9fba35 2nd stage bootloader I (45) boot: phatikiza nthawi 18:48:10

Ngati muwona zotuluka zowerengeka, zikutanthauza kuti kulumikizana kwa serial kukugwira ntchito ndipo mwakonzeka kupitiriza ndikuyika ndikuyika pulogalamuyo ku ESP32.
Zindikirani: Pazinthu zina zamawaya amtundu wa ma serial port, ma serial RTS & DTR pins ayenera kuzimitsidwa mu pulogalamu yotsiriza ESP32 isanayambe ndi kutulutsa zotsatira. Izi zimadalira hardware yokha, matabwa ambiri otukuka (kuphatikizapo matabwa onse a Espressif) alibe nkhaniyi. Nkhani ilipo ngati RTS & DTR ali ndi mawaya mwachindunji ku EN & GPIO0 zikhomo. Onani zolemba za esptool kuti mumve zambiri.
Ngati mwafika pano kuchokera ku Gawo 5. Njira Zoyamba pa ESP-IDF poyika s/w pa chitukuko cha ESP32, ndiye mutha kupitiriza ndi Gawo 5. Njira Zoyamba pa ESP-IDF.
IDF Monitor IDF Monitor ndi pulogalamu ya serial terminal yomwe imatumiza deta kuchokera ku doko la zida zomwe mukufuna. Imaperekanso zina za IDF. IDF Monitor ikhoza kukhazikitsidwa kuchokera ku projekiti ya IDF pogwiritsa ntchito idf.py monitor.
Njira zazifupi za kiyibodi Kuti muzitha kulumikizana mosavuta ndi IDF Monitor, gwiritsani ntchito njira zazifupi za kiyibodi zomwe zaperekedwa patebulo.

Espressif Systems

30 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Njira yachidule ya kiyibodi Ctrl+] Ctrl+T
Ctrl+T
Ctrl+] · Ctrl+P
Ctrl+R
Ctrl+F
Ctrl+A (kapena A)
Ctrl+Y
Ctrl+L
Ctrl+I (kapena I)
Ctrl+H (kapena H)
Ctrl+X (kapena X)
Ctrl+C

Zochita

Kufotokozera

Tulukani pa kiyibodi ya menyu yopulumukira Tumizani mawonekedwe a menyu patali
Tumizani chotulukacho chokha ku remote
Bwezeretsani chandamale kukhala bootloader kuti muyimitse pulogalamu kudzera pa RTS mzere
Bwezeretsani gulu lolowera kudzera pa RTS
Pangani ndi kuwunikira polojekitiyi

Pangani ndi kuwunikira pulogalamu yokhayo

Imani / yambiranso kusindikiza kwa chipika pazenera

Imani / yambiranso zotuluka za chipika zosungidwa file

Imani/yambiranso nthawiamps

kusindikiza

Onetsani njira zazifupi zonse za kiyibodi

Dinani ndi kutsatira ndi imodzi mwa makiyi omwe ali pansipa.
Imakhazikitsanso chandamale, kukhala bootloader kudzera pa mzere wa RTS (ngati ilumikizidwa), kuti bolodi lisayendetse kalikonse. Zothandiza mukafuna kudikirira kuti chipangizo china chiyambe. Imakhazikitsanso bolodi yomwe mukufuna ndikuyambitsanso pulogalamuyo kudzera pa mzere wa RTS (ngati ilumikizidwa).
Imayimitsa idf_monitor kuti igwiritse ntchito chandamale cha polojekiti, kenako ndikuyambiranso idf_monitor. Gwero lililonse losinthidwa files amapangidwanso ndikuwunikiranso. Target encrypted-flash imayendetsedwa ngati idf_monitor idayambitsidwa ndi mkangano -E. Imayimitsa idf_monitor kuti igwiritse ntchito chandamale cha app-flash, kenako ndikuyambiranso idf_monitor. Zofanana ndi chandamale cha flash, koma pulogalamu yayikulu yokha ndiyomwe imamangidwa ndikuwunikiranso. Target encrypted-app-flash imayendetsedwa ngati idf_monitor idayambitsidwa ndi mkangano -E. Imataya data yonse yomwe ikubwera ikayatsidwa. Imalola kuyimitsa mwachangu ndikuwunika zomwe zatuluka popanda kusiya chowunikira. Amalenga a file mu bukhu la polojekiti ndipo zotulukazo zimalembedwa kwa izo file mpaka izi zitazimitsidwa ndi njira yachidule ya kiyibodi (kapena kutuluka kwa IDF Monitor). IDF Monitor imatha kusindikiza nthawiamp kumayambiriro kwa mzere uliwonse. Nthawiamp mtundu ukhoza kusinthidwa ndi -timestamp-Mawu amtundu wa command line.

Chokani pulogalamuyi

Imitsani kugwiritsa ntchito

Imayimitsa IDF Monitor ndikuyendetsa chowongolera pulojekiti ya GDB kuti muthetse vutoli panthawi yake. Izi zimafuna :ref:CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME kusankha kuyatsa.

Makiyi aliwonse akanikizidwa, kupatula Ctrl-] ndi Ctrl-T, adzatumizidwa kudzera padoko la serial.

Mawonekedwe a IDF

Kujambula Maadiresi Mwaokha Nthawi zonse ESP-IDF ikatulutsa adilesi ya hexadecimal ya fomu 0x4_____, IDF Monitor imagwiritsa ntchito addr2line_ kuyang'ana malo omwe ali mu code code ndikupeza dzina la ntchitoyo.
Ngati pulogalamu ya ESP-IDF iwonongeka ndi kuchita mantha, dambo lotayirapo ndi zotsalira zimapangidwa, monga izi:

Espressif Systems

31 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Guru Kusinkhasinkha Zolakwa za mtundu StoreZoletsedwa zidachitika pachimake 0. Kupatulapo kunali

osagwiridwa.

Register kutaya:

PC

0x400f360d PS

0x00060330 A0

0x800dbf56 A1

:

0x3fb7e00

A2

0x3ffb136c A3

0x00000005 A4

0x00000000 A5

:

0x00000000 pa

A6

0x00000000 A7

0x00000080 A8

0x00000000 A9

:

0x3fb7d0

A10

0x00000003 A11

0x00060f23 A12

0x00060f20 A13

:

0x3fba6d0

A14

0x00000047 A15

0x0000000f SAR

0x00000019 EXCCAUSE:

0x0000001d pa

EXCVADDR: 0x00000000 LBEG: 0x4000c46c LEND: 0x4000c477 LCOUNT:

0x00000000 pa

Backtrace: 0x400f360d:0x3ffb7e00 0x400dbf56:0x3ffb7e20 0x400dbf5e:0x3ffb7e40 0x400dbf82:0x3ffb7e60 0x400d071d:0x3ffb7e90

IDF Monitor imawonjezera zambiri pakutaya:

Guru Kusinkhasinkha Zolakwa za mtundu StoreZoletsedwa zidachitika pachimake 0. Kupatulapo kunali

osagwiridwa.

Register kutaya:

PC

0x400f360d PS

0x00060330 A0

0x800dbf56 A1

:

0x3fb7e00

0x400f360d: do_something_to_crash ku /home/gus/esp/32/idf/examptangoyambani/

moni_world/main/./hello_world_main.c:57

(zolembedwa ndi) inner_dont_crash ku /home/gus/esp/32/idf/exampza/tiyambe/hello_

world/main/./hello_world_main.c:52

A2

0x3ffb136c A3

0x00000005 A4

0x00000000 A5

:

0x00000000 pa

A6

0x00000000 A7

0x00000080 A8

0x00000000 A9

:

0x3fb7d0

A10

0x00000003 A11

0x00060f23 A12

0x00060f20 A13

:

0x3fba6d0

A14

0x00000047 A15

0x0000000f SAR

0x00000019 EXCCAUSE:

0x0000001d pa

EXCVADDR: 0x00000000 LBEG: 0x4000c46c LEND: 0x4000c477 LCOUNT:

0x00000000 pa

Backtrace: 0x400f360d:0x3ffb7e00 0x400dbf56:0x3ffb7e20 0x400dbf5e:0x3ffb7e40 0x400dbf82:0x3ffb7e60 0x400d071d:0x3ffb7e90 0x400f360d: do_something_to_crash at /home/gus/esp/32/idf/examples/get-started/ hello_world/main/./hello_world_main.c:57 (olembedwa ndi) inner_dont_crash ku /home/gus/esp/32/idf/examples/get-start/hello_ world/main/./hello_world_main.c:52 0x400dbf56: still_dont_crash at /home/gus/esp/32/idf/examples/get-start/hello_ world/main/./hello_world_main.c:47 0x400dbf5e: dont_crash pa /home/gus/esp/32/idf/examples/get-start/hello_world/ main/./hello_world_main.c:42 0x400dbf82: app_main ku /home/gus/esp/32/idf/examples/get-start/hello_world/main/ ./hello_world_main.c:33 0x400d071d: main_task pa /home/gus/esp/32/idf/components/esp32/./cpu_start.c:254

Kuti muzindikire adilesi iliyonse, IDF Monitor imayendetsa lamulo ili chakumbuyo: xtensa-esp32-elf-addr2line -pfiaC -e build/PROJECT.elf ADDRESS

Zindikirani: Khazikitsani ESP_MONITOR_DECODE kukhala 0 kapena imbani idf_monitor.py ndi mzere walamulo

Espressif Systems

32 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
mwina: idf_monitor.py -disable-address-decoding kuti mulepheretse kumasulira adilesi.
Kukhazikitsanso Chandamale pa Kulumikizana Mwachikhazikitso, IDF Monitor idzakhazikitsanso chandamale polumikizana nayo. Kukonzanso kwa chip chandamale kumachitika pogwiritsa ntchito mizere ya serial ya DTR ndi RTS. Kuti mulepheretse IDF Monitor kuti ikhazikitsenso chandamale polumikizana, imbani IDF Monitor ndi -no-reset njira (mwachitsanzo, idf_monitor.py -no-reset).
Zindikirani: Njira ya -no-reset imagwiranso ntchito mofananamo ngakhale mutagwirizanitsa IDF Monitor ku doko linalake (mwachitsanzo, idf.py monitor -no-reset -p [PORT]).
Kukhazikitsa GDB ndi GDBStub GDBStub ndi gawo lothandizira loyendetsa nthawi yomwe imayenda pa chandamale ndikulumikizana ndi wolandirayo padoko la serial kuti alandire malamulo ochotsa zolakwika. GDBStub imathandizira malamulo monga kuwerenga kukumbukira ndi zosinthika, kuyang'ana mafelemu a stack call etc.TAG kukonza, sikufuna zida zapadera (monga JTAG to USB Bridge) monga kulankhulana kumachitidwa pa doko la serial. Chandamale chikhoza kukonzedwa kuti chiyendetse GDBStub chakumbuyo pokhazikitsa CONFIG_ESP_SYSTEM_PANIC kukhala GDBStub pa nthawi yothamanga. GDBStub idzayendetsa kumbuyo mpaka uthenga wa Ctrl + C utumizidwa pa doko lachinsinsi ndikupangitsa kuti GDBStub ithyoke (ie, kuyimitsa kuchitidwa) pulogalamuyo, motero kulola GDBStub kusamalira malamulo ochotsera zolakwika. Kuphatikiza apo, chothandizira mantha chikhoza kukonzedwa kuti chiyendetse GDBStub pakuwonongeka pokhazikitsa CONFIG_ESP_SYSTEM_PANIC ku GDBStub pamantha. Kuwonongeka kukachitika, GDBStub itulutsa chingwe chapadera padoko la serial kuti iwonetse kuti ikuyenda. Muzochitika zonsezi (ie, kutumiza uthenga wa Ctrl+C, kapena kulandira chitsanzo cha zingwe zapadera), IDF Monitor idzayambitsa GDB yokha kuti ilole wogwiritsa ntchito kutumiza malamulo ochotsa zolakwika. GDB ikatuluka, chandamalecho chimakhazikitsidwanso kudzera pa RTS serial line. Ngati mzerewu sunalumikizidwe, ogwiritsa ntchito amatha kukhazikitsanso chandamale (pokanikiza batani la Bwezerani Bwezerani).
Zindikirani: Kumbuyo, IDF Monitor imayendetsa lamulo ili kuti mutsegule GDB:
xtensa-esp32-elf-gdb -ex "kukhazikitsa serial baud BAUD" -ex "chofuna PORT chakutali" -kusokoneza kumanga/PROJECT.elf :idf_target:`Moni NAME chip`

Zosefera Zosefera za IDF zitha kugwiritsidwa ntchito ngati idf.py monitor -print-filter=”xyz”, pomwe -print-filter ndi parameter yosefa. Mtengo wosasinthika ndi chingwe chopanda kanthu, zomwe zikutanthauza kuti zonse zimasindikizidwa.
Zoletsa pazomwe mungasindikize zitha kufotokozedwa ngati mndandanda watag>: zinthu kumenetag> ndi tag chingwe ndi ndi munthu wochokera pagulu la {N, E, W, I, D, V, *} kutanthauza mulingo wodula mitengo.
Za example, PRINT_FILTER=”tag1:W” ikufanana ndi kusindikiza zokhazo zolembedwa ndi ESP_LOGW(“tag1”, …) kapena pamlingo wotsikirapo, mwachitsanzo, ESP_LOGE(“tag1″,…). Osatchula a kapena kugwiritsa ntchito * zosintha mpaka mulingo wa Verbose.
Zindikirani: Gwiritsani ntchito kudula mitengo koyambirira kuti muletse pakuphatikiza zomwe simukufuna kudzera mulaibulale yodula mitengo. Kusefa zotuluka ndi polojekiti ya IDF ndi yankho lachiwiri lomwe lingakhale lothandiza posintha zisankho popanda kubweza pulogalamuyo.
Pulogalamu yanu tags sayenera kukhala ndi mipata, asterisks *, kapena colons : kuti zigwirizane ndi zosefera zotulutsa.
Ngati mzere womaliza wa zotulutsa mu pulogalamu yanu sakutsatiridwa ndi kubweza kwa chonyamulira, zosefera zotulutsa zitha kusokonezeka, mwachitsanzo, chowunikira chimayamba kusindikiza mzerewo ndipo pambuyo pake chimazindikira kuti mzerewo sunalembedwe. Iyi ndi nkhani yodziwika ndipo ikhoza kupewedwa powonjezera nthawi zonse chobweza chobweza (makamaka ngati palibe zotuluka pambuyo pake).

Espressif Systems

33 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
ExampMalamulo Osefera:
· * itha kugwiritsidwa ntchito kufananitsa chilichonse tags. Komabe, chingwe PRINT_FILTER=”*:I tag1:E" pokhudzana ndi tag1 imasindikiza zolakwika zokha, chifukwa lamulo la tag1 ili ndi chofunikira kwambiri kuposa lamulo la *.
· Lamulo losasinthika (lopanda kanthu) likufanana ndi *:V chifukwa chofananira chilichonse tag pa mlingo wa Verbose kapena m'munsi amatanthauza kufananiza chirichonse.
· “*:N” imapondereza osati zotuluka podula mitengo yokha, komanso zosindikiza zopangidwa ndi printf, ndi zina zotero.
· Malamulo "tag1: V,tag1:v,tag1:,,tag1:*”, ndi “tag1” ndizofanana. · Rule “tag1 :w tag1:E" ikufanana ndi "tag1:E" chifukwa chotsatira chilichonse chofanana tag
dzina limachotsa lapitalo. · Dongosolo "tag1:ine tag2:W" amasindikiza okha tag1 pa Info verbosity level kapena m'munsi ndi tag2 pa Chenjezo
verbosity level kapena m'munsi. · Dongosolo "tag1:ine tag2 :w tag3:N” kwenikweni ikufanana ndi yapitayi chifukwa tag3:N amatchula
kuti tag3 sayenera kusindikizidwa. · tag3: N mu lamulo "tag1:ine tag2 :w tag3:N *:V” ndi tanthauzo kwambiri chifukwa popanda tag3:n ndi
tagMauthenga atatu akanatha kusindikizidwa; zolakwika za tag1 ndi tag2 idzasindikizidwa pamlingo wa verbosity wotchulidwa (kapena wotsika) ndipo china chilichonse chidzasindikizidwa mwachisawawa.
Kusefa Kovuta Kwambiri Example Zolemba zotsatirazi zidapezedwa popanda zosankha zilizonse zosefera:
katundu:0x40078000,len:13564 cholowera 0x40078d4c E (31) esp_image: chithunzi pa 0x30000 chili ndi magic byte W (31) esp_image: chithunzi pa 0x30000 chili ndi SPI mode 255 E (39 parttable I568 app) cpu_start: Pro cpu mmwamba. I (569) heap_init: Kuyambitsa. RAM ikupezeka pakugawika kwamphamvu: I (603) cpu_start: Pro cpu start user code D (309) light_driver: [light_init, 74]:status: 1, mode: 2 D (318) vfs: esp_vfs_register_fd_range ndiyopambana pamtundu <54; 64) ndi VFS ID 1 I (328) wifi: wifi driver ntchito: 3ffdbf84, prio:23, stack:4096, core=0
Zomwe zajambulidwa pazosankha zosefera PRINT_FILTER=”wifi esp_image:E light_driver:I” zaperekedwa pansipa:
E (31) esp_image: chithunzi pa 0x30000 chili ndi magic byte I (328) wifi: ntchito yoyendetsa wifi: 3ffdbf84, prio:23, stack:4096, core=0
Zosankha "PRINT_FILTER="light_driver:D esp_image:N boot:N cpu_start:N vfs:N wifi:N *:V" zikuwonetsa zotsatirazi:
katundu:0x40078000,len:13564 kulowa 0x40078d4c I (569) mulu_init: Kuyambitsa. RAM ikupezeka kuti igawidwe: D (309) light_driver: [light_init, 74]:status: 1, mode: 2
Nkhani Zodziwika ndi IDF Monitor
Mavuto Omwe Amawonedwa pa Windows
· Makiyi a mivi, komanso makiyi ena, sagwira ntchito mu GDB chifukwa cha malire a Windows Console. Nthawi zina, oidf.pypexits, imatha kuima kwa masekondi 30 IDF Monitor isanayambenso. Ogdbpis ikathamanga, ikhoza kuyimitsa kwakanthawi kochepa isanayambe kulumikizana ndi GDBStub.

Espressif Systems

34 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambitsani Kukhazikitsa Kwazida Zokhazikika za Linux ndi macOS

Kuyika Pang'onopang'ono Awa ndi njira yatsatanetsatane yokuthandizani pakukhazikitsa.
Kukhazikitsa Chitukuko Chachitukuko Awa ndi njira zokhazikitsira ESP-IDF ya ESP32 yanu. · Khwerero 1. Ikani Zofunika Kwambiri · Gawo 2. Pezani ESP-IDF · Gawo 3. Konzani zida · Gawo 4. Konzani zosintha za chilengedwe · Gawo 5. Njira Zoyamba pa ESP-IDF
Khwerero 1. Ikani Zofunikira Kuti mugwiritse ntchito ESP-IDF ndi ESP32, muyenera kukhazikitsa mapulogalamu ena potengera Dongosolo Lanu Logwirira Ntchito. Kuwongolera uku kukuthandizani kuti mukhazikitse chilichonse pa Linux ndi macOS.
Kwa Ogwiritsa Ntchito a Linux Kuti muphatikize pogwiritsa ntchito ESP-IDF muyenera kupeza maphukusi otsatirawa. Lamulo loti muyendetse limadalira kugawa kwa Linux komwe mukugwiritsa ntchito:
Ubuntu ndi Debian: sudo apt-get install git wget flex bison gperf python3 python3-pip python3venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
· CentOS 7 & 8: sudo yum -y update && sudo yum kukhazikitsa git wget flex njati gperf python3 cmake ninja-build ccache dfu-util libusbx
CentOS 7 imathandizidwabe koma mtundu wa CentOS 8 ukulimbikitsidwa kuti ukhale wogwiritsa ntchito bwino. · Arch: sudo pacman -S -funika gcc git kupanga flex bison gperf python cmake ninja ccache dfu-util libusb
Zindikirani: · CMake version 3.16 kapena yatsopano ndiyofunika kuti mugwiritse ntchito ndi ESP-IDF. Thamangani otools/idf_tools.py ikani cmakepto kukhazikitsa mtundu woyenera ngati mitundu yanu ya OS ilibe. · Ngati simukuwona kugawa kwanu kwa Linux pamndandanda womwe uli pamwambapa chonde onani zolemba zake kuti mudziwe lamulo loti mugwiritse ntchito poyika phukusi.
Kwa Ogwiritsa Ntchito a macOS ESP-IDF idzagwiritsa ntchito mtundu wa Python woyikidwa mwachisawawa pa macOS. · Ikani CMake & Ninja kumanga: Ngati muli ndi HomeBrew, mutha kuthamanga: brew install cmake ninja dfu-util Ngati muli ndi MacPorts, mutha kuthamanga: sudo port install cmake ninja dfu-util Apo ayi, fufuzani masamba akunyumba a CMake ndi Ninja kuti mutsitse macOS.

Espressif Systems

35 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
· Ndi bwino tikulimbikitsidwa kukhazikitsanso ccache kwa mofulumira kumanga. Ngati muli ndi HomeBrew, izi zitha kuchitika pogwiritsa ntchito brew install ccache kapena sudo port kukhazikitsa ccache pa MacPorts.
Zindikirani: Ngati cholakwika chonga ichi chikuwonetsedwa pa sitepe iliyonse: xcrun: cholakwika: njira yosavomerezeka yomanga (/Library/Developer/CommandLineTools), yosowa xcrun pa: /Library/Developer/CommandLineTools/usr/bin/xcrun
Kenako muyenera kukhazikitsa zida za mzere wa XCode kuti mupitilize. Mutha kuziyika ndikuyendetsa xcode-select -install.
Ogwiritsa a Apple M1 Ngati mugwiritsa ntchito nsanja ya Apple M1 ndikuwona cholakwika chonga ichi: CHENJEZO: chikwatu cha chida xtensa-esp32-elf mtundu esp-2021r2-patch3-8.4.0 ilipo, koma chida sichinapezeke ZOPHUNZITSA: chida xtensa-esp32-elf sichinasinthidwe. Chonde thamangani 'install.sh' kuti muyiyike.
kapena: zsh: mtundu wa CPU woyipa womwe umatheka: ~/.espressif/tools/xtensa-esp32-elf/esp-2021r2patch3-8.4.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Kenako muyenera kukhazikitsa Apple Rosetta 2 poyendetsa /usr/sbin/softwareupdate -install-rosetta -agree-to-license
Kuyika Python 3 Kutengera zolemba za macOS Catalina 10.15, kugwiritsa ntchito Python 2.7 sikuvomerezeka ndipo Python 2.7 sidzaphatikizidwa mwachisawawa m'mitundu yamtsogolo ya macOS. Onani zomwe Python muli nayo pano: python -version
Ngati zotulukazo zili ngati Python 2.7.17, womasulira wanu wokhazikika ndi Python 2.7. Ngati ndi choncho, onaninso ngati Python 3 sinayikidwe kale pa kompyuta yanu: python3 -version
Ngati lamulo lomwe lili pamwambapa libweza cholakwika, zikutanthauza kuti Python 3 sinayikidwe. Apa pali kuthaview za masitepe oyika Python 3.
Kuyika ndi HomeBrew kutha kuchitika motere: brew install python3
· Ngati muli ndi MacPorts, mutha kuthamanga: sudo port install python38
Gawo 2. Pezani ESP-IDF Kuti mupange mapulogalamu a ESP32, mufunika malaibulale apulogalamu operekedwa ndi Espressif munkhokwe ya ESP-IDF. Kuti mupeze ESP-IDF, pitani ku chikwatu chanu choyika ndikufananiza chosungiracho ndi git clone, kutsatira malangizo omwe ali pansipa okhudzana ndi makina anu ogwiritsira ntchito. Tsegulani Terminal, ndikuyendetsa malamulo awa:

Espressif Systems

36 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

mkdir -p ~/esp cd ~/esp git clone -b v5.0.9 -recursive https://github.com/espressif/esp-idf.git
ESP-IDF idzatsitsidwa ku ~/esp/esp-idf. Onani Mabaibulo a ESP-IDF kuti mudziwe zambiri za ESP-IDF yomwe mungagwiritse ntchito panthawi inayake.
Khwerero 3. Konzani zida Kupatula ESP-IDF, muyeneranso kukhazikitsa zida zogwiritsidwa ntchito ndi ESP-IDF, monga compiler, debugger, Python packages, etc, kwa mapulojekiti othandizira ESP32. cd ~/esp/esp-idf ./install.sh esp32
kapena ndi chipolopolo cha Nsomba cd ~/esp/esp-idf ./install.fish esp32
Malamulo omwe ali pamwambawa khazikitsani zida za ESP32 zokha. Ngati mukufuna kupanga mapulojekiti ochulukirachulukira, muyenera kulemba zonse ndikuthamangira zakaleample: cd ~/esp/esp-idf ./install.sh esp32,esp32s2
kapena ndi Nsomba cd ~/esp/esp-idf ./install.fish esp32,esp32s2
Kuti muyike zida pazolinga zonse zothandizidwa chonde yendetsani lamulo ili: cd ~/esp/esp-idf ./install.sh onse
kapena ndi Nsomba cd ~/esp/esp-idf ./install.fish all
Chidziwitso: Kwa ogwiritsa ntchito a MacOS, ngati cholakwika chonga ichi chikuwonetsedwa panthawi iliyonse:urlcholakwika chotsegula [SSL: CERTIFICATE_VERIFY_FAILED] chitsimikiziro cha satifiketi chalephereka: sitinathe kupeza chiphaso chapafupi (_ssl.c:xxx)
Mutha kuthamanga Ikani Certificates.command mu foda ya Python ya kompyuta yanu kuti muyike satifiketi. Kuti mudziwe zambiri, onani Vuto Lotsitsa Pamene Mukukhazikitsa Zida za ESP-IDF.

Njira ina File Downloads The zida okhazikitsa download angapo files yolumikizidwa ndi Zotulutsidwa za GitHub. Ngati kupeza GitHub kukuchedwa ndiye kuti ndizotheka kukhazikitsa kusintha kwa chilengedwe kuti mukonde seva yotsitsa ya Espressifns kuti mutsitse katundu wa GitHub.

Zindikirani: Izi zimangoyang'anira zida zomwe zatsitsidwa kuchokera ku GitHub, sizisintha URLs amagwiritsidwa ntchito kupeza malo aliwonse a Git.

Kuti musankhe seva yotsitsa ya Espressif mukayika zida, gwiritsani ntchito malamulo otsatirawa mukamayendetsa install.sh:

Espressif Systems

37 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

cd ~/esp/esp-idf kutumiza kunja IDF_GITHUB_ASSETS=”dl.espressif.com/github_assets” ./install.sh
Kukonza njira yokhazikitsira zida Zolemba zomwe zatulutsidwa mu sitepe iyi kukhazikitsa zida zophatikizira zofunidwa ndi ESP-IDF mkati mwa chikwatu chakunyumba kwa ogwiritsa: $HOME/.espressif pa Linux. Ngati mukufuna kuyika zidazo m'chikwatu china, ikani kusintha kwa chilengedwe IDF_TOOLS_PATH musanayambe kulemba zolembazo. Onetsetsani kuti akaunti yanu ya ogwiritsa ntchito ili ndi zilolezo zokwanira kuwerenga ndi kulemba njira iyi. Ngati mukusintha IDF_TOOLS_PATH, onetsetsani kuti yakhazikitsidwa pamtengo womwewo nthawi iliyonse mukakhazikitsa instalar (install. bat, install.ps1 kapena install.sh) ndi Export script (export.bat, export.ps1 kapena export.sh) zichitika.
Khwerero 4. Khazikitsani zosintha za chilengedwe Zida zoyikidwa sizinawonjezedwe ku PATH chilengedwe variable. Kuti zida zigwiritsidwe ntchito kuchokera pamzere wolamula, zosintha zina za chilengedwe ziyenera kukhazikitsidwa. ESP-IDF imapereka zolemba zina zomwe zimatero. Pa terminal komwe mugwiritsa ntchito ESP-IDF, thamangani:
. $HOME/esp/esp-idf/export.sh
kapena nsomba (zothandizidwa kuyambira mtundu wa nsomba 3.0.0):
. $HOME/esp/esp-idf/export.fish
Onani danga pakati pa kadontho kotsogolera ndi njira! Ngati mukufuna kugwiritsa ntchito esp-idf pafupipafupi, mutha kupanga dzina loti mugwiritse ntchito export.sh:
1. Koperani ndi kumata lamulo ili ku shellns profile (.profile, .bashrc, .zprofile, etc.)
alias get_idf='. $HOME/esp/esp-idf/export.sh' 2. Tsimikizaninso kasinthidwe poyambitsanso gawo lomaliza kapena poyambitsa gwero [njira yopita ku profile],
za example, gwero ~/.bashrc. Tsopano mutha kuthamanga get_idf kukhazikitsa kapena kutsitsimutsa chilengedwe cha esp-idf mu gawo lililonse la terminal. Mwaukadaulo, mutha kuwonjezera export.sh ku shellns pro yanufile mwachindunji; komabe, sizovomerezeka. Kuchita izi kumatsegula malo a IDF mu gawo lililonse la terminal (kuphatikiza pomwe IDF sikufunika), kulepheretsa cholinga cha chilengedwe komanso kukhudza mapulogalamu ena.
Gawo 5. Njira Zoyamba pa ESP-IDF Tsopano popeza zofunikira zonse zakwaniritsidwa, mutu wotsatira ukutsogolerani momwe mungayambitsire ntchito yanu yoyamba. Bukuli likuthandizani pamasitepe oyamba pogwiritsa ntchito ESP-IDF. Tsatirani bukhuli kuti muyambe pulojekiti yatsopano pa ESP32 ndikumanga, kung'anima, ndi kuyang'anira kutuluka kwa chipangizocho.
Zindikirani: Ngati simunayikebe ESP-IDF, chonde pitani ku Installation ndikutsatira malangizowo kuti mupeze mapulogalamu onse ofunikira kugwiritsa ntchito bukhuli.

Yambitsani Ntchito Tsopano mwakonzeka kukonzekera pulogalamu yanu ya ESP32. Mutha kuyamba ndi getstart/hello_world project kuchokera examples directory mu ESP-IDF.

Chofunika: Dongosolo la ESP-IDF lomanga siligwirizana ndi mipata yopita ku ESP-IDF kapena mapulojekiti.

Lembani pulojekiti yoyambira/hello_world ku ~/esp chikwatu:

Espressif Systems

38 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
cd ~/esp cp -r $IDF_PATH/examples/get-start/hello_world .
Zindikirani: Pali mitundu ingapo ya exampma project mu examples directory mu ESP-IDF. Mutha kukopera projekiti iliyonse monga momwe tafotokozera pamwambapa ndikuyendetsa. Ndizothekanso kupanga examples m'malo popanda kuwatengera poyamba.
Lumikizani Chipangizo Chanu Tsopano polumikizani bolodi lanu la ESP32 ku kompyuta ndikuyang'ana padoko lomwe gulu likuwonekera. Ma serial ports ali ndi machitidwe awa:
· Linux: kuyambira ndi /dev/tty · macOS: kuyambira ndi /dev/cu. Ngati simukudziwa momwe mungayang'anire dzina la doko la serial, chonde lemberani ku Khazikitsani Kulumikizana kwa Serial ndi ESP32 kuti mumve zambiri.
Zindikirani: Sungani dzina la doko lili pafupi ndi momwe mungafunikire pamasitepe otsatirawa.
Konzani Pulojekiti Yanu Yang'anani ku chikwatu chanu cha hello_world, ikani ESP32 monga chandamale, ndikuyendetsa ntchito yosinthira pulojekiti menyuconfig. cd ~/esp/hello_world idf.py set-target esp32 idf.py menuconfig
Mukatsegula pulojekiti yatsopano, muyenera kukhazikitsa chandamale ndi idf.py set-target esp32. Zindikirani kuti zomanga zomwe zilipo kale mu polojekitiyi, ngati zilipo, zidzatsukidwa ndikuyambitsa ndondomekoyi. Cholingacho chikhoza kusungidwa pakusintha kwachilengedwe kuti mulumphe sitepe iyi nkomwe. Onani Sankhani Chip Target: set-target kuti mudziwe zambiri. Ngati masitepe am'mbuyomu adachitidwa bwino, menyu wotsatira akuwoneka:

Chithunzi 17: Kukonzekera kwa pulojekiti - Zenera Lanyumba Mukugwiritsa ntchito menyuyi kukhazikitsa zosintha zenizeni za polojekiti, mwachitsanzo, dzina la netiweki ya Wi-Fi ndi mawu achinsinsi, liwiro la purosesa, ndi zina zambiri. Kukhazikitsa pulojekiti ndi menuconfig mwina kudumpha forohello_worldp, popeza wakale uyuample akuyenda ndi

Espressif Systems

39 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
kasinthidwe kosasintha.
Chidziwitso: Ngati mugwiritsa ntchito ESP32-DevKitC board ndi ESP32-SOLO-1 module, kapena ESP32-DevKitM-1 board yokhala ndi ESP32-MIN1-1(1U) module, chonde yambitsani single core mode (CONFIG_FREERTOS_UNICORE) mu menuconfig musanayatse ex.amples.
Zindikirani: Mitundu ya menyu ikhoza kukhala yosiyana mu terminal yanu. Mutha kusintha mawonekedwe ndi njira -style. Chonde thamangani idf.py menuconfig -help kuti mudziwe zambiri.
Ngati mukugwiritsa ntchito imodzi mwama board opititsa patsogolo, mutha kufulumizitsa chitukuko chanu pogwiritsa ntchito Board Support Package. Onani Maupangiri Owonjezera kuti mudziwe zambiri.
Pangani Project Pangani projekitiyo poyendetsa:
idf.py kumanga
Lamuloli liphatikiza pulogalamuyo ndi zida zonse za ESP-IDF, kenako lipanga chojambulira, tebulo la magawo, ndi ma binaries.
$ idf.py kumanga Kuthamanga kwa cmake mu chikwatu /path/to/hello_world/build Kuchita "cmake -G Ninja -warn-uninitialized /path/to/hello_world"… Chenjezani za makhalidwe omwe sanayambike. - Yapeza Git: /usr/bin/git (yomwe yapezeka "2.17.0") - Kumanga chigawo chopanda kanthu cha aws_iot chifukwa cha kasinthidwe - Maina azinthu: ... - Njira zamagulu: ...
… (mizere yambiri yopangira makina opangira)
[527/527] Kupanga hello_world.bin esptool.py v2.3.1
Ntchito yomanga yatha. Kuti muwale, yendetsani lamulo ili: ../../../components/esptool_py/esptool/esptool.py -p (PORT) -b 921600 write_flash -flash_mode dio -flash_size detect -flash_freq 40m 0x10000 build/hello_world. bin kumanga 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/ partition-table.bin kapena thamangani 'idf.py -p PORT flash'
Ngati palibe zolakwika, kumangako kudzatha popanga firmware binary .bin files.
Kung'anima pa Chipangizo Chong'anirani ma binaries omwe mwangopanga kumene (bootloader.bin, partition-table.bin ndi hello_world.bin) pa bolodi lanu la ESP32 pothamanga:
idf.py -p PORT [-b BAUD] kung'anima
Sinthani PORT ndi dzina lanu la ESP32 boardns serial port. Mutha kusinthanso kuchuluka kwa baud posintha BAUD ndi kuchuluka komwe mukufuna. Mtengo wokhazikika wa baud ndi 460800. Kuti mudziwe zambiri pa mikangano ya idf.py, onani idf.py.
Zindikirani: Kuwala kosankha kumangopanga ndikuwunikira pulojekitiyo, kotero kuyendetsa idf.py build sikofunikira.

Espressif Systems

40 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani

Munakumana ndi Mavuto Pamene Mukuwala? Ngati muyendetsa lamulo lomwe mwapatsidwa ndikuwona zolakwika monga asoFailed to connectp, pangakhale zifukwa zingapo za izi. Chimodzi mwazifukwa chikhoza kukhala nkhani zomwe zimakumana ndi esptool.py, zomwe zimatchedwa ndi zomangamanga kuti zikhazikitsenso chip, kugwirizana ndi ROM bootloader, ndi firmware flash. Njira imodzi yosavuta yoyesera ndikukhazikitsanso pamanja zomwe zafotokozedwa pansipa, ndipo ngati sizikuthandizani mutha kupeza zambiri zazovuta zomwe zingatheke mu Kuthetsa Mavuto.
esptool.py imakhazikitsanso ESP32 mwa kutsimikizira mizere yowongolera ya DTR ndi RTS ya USB kupita ku serial converter chip, mwachitsanzo, FTDI kapena CP210x (kuti mumve zambiri, onani Kukhazikitsa Kulumikizana Kwachinsinsi ndi ESP32). Mizere yowongolera ya DTR ndi RTS imalumikizidwanso ndi zikhomo za GPIO0 ndi CHIP_PU (EN) za ESP32, motero kusintha kwa vol.tage milingo ya DTR ndi RTS idzayambitsa ESP32 mu Firmware Download mode. Monga example, yang'anani dongosolo la ESP32 DevKitC Development board.
Nthawi zambiri, simuyenera kukhala ndi vuto ndi matabwa ovomerezeka a esp-idf. Komabe, esptool.py siyitha kukonzanso zida zanu mwazinthu zotsatirazi:
· Zida zanu zilibe mizere ya DTR ndi RTS yolumikizidwa ku GPIO0 ndi CHIP_PU · Mizere ya DTR ndi RTS imakonzedwa mosiyana · Palibe mizere yotereyi.
Kutengera mtundu wa zida zomwe muli nazo, zitha kukhala zothekanso kuyika bolodi lanu la ESP32 pamanja munjira yotsitsa Firmware (kukonzanso).
· Pama board otukuka opangidwa ndi Espressif, izi zitha kupezeka m'mabuku oyambira kapena maupangiri ogwiritsa ntchito. Za example, kuti mukonzenso bolodi lachitukuko la ESP-IDF, gwirani batani la Boot (GPIO0) ndikusindikiza batani la EN (CHIP_PU).
· Pamitundu ina ya zida, yesani kukokera GPIO0 pansi.

Ntchito Yachizolowezi Mukayaka, mudzawona chipika chofanana ndi ichi:
... esptool.py -chip esp32 -p /dev/ttyUSB0 -b 460800 -before=default_reset -after=hard_reset write_flash -flash_mode dio -flash_freq 40m -flash_size 2MB 0x8000 partition_table/load0booter1load.0 0x10000 hello_world.bin esptool.py v3.0-dev Serial port /dev/ttyUSB0 Connecting…….._ Chip ndi ESP32D0WDQ6 (revision 0) Mawonekedwe: WiFi, BT, Dual Core, Coding Scheme Palibe Crystal ndi 40MHz MAC: 24: 1b: Kukwera: 24: 0a: 1b4: 0a: 1b4 stub… Kuthamanga kwachulu… Kusintha kwa baud kukhala 460800 Zasinthidwa. Kukonza kukula kwa kung'anima... Kuponderezedwa 3072 byte kufika 103… Kulemba pa 0x00008000… (100 %) Analemba 3072 byte (103 compressed) pa 0x00008000 mu masekondi 0.0 (mogwira 5962.8 kbit/ma data). Kupsinjidwa 26096 byte kufika ku 15408… Kulemba pa 0x00001000… (100 %) Analemba 26096 byte (15408 compressed) pa 0x00001000 mu masekondi 0.4 (mogwira 546.7 kbit/s data) … Kuponderezedwa 147104 byte kufika ku 77364… Kulemba pa 0x00010000… (20 %) Kulemba pa 0x00014000… (40 %) Kulemba pa 0x00018000… (60 %) Kulemba pa 0x0001c0% (8%)
(ikupitilira patsamba lotsatira)

Espressif Systems

41 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
(kuchokera patsamba lapitalo) Kulemba pa 0x00020000… (100 %) Analemba 147104 mabayiti (77364 oponderezedwa) pa 0x00010000 mu masekondi 1.9 (ogwira ntchito 615. 5 kbit/s)… Hashi ya deta yatsimikiziridwa.
Kuchoka… Kukhazikitsanso mwamphamvu kudzera pa pin ya RTS… Ndamaliza
Ngati palibe zovuta pakutha kwa kung'anima, bolodi idzayambiranso ndikuyamba theohello_worldpapplication. Ngati mukufuna kugwiritsa ntchito Eclipse kapena VS Code IDE m'malo mongoyendetsa idf.py, onani Eclipse Plugin, VSCode Extension.
Yang'anirani Zotuluka Kuti muwone ngati ohello_worldpis ikuyendadi, lembani idf.py -p PORT monitor (Osayiwala kusintha PORT ndi dzina lanu la doko). Lamuloli likuyambitsa pulogalamu ya IDF Monitor:
$ idf.py -p monitor Kuthamanga idf_monitor mu chikwatu […]/esp/hello_world/build Kuchita “python […]/esp-idf/tools/idf_monitor.py -b 115200 […]/esp/hello_ world/build/hello_world.elf”… — idf_monitor on 115200 —– Siyani: Ctrl+] | Menyu: Ctrl+T | Thandizo: Ctrl+T kutsatiridwa ndi Ctrl+H –ets Jun 8 2016 00:22:57
rst:0x1 (POWERON_RESET), boot:0x13 (SPI_FAST_FLASH_BOOT) ets Jun 8 2016 00:22:57 ...
Pambuyo poyambira ndi zolembera zowunikira, muyenera kuwona OHello world! yosindikizidwa ndi pulogalamuyi.
… Moni Dziko Lapansi! Ikuyambiranso pakadutsa masekondi 10... Ichi ndi chip esp32 chokhala ndi 2 CPU core(ma) WiFi/BT/BLE, silicon revision 1, 2MB kung'anima kwakunja Kuchepera kwa mulu waulere: 298968 mabayiti Kuyambanso masekondi 9... Kuyambiranso mumasekondi 8... Kuyambiranso mumasekondi 7...
Kuti mutuluke kuwunika kwa IDF gwiritsani ntchito njira yachidule Ctrl+]. Ngati kuwunika kwa IDF kulephera posakhalitsa kutsitsa, kapena, ngati m'malo mwa mauthenga omwe ali pamwambapa, muwona zinyalala zosasinthika zomwe zaperekedwa pansipa, bolodi lanu liyenera kugwiritsa ntchito kristalo wa 26 MHz. Mapangidwe ambiri a boardboard amagwiritsa ntchito 40 MHz, kotero ESP-IDF imagwiritsa ntchito ma frequency awa ngati mtengo wokhazikika.

Ngati muli ndi vuto lotere, chitani zotsatirazi:
1. Tulukani polojekiti. 2. Bwererani ku menuconfig. 3. Pitani ku config chigawo> Zikhazikiko Hardware> Main XTAL Config> Main XTAL
pafupipafupi, kenako sinthani CONFIG_XTAL_FREQ_SEL kukhala 26 MHz. 4. Pambuyo pake, pangani ndikuwunikiranso pulogalamuyo.

Espressif Systems

42 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Mu mtundu waposachedwa wa ESP-IDF, ma frequency akulu a XTAL othandizidwa ndi ESP32 ndi motere:
26 MHz · 40 MHz
Zindikirani: Mutha kuphatikiza zomanga, zowunikira ndikuwunika kukhala sitepe imodzi pothamanga: idf.py -p PORT flash monitor
Onaninso: · IDF Monitor kuti mupeze njira zazifupi komanso zambiri zakugwiritsa ntchito mowunikira wa IDF. · idf.py kuti mudziwe zambiri za malamulo a idf.py ndi zosankha.
Ndizo zonse zomwe muyenera kuti muyambe ndi ESP32! Tsopano mwakonzeka kuyesa wina wakaleamples, kapena pitani mwachindunji kupanga mapulogalamu anu.
Zofunika: Zina zakaleamples sizigwirizana ndi ESP32 chifukwa zida zofunika sizikuphatikizidwa mu ESP32 kotero sizitha kuthandizidwa. Ngati kupanga example, chonde onani README file pa tebulo la Supported Targets. Ngati izi zilipo kuphatikiza chandamale cha ESP32, kapena tebulo kulibe konse, example idzagwira ntchito pa ESP32.
Malangizo Owonjezera
Nkhani zololeza /dev/ttyUSB0 Ndi magawo ena a Linux, mutha kupeza Cholephereka kutsegula doko /dev/ttyUSB0 uthenga wolakwika mukawunikira ESP32. Izi zitha kuthetsedwa powonjezera wogwiritsa ntchito pano pagulu la dialog.
Kugwirizana kwa Python ESP-IDF imathandizira Python 3.7 kapena yatsopano. Ndibwino kuti mukweze makina anu ogwiritsira ntchito kuti akhale atsopano omwe akukwaniritsa izi. Zosankha zina zikuphatikiza kuyika Python kuchokera kumagwero kapena kugwiritsa ntchito kasamalidwe ka mtundu wa Python monga pyenv.
Yambani ndi Phukusi Lothandizira Gulu Kuti mufulumizitse kujambula pama board ena achitukuko, mutha kugwiritsa ntchito Phukusi la Board Support (BSPs), zomwe zimapangitsa kuti kuyambika kwa bolodi kukhale kosavuta ngati kuyimba pang'ono. BSP nthawi zambiri imathandizira zida zonse zoperekedwa pagulu lachitukuko. Kupatulapo tanthauzo la pinout ndi ntchito zoyambira, sitima za BSP zokhala ndi madalaivala azinthu zakunja monga masensa, mawonedwe, ma codec omvera etc. BSPs amagawidwa kudzera mu IDF Component Manager, kotero iwo angapezeke mu IDF Component Registry. Herens ndi exampMomwe mungawonjezere ESP-WROVER-KIT BSP ku polojekiti yanu: idf.py add-dependency esp_wrover_kit
Zambiri exampzochepa za kugwiritsa ntchito BSP zitha kupezeka mu BSP examples chikwatu.
Langizo: Kusintha ESP-IDF Ndibwino kuti musinthe ESP-IDF nthawi ndi nthawi, monga matembenuzidwe atsopano amakonza zolakwika ndi/kapena kupereka zatsopano. Chonde dziwani kuti ESP-IDF iliyonse yayikulu ndi yaying'ono yotulutsidwa ili ndi nthawi yothandizira, ndipo pamene nthambi imodzi yotulutsidwa ikuyandikira mapeto a moyo (EOL), ogwiritsa ntchito onse akulimbikitsidwa kukweza mapulojekiti awo kuti atulutse ESP-IDF posachedwapa, kuti mudziwe zambiri za nthawi zothandizira, onani Mabaibulo a ESP-IDF.

Espressif Systems

43 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 1. Yambani
Njira yosavuta yosinthira ndikuchotsa chikwatu cha esp-idf chomwe chilipo ndikuchifananizanso, ngati kuti mukukhazikitsa koyambirira komwe kwafotokozedwa mu Gawo 2. Pezani ESP-IDF. Njira ina ndikungosintha zomwe zasintha. Njira yosinthira imatengera mtundu wa ESP-IDF womwe mukugwiritsa ntchito. Mukamaliza kukonza ESP-IDF, yambitsaninso instalar script, ngati mtundu watsopano wa ESP-IDF ungafune zida zosiyanasiyana. Onani malangizo pa Gawo 3. Konzani zida. Zida zatsopano zikakhazikitsidwa, sinthani chilengedwe pogwiritsa ntchito Export script. Onani malangizo pa Gawo 4. Konzani zosintha za chilengedwe.
Zolemba Zofananira · Khazikitsani Kulumikizana Kwazinthu ndi ESP32 · Eclipse Plugin · VSCode Extension · IDF Monitor
1.4 Pangani Ntchito Yanu Yoyamba
Ngati muli ndi ESP-IDF yoyikiratu ndipo osagwiritsa ntchito IDE, mutha kupanga projekiti yanu yoyamba kuchokera pamzere wolamula kutsatira Yambitsani Ntchito pa Windows kapena Yambitsani Ntchito pa Linux ndi macOS.
1.5 Chotsani ESP-IDF
Ngati mukufuna kuchotsa ESP-IDF, chonde tsatirani Chotsani ESP-IDF.

Espressif Systems

44 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 2
API Reference
2.1 API Conventions
Chikalatachi chikufotokoza za misonkhano ndi zongoganiza zomwe zimafanana ndi ESP-IDF Application Programming Interfaces (APIs). ESP-IDF imapereka mitundu ingapo yamapulogalamu:
· C ntchito, zomanga, ma enum, matanthauzidwe amtundu ndi ma macros oyambilira omwe adalengezedwa pamutu wapagulu filezigawo za ESPDF. Masamba osiyanasiyana mu gawo la API Reference la kalozera wamapulogalamu ali ndi mafotokozedwe a ntchito, mapangidwe ndi mitundu iyi.
· Pangani ntchito zamakina, zosinthika zomwe zidafotokozedweratu ndi zosankha. Izi zalembedwa mu bukhu la zomangamanga. · Zosankha za Kconfig zitha kugwiritsidwa ntchito pamakhodi komanso pamakina omanga (CMakeLists.txt) files. · Zida zochitira alendo ndi magawo awo a mzere wamalamulo nawonso ndi gawo la mawonekedwe a ESP-IDF. ESP-IDF ili ndi zigawo zolembedwa makamaka za ESP-IDF komanso malaibulale a chipani chachitatu. Nthawi zina, chopukutira cha ESP-IDF-enieni chimawonjezedwa ku laibulale ya chipani chachitatu, ndikupereka mawonekedwe omwe amakhala osavuta kapena ophatikizidwa bwino ndi zida zonse za ESP-IDF. Nthawi zina, API yoyambirira ya laibulale ya chipani chachitatu imaperekedwa kwa opanga mapulogalamu. Magawo otsatirawa akufotokozera mbali zina za ESP-IDF APIs ndi kagwiritsidwe ntchito kake.
Zolakwitsa pakuwongolera
Ma ESP-IDF API ambiri amabwezera zolakwika zomwe zimafotokozedwa ndi mtundu wa esp_err_t. Onani gawo la Kuwongolera Zolakwa kuti mumve zambiri za njira zothetsera zolakwika. Error Code Reference ili ndi mndandanda wa zolakwika zomwe zabwezedwa ndi zigawo za ESP-IDF.
2.1.2 Mapangidwe a kasinthidwe
Zofunika: Kukhazikitsa kolondola kwa masinthidwe ndi gawo lofunikira pakupangitsa kuti pulogalamuyi igwirizane ndi mitundu yamtsogolo ya ESP-IDF.
Ntchito zambiri zoyambira kapena masinthidwe mu ESP-IDF zimatenga ngati mkangano cholozera pamakonzedwe a kasinthidwe. Za exampLe:
45

Mutu 2. API Reference

const esp_timer_create_args_t my_timer_args = { .callback = &my_timer_callback, .arg = callback_arg, .name = "my_timer"
}; esp_timer_handle_t my_timer; esp_err_t err = esp_timer_create(&my_timer_args, &my_timer);
Ntchito zoyambira sizimasunga cholozera pamasinthidwe, chifukwa chake ndikotetezeka kugawa kapangidwe kake pa stack.
Pulogalamuyo iyenera kuyambitsa magawo onse a dongosolo. Izi sizolondola:
esp_timer_create_args_t my_timer_args; my_timer_args.callback = &my_timer_callback; /* Zolakwika! Fields .arg ndi .name sanayambike */ esp_timer_create(&my_timer_args, &my_timer);
Zambiri za ESP-IDF examples gwiritsani ntchito oyambitsa osankhidwa a C99 poyambitsa dongosolo, popeza amapereka njira yachidule yokhazikitsira magawo ang'onoang'ono, ndikuyambitsa ziro zotsalazo:
const esp_timer_create_args_t my_timer_args = { .callback = &my_timer_callback, /* Zolondola, minda .arg ndi .name ndi ziro-inayamba */
};
Chilankhulo cha C++ sichigwirizana ndi mawu oyambira mpaka C++20, komabe wophatikiza wa GCC amathandizira pang'ono ngati chowonjezera. Mukamagwiritsa ntchito ma ESP-IDF APIs mu code C++, mungaganizire kugwiritsa ntchito njira iyi:
esp_timer_create_args_t my_timer_args = {}; /* Minda yonse idayambika ziro */ my_timer_args.callback = &my_timer_callback;

Zoyambira zofikira
Pazinthu zina zosinthira, ESP-IDF imapereka ma macros kuti akhazikitse zofunikira za magawo:
httpd_config_t config = HTTPD_DEFAULT_CONFIG(); /* HTTPD_DEFAULT_CONFIG imakulitsidwa mpaka koyambitsa kosankhidwa.
Tsopano minda yonse yakhazikitsidwa ku zikhalidwe zosasinthika. Munda uliwonse ukhoza kusinthidwa: */ config.server_port = 8081; httpd_handle_t seva; esp_err_t err = httpd_start(&server, &config);
Ndikofunikira kugwiritsa ntchito ma macros oyambira osasinthika nthawi iliyonse akaperekedwa pamakonzedwe enaake.

2.1.3 Ma API Achinsinsi
Mutu wina files mu ESP-IDF muli ma API oti azingogwiritsidwa ntchito mu code ya ESP-IDF yokha, osati ndi mapulogalamu. Mutu wotere files nthawi zambiri amakhala ndi zachinsinsi kapena esp_zachinsinsi m'dzina kapena njira yawo. Zina, monga hal zili ndi ma API achinsinsi. Ma API achinsinsi amatha kuchotsedwa kapena kusinthidwa mwanjira yosagwirizana pakati pa zotulutsa zazing'ono kapena zigamba.

2.1.4 Zigawo mu Exampndi ma project
ESP-IDF exampLes ali ndi ma projekiti osiyanasiyana omwe akuwonetsa kugwiritsa ntchito ma ESP-IDF API. Kuti muchepetse kubwereza kwa code mu exampLes, othandizira ochepa odziwika amatanthauzidwa mkati mwa zigawo zomwe zimagwiritsidwa ntchito ndi angapo examples.

Espressif Systems

46 Tumizani Ndemanga za Document

Kutulutsidwa kwa v5.0.9

Mutu 2. API Reference
Izi zikuphatikizapo zigawo zomwe zili

Zolemba / Zothandizira

Espressif Systems ESP32 Dev Kitc Development Board [pdf] Buku Logwiritsa Ntchito
ESP32 Dev Kitc Development Board, ESP32, Dev Kitc Development Board, Kitc Development Board, Development Board, Board

Maumboni

Siyani ndemanga

Imelo yanu sisindikizidwa. Minda yofunikira yalembedwa *