ESP32 ડેવ કિટ ડેવલપમેન્ટ બોર્ડ

ઉત્પાદન માહિતી

વિશિષ્ટતાઓ

  • ઉત્પાદન: ESP32
  • પ્રોગ્રામિંગ માર્ગદર્શિકા: ESP-IDF
  • રિલીઝ વર્ઝન: v5.0.9
  • ઉત્પાદક: એસ્પ્રેસિફ સિસ્ટમ્સ
  • પ્રકાશન તારીખ: મે 16, 2025

ઉત્પાદન વપરાશ સૂચનાઓ

1. પ્રારંભ કરો

ESP32 શરૂ કરતા પહેલા, આનાથી પરિચિત થાઓ
નીચેના:

1.1 પરિચય

ની મૂળભૂત કાર્યક્ષમતા અને ક્ષમતાઓ વિશે જાણો
ઇએસપી32.

1.2 તમને શું જોઈએ છે

ખાતરી કરો કે તમારી પાસે જરૂરી હાર્ડવેર અને સોફ્ટવેર છે:

  • હાર્ડવેર: જરૂરી હાર્ડવેરની યાદી તપાસો
    ઘટકો
  • સૉફ્ટવેર: જરૂરી સોફ્ટવેર ઇન્સ્ટોલ કરો
    ઘટકો

1.3 સ્થાપન

IDE ઇન્સ્ટોલ કરવા અને સેટ કરવા માટે આ પગલાં અનુસરો
પર્યાવરણ:

  • IDE: માટે ભલામણ કરેલ IDE ઇન્સ્ટોલ કરો
    ESP32 નું પ્રોગ્રામિંગ.
  • મેન્યુઅલ ઇન્સ્ટોલેશન: મેન્યુઅલી સેટ કરો
    જો જરૂરી હોય તો પર્યાવરણ.

૧.૪ તમારો પહેલો પ્રોજેક્ટ બનાવો

ESP32 નો ઉપયોગ કરીને તમારો પ્રારંભિક પ્રોજેક્ટ બનાવો અને બનાવો.

૧.૫ ESP-IDF અનઇન્સ્ટોલ કરો

જો જરૂર હોય તો, તમારામાંથી ESP-IDF કેવી રીતે અનઇન્સ્ટોલ કરવું તે શીખો
સિસ્ટમ

2. API સંદર્ભ

વિગતવાર માહિતી માટે API દસ્તાવેજીકરણનો સંદર્ભ લો
એપ્લિકેશન પ્રોટોકોલ, ભૂલ નિયંત્રણ અને ગોઠવણી
માળખાં

વારંવાર પૂછાતા પ્રશ્નો (FAQ)

પ્ર: ESP32 સાથેની સામાન્ય સમસ્યાઓનું નિવારણ હું કેવી રીતે કરી શકું?

A: પ્રોગ્રામિંગ માર્ગદર્શિકામાં મુશ્કેલીનિવારણ વિભાગનો સંદર્ભ લો.
અથવા ઉત્પાદકની મુલાકાત લો webઆધાર સંસાધનો માટે સાઇટ.

પ્રશ્ન: શું હું અન્ય માઇક્રોકન્ટ્રોલર્સ સાથે ESP-IDF નો ઉપયોગ કરી શકું?

A: ESP-IDF ખાસ કરીને ESP32 માટે રચાયેલ છે, પરંતુ તમને મળી શકે છે
અન્ય એસ્પ્રેસિફ માઇક્રોકન્ટ્રોલર્સ સાથે સુસંગતતા.

ESP32
ESP-IDF પ્રોગ્રામિંગ માર્ગદર્શિકા
રિલીઝ v5.0.9 એસ્પ્રેસિફ સિસ્ટમ્સ 16 મે, 2025

સામગ્રીઓનું કોષ્ટક

સામગ્રીઓનું કોષ્ટક

i

1 પ્રારંભ કરો

3

૨.૩.૧ પરિચય . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૮૬

૧.૨ તમને શું જોઈએ છે .

૧.૨.૧ હાર્ડવેર .

૧.૨.૨ સોફ્ટવેર . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૪

૧.૩ ઇન્સ્ટોલેશન . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૪

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

૧.૩.૨ મેન્યુઅલ ઇન્સ્ટોલેશન . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૪

૧.૪ તમારો પહેલો પ્રોજેક્ટ બનાવો.

૧.૫ ESP-IDF અનઇન્સ્ટોલ કરો .

2 API સંદર્ભ

45

૨.૧ API સંમેલનો .

૨.૧.૧ ભૂલ સંભાળવી.

૨.૧.૨ રૂપરેખાંકન માળખાં .

૨.૧.૩ ખાનગી API .

૨.૧.૪ ભૂતપૂર્વમાં ઘટકોampલે પ્રોજેક્ટ્સ .

૨.૧.૫ API સ્થિરતા .

૨.૨ એપ્લિકેશન પ્રોટોકોલ .

2.2.1 ASIO પોર્ટ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

૨.૨.૨ ઇએસપી-મોડબસ .

૨.૨.૩ ઇએસપી-એમક્યુટીટી .

૨.૨.૪ ESP-TLS .

૨.૨.૫ ESP HTTP ક્લાયંટ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૮૦

૨.૨.૬ ESP લોકલ કંટ્રોલ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

૨.૨.૭ ESP ​​સીરીયલ સ્લેવ લિંક . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૦૪

૨.૨.૮ ESP x509 પ્રમાણપત્ર બંડલ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૧

૨.૨.૯ HTTP સર્વર . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૩

૨.૨.૧૦ HTTPS સર્વર .

૨.૨.૧૧ ICMP ઇકો .

૨.૨.૧૨ mDNS સેવા . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૫૯

૨.૨.૧૩ એમબેડ ટીએલએસ .

૨.૨.૧૪ IP નેટવર્ક સ્તર . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૬૧

૨.૩ બ્લૂટૂથ API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૬૧

૨.૩.૧ બ્લૂટૂથ® કોમન . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૬૧

૨.૩.૨ બ્લૂટૂથ® ઓછી ઉર્જા . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૭૧

૨.૩.૩ બ્લૂટૂથ® ક્લાસિક .

૨.૩.૪ કંટ્રોલર અને એચસીઆઈ .

૨.૩.૫ ઇએસપી-બીએલઇ-મેશ .

૨.૩.૬ Nimble-આધારિત હોસ્ટ API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767

૨.૪ ભૂલ કોડ્સ સંદર્ભ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769

૨.૫ નેટવર્કિંગ API .

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

૨.૫.૨ ઇથરનેટ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899

૨.૫.૩ થ્રેડ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૯૩૬

i

૨.૫.૪ ઇએસપી-નેટિફ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942 2.5.5 IP નેટવર્ક સ્તર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974 2.5.6 એપ્લિકેશન સ્તર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976 2.6 પેરિફેરલ્સ API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 2.6.1 એનાલોગ ટુ ડિજિટલ કન્વર્ટર (ADC) વનશોટ મોડ ડ્રાઇવર. . . . . . . . . . . . . . . . . 977 2.6.2 એનાલોગ ટુ ડિજિટલ કન્વર્ટર (ADC) કન્ટીન્યુઅસ મોડ ડ્રાઇવર. . . . . . . . . . . . . . . 986 2.6.3 એનાલોગ ટુ ડિજિટલ કન્વર્ટર (ADC) કેલિબ્રેશન ડ્રાઇવર. . . . . . . . . . . . . . . . . . . 993 2.6.4 ઘડિયાળનું વૃક્ષ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 2.6.5 ડિજિટલ ટુ એનાલોગ કન્વર્ટર (DAC). . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૦૦૪ ૨.૬.૬ જીપીઆઈઓ અને આરટીસી જીપીઆઈઓ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૦૦૮ ૨.૬.૭ જનરલ પર્પઝ ટાઈમર (GPTimer). . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૦૨૭ ૨.૬.૮ ઇન્ટર-ઇન્ટિગ્રેટેડ સર્કિટ (I2C). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૦૩૯ ૨.૬.૯ ઇન્ટર-આઇસી સાઉન્ડ (I2S). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૦૫૬ ૨.૬.૧૦ એલસીડી. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૦૯૦ ૨.૬.૧૧ LED કંટ્રોલ (LEDC). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૧૦૭ ૨.૬.૧૨ મોટર કંટ્રોલ પલ્સ વિડ્થ મોડ્યુલેટર (MCPWM). . . . . . . . . . . . . . . . . . . . . ૧૧૨૬ ૨.૬.૧૩ પલ્સ કાઉન્ટર (પીસીએનટી). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178 2.6.14 રિમોટ કંટ્રોલ ટ્રાન્સસીવર (RMT). . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૧૯૩ ૨.૬.૧૫ SD પુલ-અપ આવશ્યકતાઓ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૨૦ ૨.૬.૧૬ SDMMC હોસ્ટ ડ્રાઈવર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૨૩ ૨.૬.૧૭ SD SPI હોસ્ટ ડ્રાઈવર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૨૯ ૨.૬.૧૮ SDIO કાર્ડ સ્લેવ ડ્રાઈવર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૩૪ ૨.૬.૧૯ સિગ્મા-ડેલ્ટા મોડ્યુલેશન (SDM). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૪૪ ૨.૬.૨૦ SPI માસ્ટર ડ્રાઈવર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૪૯ ૨.૬.૨૧ SPI સ્લેવ ડ્રાઈવર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૭૪ ૨.૬.૨૨ ESP32-WROOM-32SE (સુરક્ષિત તત્વ). . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૮૧ ૨.૬.૨૩ ટચ સેન્સર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૮૨ ૨.૬.૨૪ ટુ-વાયર ઓટોમોટિવ ઇન્ટરફેસ (TWAI). . . . . . . . . . . . . . . . . . . . . . . . . . ૧૨૯૯ ૨.૬.૨૫ યુનિવર્સલ એસિંક્રોનસ રીસીવર/ટ્રાન્સમીટર (UART). . . . . . . . . . . . . . . . . . ૧૩૧૭ ૨.૭ પ્રોજેક્ટ રૂપરેખાંકન. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૫૨ ૫.૧ પરિચય. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૩૪૨ ૨.૭.૨ પ્રોજેક્ટ રૂપરેખાંકન મેનુ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૩૪૨ ૨.૭.૩ sdkconfig.defaults નો ઉપયોગ કરીને. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૩૪૨ ૨.૭.૪ Kconfig ફોર્મેટિંગ નિયમો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૩૪૩ ૨.૭.૫ Kconfig વિકલ્પોની પાછળની સુસંગતતા. . . . . . . . . . . . . . . . . . . . . . . . ૧૩૪૩ ૨.૭.૬ રૂપરેખાંકન વિકલ્પો સંદર્ભ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૩૪૩ ૨.૮ પ્રોવિઝનિંગ API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૬૪૭ ૨.૮.૧ પ્રોટોકોલ કોમ્યુનિકેશન. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૬૪૭ ૨.૮.૨ યુનિફાઇડ પ્રોવિઝનિંગ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૬૬૫ ૨.૮.૩ વાઇ-ફાઇ પ્રોવિઝનિંગ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૬૬૯ ૨.૯ સ્ટોરેજ API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fileસિસ્ટમ સપોર્ટ . . ૧૭૦૩ ૨.૯.૪ NVS પાર્ટીશન જનરેટર યુટિલિટી . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૭૨૫ ૨.૯.૫ SD/SDIO/MMC ડ્રાઈવર . . . . . . . . . . . . . . ૧૭૪૪ ૨.૯.૭ સ્પિફ્સ Fileસિસ્ટમ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૭૮૦ ૨.૯.૮ વર્ચ્યુઅલ fileસિસ્ટમ ઘટક . . . . . . . . . . . . . . ૧૮૦૩ ૨.૧૦.૧ એપ ઇમેજ ફોર્મેટ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૮૦૩ ૨.૧૦.૨ એપ્લીકેશન લેવલ ટ્રેસીંગ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૮૦૮ ૨.૧૦.૩ બાહ્ય સ્ટેક સાથે કોલ ફંક્શન . . . . . . . . . . . . . . . . . . . . . ૧૮૧૩ ૨.૧૦.૪ ચિપ રિવિઝન . ૧૮૧૭ ૨.૧૦.૬ ઇફ્યુઝ મેનેજર . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૮૨૬ ૨.૧૦.૭ ભૂલ કોડ્સ અને સહાયક કાર્યો . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૮૪૬
ii

૨.૧૦.૮ ESP HTTPS OTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૮૪૯ ૨.૧૦.૯ ઇવેન્ટ લૂપ લાઇબ્રેરી . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૮૫૬ ૨.૧૦.૧૦ ફ્રીઆરટીઓએસ (ઓવરview) . . . . . . ૧૯૮૮ ૨.૧૦.૧૩ હીપ મેમરી ફાળવણી . . . . . . . . . . . . . . . 2032 2.10.16 આંતરિક અને અસ્થિર API . . ૨૦૫૮ ૨.૧૦.૨૧ ઓવર ધ એર અપડેટ્સ (OTA) . . . . . . . . . . . . . . 2087 2.10.24 POSIX થ્રેડ્સ સપોર્ટ . . 2121 2.10.29 હિમ એલોકેશન API . . . . . . . . . . . . . . . . . 2161

3 હાર્ડવેર સંદર્ભ

2167

૩.૧ ચિપ શ્રેણી સરખામણી .

૩.૧.૧ સંબંધિત દસ્તાવેજો .

4 API માર્ગદર્શિકાઓ

2171

૪.૧ એપ્લિકેશન લેવલ ટ્રેસિંગ લાઇબ્રેરી .

4.1.1 ઓવરview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171

૪.૧.૨ કામગીરીની રીતો .

૪.૧.૩ રૂપરેખાંકન વિકલ્પો અને નિર્ભરતાઓ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2172

૪.૧.૪ આ લાઇબ્રેરીનો ઉપયોગ કેવી રીતે કરવો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2173

૪.૨ એપ્લિકેશન સ્ટાર્ટઅપ ફ્લો .

4.2.1 પ્રથમ એસtagઇ બુટલોડર .

4.2.2 સેકન્ડ એસtagઇ બુટલોડર .

૪.૨.૩ એપ્લિકેશન સ્ટાર્ટઅપ .

૪.૩ બ્લૂટૂથ® ક્લાસિક .

4.3.1 ઓવરview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2184

૪.૪ બ્લૂટૂથ® ઓછી ઉર્જા .

4.4.1 ઓવરview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2186

૪.૪.૨ શરૂઆત કરો.

4.4.3 પ્રોfile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2240

૪.૫ બુટલોડર .

૪.૫.૧ બુટલોડર સુસંગતતા .

૪.૫.૨ લોગ લેવલ .

૪.૫.૩ ફેક્ટરી રીસેટ.

૪.૫.૪ ટેસ્ટ ફર્મવેરથી બુટ કરો.

૪.૫.૫ રોલબેક .

૪.૫.૬ વોચડોગ .

૪.૫.૭ બુટલોડરનું કદ .

૪.૫.૮ ડીપ સ્લીપમાંથી ઝડપી બુટ.

૪.૫.૯ કસ્ટમ બુટલોડર .

૪.૬ બિલ્ડ સિસ્ટમ .

4.6.1 ઓવરview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2288

૪.૬.૨ બિલ્ડ સિસ્ટમનો ઉપયોગ કરીને .

iii

4.6.3 ઉદાampલે પ્રોજેક્ટ . File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2291 4.6.5 ઘટક CMakeLists Files . ૨૨૯૫ ૪.૬.૮ ઘટક આવશ્યકતાઓ . ૨૩૦૦ ૪.૬.૧૧ ડીબગીંગ સીમેક .ampકમ્પોનન્ટ CMakeLists . . . . . . 2305 4.6.15 બુટલોડર બનાવવું . 2306 4.6.18 ઘટકો સાથે પ્રીબિલ્ટ લાઇબ્રેરીઓનો ઉપયોગ . File ગ્લોબિંગ અને ઇન્ક્રીમેન્ટલ બિલ્ડ્સ . . . 2313 4.6.24 ESP-IDF GNU મેક સિસ્ટમમાંથી સ્થળાંતર .view . . . . . . . . . . . . . . . . . 2317 4.7.4 UART પર કોર ડમ્પ છાપો . . . . . . . . . . . . . . . . . . . . . . 2318 4.7.7 espcoredump.py ચલાવવું . . ૨૩૨૨ ૪.૮.૪ RTC મેમરીમાં ડેટા લોડ કરી રહ્યું છે.ampલે .view . . . . . . . 2324 4.9.4 ESP_ERROR_CHECK મેક્રો . . . . . 2325 4.9.7 ESP_GOTO_ON_ERROR મેક્રો . . . . . . . . 2325 4.9.10 મેક્રોસ તપાસો એક્સampલેસ . . . . . 2327 4.10 ESP-WIFI-મેશ .view . . . . . . . . . . . . . . . . . . . . 2329 4.10.4 નેટવર્ક બનાવવું . .
iv

૪.૧૦.૮ કામગીરી. . ૨૩૪૯ ૪.૧૧.૩ બ્લૂટૂથ ઇવેન્ટ્સ .view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૫૦ ૪.૧૨.૨ પેનિક હેન્ડલર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.3 રજીસ્ટર ડમ્પ અને બેકટ્રેસ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૫૧ ૪.૧૨.૪ GDB સ્ટબ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૫૩ ૪.૧૨.૫ RTC વોચડોગ સમયસમાપ્તિ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૦૪ ૪.૧૨.૬ ગુરુ ધ્યાન ભૂલો . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૦૪ ૪.૧૨.૭ અન્ય ઘાતક ભૂલો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2356 4.13 ફ્લેશ એન્ક્રિપ્શન. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૧૫૨ ૫.૧ પરિચય. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૫૯ ૪.૧૩.૨ સંબંધિત ઇફ્યુઝ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2359 4.13.3 ફ્લેશ એન્ક્રિપ્શન પ્રક્રિયા. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2360 4.13.4 ફ્લેશ એન્ક્રિપ્શન રૂપરેખાંકન. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૬૦ ૪.૧૩.૫ શક્ય નિષ્ફળતાઓ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2366 4.13.6 ESP32 ફ્લેશ એન્ક્રિપ્શન સ્થિતિ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2368 4.13.7 એન્ક્રિપ્ટેડ ફ્લેશમાં ડેટા વાંચવો અને લખવો. . . . . . . . . . . . . . . . . . . . . . . 2368 4.13.8 એન્ક્રિપ્ટેડ ફ્લેશ અપડેટ કરી રહ્યા છીએ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2369 4.13.9 ફ્લેશ એન્ક્રિપ્શનને અક્ષમ કરી રહ્યું છે. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2369 4.13.10 ફ્લેશ એન્ક્રિપ્શન વિશે મુખ્ય મુદ્દાઓ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2370 4.13.11 ફ્લેશ એન્ક્રિપ્શનની મર્યાદાઓ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2370 4.13.12 ફ્લેશ એન્ક્રિપ્શન અને સુરક્ષિત બુટ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૭૧ ૪.૧૩.૧૩ અદ્યતન સુવિધાઓ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૭૧ ૪.૧૩.૧૪ ટેકનિકલ વિગતો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2373 4.14 હાર્ડવેર એબ્સ્ટ્રેક્શન. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૭૩ ૪.૧૪.૧ આર્કિટેક્ચર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૭૪ ૪.૧૪.૨ LL (નીચલું સ્તર) સ્તર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૭૫ ૪.૧૪.૩ HAL (હાર્ડવેર એબ્સ્ટ્રેક્શન લેયર). . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૭૬ ૪.૧૫ ઉચ્ચ-સ્તરીય વિક્ષેપો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૭૭ ૪.૧૫.૧ વિક્ષેપ સ્તરો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ૨૩૭૭ ૪.૧૫.૨ નોંધો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TAG ડીબગીંગ . . . . . . . . . . . . . . . . . . . . . . . . . . . 2379 4.16.3 J પસંદ કરી રહ્યા છીએTAG એડેપ્ટર . . . . . . . . . 2380 4.16.6 ડીબગર લોન્ચ કરી રહ્યું છે .ampલેસ . . . . . . 2391 4.16.10 સંબંધિત દસ્તાવેજો .view . . . . . . . . . . . . 2424 4.18 lwIP . ૨૪૩૦ ૪.૧૮.૨ BSD સોકેટ્સ API . .
v

૪.૧૮.૭ પ્રદર્શન ઑપ્ટિમાઇઝેશન .
૪.૧૯.૧ DRAM (ડેટા રેમ) . . . . . . . . . 2441 4.19.4 DROM (ફ્લેશમાં સંગ્રહિત ડેટા) . . . 2443 4.20.3 ઓપનથ્રેડ બોર્ડર રાઉટર .view . . . . . . . . . . . . . . 2445 4.21.4 બાઈનરી પાર્ટીશન ટેબલ જનરેટ કરી રહ્યા છીએ . . . . . . . . . . . . . . . . . . . . 2449 4.21.7 પાર્ટીશન ટૂલ (parttool.py) . . . . . . . . . . . 2468 4.23.1 આંશિક માપાંકન . . ૨૪૬૯ ૪.૨૪ સુરક્ષિત બુટ .view . . . . . . . . . . . . . . . 2474 4.24.5 સુરક્ષિત બુટ કેવી રીતે સક્ષમ કરવું . . . . . . . . . . . 2475 4.24.8 છબીઓનું દૂરસ્થ સહીકરણ . . . . . . . . . . . . . . . . . . . . . . . . . 2476 4.24.11 સુરક્ષિત બુટ અને ફ્લેશ એન્ક્રિપ્શન . . . . . . . . . . . 2478 4.25 સિક્યોર બૂટ V2 .tages . . . . . . . . . . . . 2480 4.25.5 સુરક્ષિત પેડિંગ . . 2481 4.25.10 સિક્યોર બૂટ V2 કેવી રીતે સક્ષમ કરવું . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.11 સિક્યોર બૂટ સક્ષમ થયા પછી પ્રતિબંધો .
vi

૪.૨૫.૧૩ છબીઓનું રિમોટ સાઇનિંગ . . . . . . . . . . . 2484 4.25.16 સુરક્ષિત બુટ અને ફ્લેશ એન્ક્રિપ્શન . . 2485 4.26 બાહ્ય RAM માટે સપોર્ટ . . ૨૪૮૭ ૪.૨૬.૫ શરૂ કરવામાં નિષ્ફળતા. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.27.1 ઓવરview . . 2489 4.28.1 IDF ફ્રન્ટએન્ડ – idf.py . . . . . . . . . . . . . . . . . . . . . 2495 4.28.4 IDF કમ્પોનન્ટ મેનેજર . . . . 2512 4.29.2 મલ્ટી-ડિવાઇસ ટેસ્ટ કેસ .tage ટેસ્ટ કેસો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2514 4.29.4 વિવિધ લક્ષ્યો માટે પરીક્ષણો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2514 4.29.5 બિલ્ડીંગ યુનિટ ટેસ્ટ એપ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2515 4.29.6 રનિંગ યુનિટ ટેસ્ટ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2515 4.29.7 કેશ કમ્પેન્સેટેડ ટાઈમર સાથેનો ટાઈમિંગ કોડ. . . . . . . . . . . . . . . . . . . . . . . 2516 4.29.8 મોક્સ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2517 4.30 Linux પર યુનિટ ટેસ્ટિંગ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2519 4.30.1 એમ્બેડેડ સોફ્ટવેર ટેસ્ટ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2519 4.30.2 Linux હોસ્ટ પર IDF યુનિટ ટેસ્ટ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2520 4.31 વાઇ-ફાઇ ડ્રાઇવર. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.1 ESP32 Wi-Fi ફીચર લિસ્ટ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.2 Wi-Fi એપ્લિકેશન કેવી રીતે લખવી. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.3 ESP32 Wi-Fi API ભૂલ કોડ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.4 ESP32 Wi-Fi API પેરામીટર ઇનિશિયલાઇઝેશન. . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.5 ESP32 Wi-Fi પ્રોગ્રામિંગ મોડેલ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.6 ESP32 Wi-Fi ઇવેન્ટ વર્ણન. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2523 4.31.7 ESP32 Wi-Fi સ્ટેશન સામાન્ય દૃશ્ય . . . . . . . . . . . . . . . . . . . . . . . . . . . 2526 4.31.8 ESP32 Wi-Fi AP સામાન્ય દૃશ્ય. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.9 ESP32 વાઇ-ફાઇ સ્કેન. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.10 ESP32 Wi-Fi સ્ટેશન કનેક્ટિંગ દૃશ્ય. . . . . . . . . . . . . . . . . . . . . . . . . 2536 4.31.11 બહુવિધ AP મળે ત્યારે ESP32 Wi-Fi સ્ટેશન કનેક્ટ થઈ રહ્યું છે. . . . . . . . . . . . . 2543 4.31.12 Wi-Fi ફરીથી કનેક્ટ કરો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.13 Wi-Fi બીકન સમયસમાપ્તિ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.14 ESP32 Wi-Fi ગોઠવણી. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.15 Wi-Fi Easy ConnectTM (DPP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.16 વાયરલેસ નેટવર્ક મેનેજમેન્ટ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.17 રેડિયો રિસોર્સ મેઝરમેન્ટ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.18 ઝડપી BSS સંક્રમણ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2550 4.31.19 ESP32 Wi-Fi પાવર-સેવિંગ મોડ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2550 4.31.20 ESP32 વાઇ-ફાઇ થ્રુપુટ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vii

૪.૩૧.૨૧ વાઇ-ફાઇ ૮૦૨૧૧ પેકેટ મોકલો. . . . . . . . . . . . . . . . . . . . . . . . 2554 4.31.24 Wi-Fi ચેનલ સ્થિતિ માહિતી . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.27 Wi-Fi QoS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.28 Wi-Fi AMSDU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.29 Wi-Fi ટુકડો . . . . . . . . . . . . . 2568 4.32.2 પ્રોટેક્ટેડ મેનેજમેન્ટ ફ્રેમ્સ (PMF) . .view . 2574 4.33.4 સહઅસ્તિત્વ સુવિધાનો ઉપયોગ કેવી રીતે કરવો . . . . . . . . . . . . . . . . . . . 2577 4.34.2 બિન-પુનઃઉત્પાદનક્ષમ બિલ્ડ્સના કારણો . . . . . . . . . . 2578 4.34.5 પુનઃઉત્પાદનક્ષમ બિલ્ડ્સ અને ડિબગીંગ . . . . . . . ૨૫૭૮

૫ સ્થળાંતર માર્ગદર્શિકાઓ

2579

૫.૧ ESP-IDF ૫.x સ્થળાંતર માર્ગદર્શિકા .

૫.૧.૧ ૪.૪ થી ૫.૦ માં સ્થળાંતર .

૬ પુસ્તકાલયો અને માળખા

2611

૬.૧ ક્લાઉડ ફ્રેમવર્ક .

૬.૧.૧ ઇએસપી રેઈનમેકર .

૬.૧.૨ AWS IoT .

૬.૧.૩ એઝ્યોર આઇઓટી .

૬.૧.૪ ગુગલ આઇઓટી કોર .

6.1.5 અલીયુન આઇઓટી . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

૬.૧.૬ જોયલિંક આઇઓટી .

૬.૧.૭ ટેન્સેન્ટ આઇઓટી .

૬.૧.૮ ટેન્સેન્ટ્યુન આઇઓટી .

૬.૧.૯ બાયડુ આઇઓટી .

૬.૨ એસ્પ્રેસિફન્સ ફ્રેમવર્ક .

૬.૨.૧ એસ્પ્રેસિફ ઓડિયો ડેવલપમેન્ટ ફ્રેમવર્ક .

૬.૨.૨ ઇએસપી-સીએસઆઈ .

૬.૨.૩ એસ્પ્રેસિફ ડીએસપી લાઇબ્રેરી .

૬.૨.૪ ઇએસપી-વાઇફાઇ-મેશ ડેવલપમેન્ટ ફ્રેમવર્ક .

૬.૨.૫ ઇએસપી-ડબ્લ્યુએચઓ .

૬.૧.૧ ઇએસપી રેઈનમેકર .

૬.૨.૭ ESP-IoT-સોલ્યુશન .

૬.૨.૮ ઇએસપી-પ્રોટોકોલ્સ .

viii

૬.૨.૯ ઇએસપી-બીએસપી .

7 યોગદાન માર્ગદર્શિકા

2615

૭.૧ કેવી રીતે યોગદાન આપવું.

૭.૨ ફાળો આપતા પહેલા .

૭.૩ પુલ રિક્વેસ્ટ પ્રક્રિયા .

૭.૪ કાનૂની ભાગ .

૭.૫ સંબંધિત દસ્તાવેજો .

૭.૫.૧ એસ્પ્રેસિફ આઇઓટી ડેવલપમેન્ટ ફ્રેમવર્ક સ્ટાઇલ ગાઇડ .

૭.૫.૨ ESP-IDF પ્રોજેક્ટ માટે પ્રી-કમિટ હૂક ઇન્સ્ટોલ કરો. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2623

૭.૫.૩ દસ્તાવેજીકરણ કોડ .

૭.૫.૪ એક્સ બનાવવુંampલેસ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2629

૭.૫.૫ API દસ્તાવેજીકરણ નમૂનો .

૭.૫.૬ ફાળો આપનાર કરાર .

૭.૫.૭ કૉપિરાઇટ હેડર માર્ગદર્શિકા .

૭.૫.૮ પાયટેસ્ટ માર્ગદર્શિકા સાથે ESP-IDF પરીક્ષણો .

8 ESP-IDF આવૃત્તિઓ

2645

૮.૧ રિલીઝ .

૮.૨ મારે કયા સંસ્કરણથી શરૂઆત કરવી જોઈએ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645

૮.૩ વર્ઝનિંગ સ્કીમ .

૮.૪ સપોર્ટ પીરિયડ્સ .

૮.૫ વર્તમાન સંસ્કરણ તપાસી રહ્યું છે .

૮.૬ ગિટ વર્કફ્લો .

૮.૭ ESP-IDF અપડેટ કરી રહ્યું છે .

૮.૭.૧ સ્ટેબલ રિલીઝમાં અપડેટ કરી રહ્યું છે.

૮.૭.૨ પ્રી-રીલીઝ વર્ઝનમાં અપડેટ કરી રહ્યું છે. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649

૮.૭.૩ માસ્ટર બ્રાન્ચમાં અપડેટ કરી રહ્યા છીએ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649

૮.૭.૪ રિલીઝ શાખામાં અપડેટ કરવું.

9 સંસાધનો

2651

૯.૧ પ્લેટફોર્મઆઈઓ .

૯.૧.૧ પ્લેટફોર્મઆઈઓ શું છે? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2651

૯.૧.૨ સ્થાપન .

૯.૧.૩ રૂપરેખાંકન .

૯.૧.૪ ટ્યુટોરિયલ્સ .

૯.૧.૫ પ્રોજેક્ટ એક્સampલેસ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652

૯.૧.૬ આગળનાં પગલાં .

૯.૨ ઉપયોગી લિંક્સ .

૧૦ કોપીરાઈટ્સ અને લાઇસન્સ

2653

૧૦.૧ સોફ્ટવેર કોપીરાઈટ્સ .

૧૦.૧.૧ ફર્મવેર ઘટકો .

૧૦.૧.૨ દસ્તાવેજીકરણ .

૧૦.૨ રોમ સોર્સ કોડ કોપીરાઇટ્સ .

10.3 Xtensa libhal MIT લાયસન્સ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

10.4 TinyBasic Plus MIT લાઇસન્સ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

૧૦.૫ TJpgDec લાઇસન્સ .

11 વિશે

2657

૧૨ ભાષાઓ વચ્ચે સ્વિચ કરો

2659

અનુક્રમણિકા

2661

અનુક્રમણિકા

2661

ix

x

સામગ્રીઓનું કોષ્ટક
આ Espressif IoT ડેવલપમેન્ટ ફ્રેમવર્ક (esp-idf) માટેનું દસ્તાવેજીકરણ છે. ESP-IDF એ ESP32, ESP32-S અને ESP32-C સિરીઝ SoC માટેનું સત્તાવાર વિકાસ માળખું છે. આ દસ્તાવેજ ESP32 SoC સાથે ESP-IDF નો ઉપયોગ કેવી રીતે કરવો તેનું વર્ણન કરે છે.

પ્રારંભ કરો

API સંદર્ભ

API માર્ગદર્શિકાઓ

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

સામગ્રીઓનું કોષ્ટક

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ 1
પ્રારંભ કરો
આ દસ્તાવેજ તમને Espressif દ્વારા ESP32 ચિપ પર આધારિત હાર્ડવેર માટે સોફ્ટવેર ડેવલપમેન્ટ વાતાવરણ સેટ કરવામાં મદદ કરવા માટે છે. તે પછી, એક સરળ ઉદાહરણampઆ તમને મેનુ ગોઠવણી માટે ESP-IDF (Espressif IoT ડેવલપમેન્ટ ફ્રેમવર્ક) નો ઉપયોગ કેવી રીતે કરવો તે બતાવશે, પછી ESP32 બોર્ડ પર ફર્મવેર બનાવવા અને ફ્લેશ કરવા માટે.
નોંધ: આ ESP-IDF ના સ્થિર સંસ્કરણ v5.0.9 માટે દસ્તાવેજીકરણ છે. અન્ય ESP-IDF સંસ્કરણો પણ ઉપલબ્ધ છે.
1.1 પરિચય
ESP32 એ ચિપ પર આધારિત સિસ્ટમ છે જે નીચેની સુવિધાઓને એકીકૃત કરે છે: · Wi-Fi (2.4 GHz બેન્ડ) · બ્લૂટૂથ · ડ્યુઅલ હાઇ પરફોર્મન્સ Xtensa® 32-બીટ LX6 CPU કોરો · અલ્ટ્રા લો પાવર કો-પ્રોસેસર · બહુવિધ પેરિફેરલ્સ
40 nm ટેકનોલોજી દ્વારા સંચાલિત, ESP32 એક મજબૂત, ઉચ્ચ સંકલિત પ્લેટફોર્મ પૂરું પાડે છે, જે કાર્યક્ષમ પાવર વપરાશ, કોમ્પેક્ટ ડિઝાઇન, સુરક્ષા, ઉચ્ચ પ્રદર્શન અને વિશ્વસનીયતા માટેની સતત માંગને પૂર્ણ કરવામાં મદદ કરે છે. Espressif ESP32 શ્રેણીના હાર્ડવેરનો ઉપયોગ કરીને એપ્લિકેશન ડેવલપર્સને તેમના વિચારોને સાકાર કરવામાં મદદ કરવા માટે મૂળભૂત હાર્ડવેર અને સોફ્ટવેર સંસાધનો પૂરા પાડે છે. Espressif દ્વારા સોફ્ટવેર ડેવલપમેન્ટ ફ્રેમવર્ક Wi-Fi, બ્લૂટૂથ, પાવર મેનેજમેન્ટ અને અન્ય ઘણી સિસ્ટમ સુવિધાઓ સાથે ઇન્ટરનેટ ઓફ-થિંગ્સ (IoT) એપ્લિકેશનોના વિકાસ માટે બનાવાયેલ છે.
1.2 તમને શું જોઈએ છે
1.2.1 હાર્ડવેર
· ESP32 બોર્ડ. · USB કેબલ - USB A / માઇક્રો USB B. · Windows, Linux, અથવા macOS ચલાવતું કમ્પ્યુટર.
નોંધ: હાલમાં, કેટલાક ડેવલપમેન્ટ બોર્ડ USB ટાઇપ C કનેક્ટર્સનો ઉપયોગ કરી રહ્યા છે. ખાતરી કરો કે તમારી પાસે તમારા બોર્ડને કનેક્ટ કરવા માટે યોગ્ય કેબલ છે!
જો તમારી પાસે નીચે સૂચિબદ્ધ ESP32 સત્તાવાર વિકાસ બોર્ડમાંથી એક છે, તો તમે હાર્ડવેર વિશે વધુ જાણવા માટે લિંક પર ક્લિક કરી શકો છો.
3

પ્રકરણ ૧. શરૂઆત કરો
ESP32-DevKitS(-R)
આ વપરાશકર્તા માર્ગદર્શિકા ESP32-DevKitS(-R) વિશે માહિતી પૂરી પાડે છે, જે Espressif દ્વારા ઉત્પાદિત ESP32-આધારિત ફ્લેશિંગ બોર્ડ છે. ESP32-DevKitS(-R) એ બે બોર્ડ નામોનું સંયોજન છે: ESP32-DevKitS અને ESP32-DevKitS-R. S નો અર્થ સ્પ્રિંગ્સ છે, અને R નો અર્થ WROVER છે.

ESP32-DevKitS

ESP32-DevKitS-R

દસ્તાવેજમાં નીચેના મુખ્ય વિભાગો શામેલ છે: · શરૂઆત કરવી: ઓવર પૂરી પાડે છેview ESP32-DevKitS(-R) અને હાર્ડવેર/સોફ્ટવેર સેટઅપ સૂચનાઓ શરૂ કરવા માટે. · હાર્ડવેર સંદર્ભ: ESP32-DevKitS(-R)ns હાર્ડવેર વિશે વધુ વિગતવાર માહિતી પ્રદાન કરે છે. · સંબંધિત દસ્તાવેજો: સંબંધિત દસ્તાવેજોની લિંક્સ આપે છે.

શરૂઆત આ વિભાગ ESP32-DevKitS(-R) સાથે કેવી રીતે શરૂઆત કરવી તેનું વર્ણન કરે છે. તે ESP32-DevKitS(-R) વિશેના કેટલાક પ્રારંભિક વિભાગોથી શરૂ થાય છે, પછી બોર્ડ કેવી રીતે ફ્લેશ કરવું તે વિભાગ ESP32-DevKitS(-R) પર મોડ્યુલ કેવી રીતે માઉન્ટ કરવું, તેને તૈયાર કરવું અને તેના પર ફર્મવેર કેવી રીતે ફ્લેશ કરવું તે અંગે સૂચનાઓ પ્રદાન કરે છે.

ઉપરview ESP32-DevKitS(-R) એ Espressifns ફ્લેશિંગ બોર્ડ છે જે ખાસ કરીને ESP32 માટે રચાયેલ છે. તેનો ઉપયોગ પાવર સપ્લાય અને સિગ્નલ લાઇન પર મોડ્યુલને સોલ્ડર કર્યા વિના ESP32 મોડ્યુલને ફ્લેશ કરવા માટે થઈ શકે છે. મોડ્યુલ માઉન્ટ થયેલ હોવાથી, ESP32-DevKitS(-R) નો ઉપયોગ ESP32-DevKitC જેવા મિની ડેવલપમેન્ટ બોર્ડ તરીકે પણ થઈ શકે છે.
ESP32-DevKitS અને ESP32-DevKitS-R બોર્ડ ફક્ત સ્પ્રિંગ પિનના લેઆઉટમાં જ બદલાય છે જેથી નીચેના ESP32 મોડ્યુલો ફિટ થાય.
· 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
ઉપરોક્ત મોડ્યુલો વિશે માહિતી માટે, કૃપા કરીને ESP32 શ્રેણી મોડ્યુલોનો સંદર્ભ લો.

ઘટકોનું વર્ણન

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

આકૃતિ 1: ESP32-DevKitS – આગળ

એસ્પ્રેસિફ સિસ્ટમ્સ

આકૃતિ 2: ESP32-DevKitS-R – આગળ 5
દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

કી કમ્પોનન્ટ સ્પ્રિંગ પિન 2.54 મીમી ફીમેલ હેડર્સ
USB-ટુ-UART બ્રિજ LDO માઇક્રો-USB કનેક્ટર/માઇક્રો USB પોર્ટ EN બટન બુટ બટન
પાવર ઓન એલઈડી

વર્ણન મોડ્યુલ પર ક્લિક કરો. પિન મોડ્યુલના કાસ્ટેલેટેડ છિદ્રોમાં ફિટ થશે. આ ફીમેલ હેડર્સ આ બોર્ડ પર લગાવેલા મોડ્યુલના પિન સાથે જોડાયેલા છે. ફીમેલ હેડર્સના વર્ણન માટે, કૃપા કરીને હેડર બ્લોક્સનો સંદર્ભ લો. સિંગલ-ચિપ USB થી UART બ્રિજ 3 Mbps સુધીના ટ્રાન્સફર રેટ પ્રદાન કરે છે.
5V-થી-3.3V લો-ડ્રોપઆઉટ વોલ્યુમtagઇ રેગ્યુલેટર (LDO).
USB ઇન્ટરફેસ. બોર્ડ માટે પાવર સપ્લાય તેમજ કમ્પ્યુટર અને બોર્ડ વચ્ચેના કોમ્યુનિકેશન ઇન્ટરફેસ.
રીસેટ બટન.
ડાઉનલોડ બટન. Boot દબાવી રાખીને અને પછી EN દબાવવાથી સીરીયલ પોર્ટ દ્વારા ફર્મવેર ડાઉનલોડ કરવા માટે ફર્મવેર ડાઉનલોડ મોડ શરૂ થાય છે.
જ્યારે USB અથવા પાવર સપ્લાય બોર્ડ સાથે જોડાયેલ હોય ત્યારે ચાલુ થાય છે.

બોર્ડ કેવી રીતે ફ્લેશ કરવું તમારા ESP32-DevKitS(-R) ને પાવર અપ કરતા પહેલા, કૃપા કરીને ખાતરી કરો કે તે સારી સ્થિતિમાં છે અને નુકસાનના કોઈ સ્પષ્ટ સંકેતો નથી.
જરૂરી હાર્ડવેર · તમારી પસંદગીનું ESP32 મોડ્યુલ · USB 2.0 કેબલ (સ્ટાન્ડર્ડ-A થી માઇક્રો-B) · વિન્ડોઝ, લિનક્સ અથવા macOS ચલાવતું કમ્પ્યુટર
હાર્ડવેર સેટઅપ કૃપા કરીને નીચેના પગલાંઓ અનુસાર તમારા ESP32-DevKitS(-R) પર તમારી પસંદગીનું મોડ્યુલ માઉન્ટ કરો:
· તમારા મોડ્યુલને ESP32-DevKitS(-R) બોર્ડ પર હળવેથી મૂકો. ખાતરી કરો કે તમારા મોડ્યુલ પરના કાસ્ટલેટેડ છિદ્રો બોર્ડ પરના સ્પ્રિંગ પિન સાથે ગોઠવાયેલા છે.
· તમારા મોડ્યુલને બોર્ડમાં નીચે દબાવો જ્યાં સુધી તે ક્લિક ન કરે. · તપાસો કે બધા સ્પ્રિંગ પિન કાસ્ટેલેટેડ છિદ્રોમાં દાખલ થયા છે કે નહીં. જો કેટલાક ખોટી રીતે ગોઠવાયેલા સ્પ્રિંગ પિન હોય,
તેમને ટ્વીઝર વડે કાસ્ટલેટેડ છિદ્રોમાં મૂકો.
સ Softwareફ્ટવેર સેટઅપ
પસંદગીની પદ્ધતિ ESP-IDF ડેવલપમેન્ટ ફ્રેમવર્ક ESP32-DevKitS(-R) પર બાઈનરી ફ્લેશ કરવાની પસંદગીની રીત પૂરી પાડે છે. કૃપા કરીને પ્રારંભ કરો પર આગળ વધો, જ્યાં વિભાગ ઇન્સ્ટોલેશન તમને વિકાસ વાતાવરણ સેટ કરવામાં ઝડપથી મદદ કરશે અને પછી એપ્લિકેશનને ફ્લેશ કરશે.ampતમારા ESP32-DevKitS(-R) પર le.
વૈકલ્પિક પદ્ધતિ વિકલ્પ તરીકે, વિન્ડોઝ વપરાશકર્તાઓ ફ્લેશ ડાઉનલોડ ટૂલનો ઉપયોગ કરીને બાઈનરી ફ્લેશ કરી શકે છે. ફક્ત તેને ડાઉનલોડ કરો, તેને અનઝિપ કરો અને ડોક ફોલ્ડરની અંદરની સૂચનાઓને અનુસરો.
નોંધ: ૧. બાઈનરી ફ્લેશ કરવા માટે files, ESP32 ને ફર્મવેર ડાઉનલોડ મોડ પર સેટ કરવું જોઈએ. આ ફ્લેશ ટૂલ દ્વારા આપમેળે કરી શકાય છે, અથવા બુટ બટન દબાવીને અને EN બટન ટેપ કરીને કરી શકાય છે. 2. બાઈનરી ફ્લેશ કર્યા પછી files, ફ્લેશ ડાઉનલોડ ટૂલ તમારા ESP32 મોડ્યુલને ફરીથી શરૂ કરે છે અને ફ્લેશ કરેલી એપ્લિકેશનને ડિફોલ્ટ રૂપે બુટ કરે છે.

બોર્ડના પરિમાણો સામગ્રી અને પેકેજિંગ

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો આકૃતિ ૩: ESP32-DevKitS બોર્ડના પરિમાણો - પાછળ

એસ્પ્રેસિફ સિસ્ટમ્સ

આકૃતિ 4: ESP32-DevKitS-R બોર્ડના પરિમાણો - પાછળ 7
દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
છૂટક ઓર્ડર જો તમે થોડા ઓર્ડર કરો છોampબાકી, દરેક ESP32-DevKitS(-R) એન્ટિસ્ટેટિક બેગમાં અથવા રિટેલરના આધારે કોઈપણ પેકેજિંગમાં વ્યક્તિગત પેકેજમાં આવે છે. રિટેલ ઓર્ડર માટે, કૃપા કરીને https://www.espressif.com/en/contact-us/get-s પર જાઓ.ampલેસ
જથ્થાબંધ ઓર્ડર જો તમે જથ્થાબંધ ઓર્ડર આપો છો, તો બોર્ડ મોટા કાર્ડબોર્ડ બોક્સમાં આવે છે. જથ્થાબંધ ઓર્ડર માટે, કૃપા કરીને https://www.espressif.com/en/contact-us/sales-questions પર જાઓ.
હાર્ડવેર સંદર્ભ
બ્લોક ડાયાગ્રામ નીચે આપેલ બ્લોક ડાયાગ્રામ ESP32-DevKitS(-R) ના ઘટકો અને તેમના આંતરજોડાણો દર્શાવે છે.

આકૃતિ 5: ESP32-DevKitS(-R) (મોટું કરવા માટે ક્લિક કરો)
પાવર સપ્લાય વિકલ્પો બોર્ડને પાવર પૂરો પાડવા માટે ત્રણ પરસ્પર વિશિષ્ટ રીતો છે: · માઇક્રો USB પોર્ટ, ડિફોલ્ટ પાવર સપ્લાય · 5V અને GND હેડર પિન · 3V3 અને GND હેડર પિન
પહેલા વિકલ્પનો ઉપયોગ કરવાની સલાહ આપવામાં આવે છે: માઇક્રો યુએસબી પોર્ટ.

એસ્પ્રેસિફ સિસ્ટમ્સ

.

લેબલ સિગ્નલ

L1 3V3 VDD 3V3

L2 EN CHIP_PU

L3 VP SENSOR_VP

L4 VN સેન્સર_VN

L5 34

જીપીઆઈઓ 34

L6 35

જીપીઆઈઓ 35

L7 32

જીપીઆઈઓ 32

L8 33

જીપીઆઈઓ 33

આગામી પૃષ્ઠ પર ચાલુ રહે છે

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

કોષ્ટક 1 પાછલા પૃષ્ઠથી ચાલુ છે

.

લેબલ સિગ્નલ

L9 25

જીપીઆઈઓ 25

L10 26

જીપીઆઈઓ 26

L11 27

જીપીઆઈઓ 27

L12 14

જીપીઆઈઓ 14

L13 12

જીપીઆઈઓ 12

L14 GND GND

L15 13

જીપીઆઈઓ 13

L16 D2 SD_DATA2

L17 D3 SD_DATA3

L18 CMD SD_CMD

L19 5V

બાહ્ય 5V

આર૧ જીએનડી જીએનડી

R2 23

જીપીઆઈઓ 23

R3 22

જીપીઆઈઓ 22

આર૪ ટીએક્સ યુ૦ટીએક્સડી

આર5 આરએક્સ યુ0આરએક્સડી

R6 21

જીપીઆઈઓ 21

આર૧ જીએનડી જીએનડી

R8 19

જીપીઆઈઓ 19

R9 18

જીપીઆઈઓ 18

R10 5

જીપીઆઈઓ 5

R11 17

જીપીઆઈઓ 17

R12 16

જીપીઆઈઓ 16

R13 4

જીપીઆઈઓ 4

R14 0

જીપીઆઈઓ 0

R15 2

જીપીઆઈઓ 2

R16 15

જીપીઆઈઓ 15

R17 D1 SD_DATA1

R18 D0 SD_DATA0

R19 CLK SD_CLK ની કીવર્ડ્સ

હેડર બ્લોક્સ હેડર બ્લોક્સની છબી માટે, કૃપા કરીને ઘટકોનું વર્ણન જુઓ.

સંબંધિત દસ્તાવેજો
· ESP32-DevKitS(-R) સ્કીમેટિક્સ (PDF) · ESP32 ડેટાશીટ (PDF) · ESP32-WROOM-32 ડેટાશીટ (PDF) · ESP32-WROOM-32D અને ESP32-WROOM-32U ડેટાશીટ (PDF) · ESP32-SOLO-1 ડેટાશીટ (PDF) · ESP32-WROVER ડેટાશીટ (PDF) · ESP32-WROVER-B ડેટાશીટ (PDF) · ESP પ્રોડક્ટ સિલેક્ટર

ESP32-DevKitM-1

આ વપરાશકર્તા માર્ગદર્શિકા તમને ESP32-DevKitM-1 સાથે શરૂઆત કરવામાં મદદ કરશે અને વધુ ઊંડાણપૂર્વકની માહિતી પણ પ્રદાન કરશે.
ESP32-DevKitM-1 એ Esp32-MINI-1(1U)-આધારિત ડેવલપમેન્ટ બોર્ડ છે જે Espressif દ્વારા બનાવવામાં આવે છે. મોટાભાગની I/O પિન બંને બાજુના પિન હેડરોમાં સરળતાથી ઇન્ટરફેસિંગ માટે તૂટી જાય છે. વપરાશકર્તાઓ કાં તો પેરિફેરલ્સને જમ્પર વાયર સાથે કનેક્ટ કરી શકે છે અથવા બ્રેડબોર્ડ પર ESP32-DevKitM-1 માઉન્ટ કરી શકે છે.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

ESP32-DevKitM-1 – આગળ

ESP32-DevKitM-1 – આઇસોમેટ્રિક

દસ્તાવેજમાં નીચેના મુખ્ય વિભાગો શામેલ છે: · શરૂઆત કરવી: ઓવર પૂરો પાડે છેview શરૂ કરવા માટે ESP32-DevKitM-1 અને હાર્ડવેર/સોફ્ટવેર સેટઅપ સૂચનાઓ. · હાર્ડવેર સંદર્ભ: ESP32-DevKitM-1ns હાર્ડવેર વિશે વધુ વિગતવાર માહિતી પ્રદાન કરે છે. · સંબંધિત દસ્તાવેજો: સંબંધિત દસ્તાવેજોની લિંક્સ આપે છે.

શરૂઆત આ વિભાગ ESP32-DevKitM-1 સાથે કેવી રીતે શરૂઆત કરવી તેનું વર્ણન કરે છે. તે ESP32-DevKitM-1 વિશેના કેટલાક પ્રારંભિક વિભાગોથી શરૂ થાય છે, પછી વિભાગ સ્ટાર્ટ એપ્લિકેશન ડેવલપમેન્ટ પ્રારંભિક હાર્ડવેર સેટઅપ કેવી રીતે કરવું અને પછી ESP32-DevKitM-1 પર ફર્મવેર કેવી રીતે ફ્લેશ કરવું તે અંગે સૂચનાઓ પ્રદાન કરે છે.

ઉપરview આ એક નાનું અને અનુકૂળ વિકાસ બોર્ડ છે જે લક્ષણો ધરાવે છે:
· ESP32-MINI-1, અથવા ESP32-MINI-1U મોડ્યુલ · USB-ટુ-સીરીયલ પ્રોગ્રામિંગ ઇન્ટરફેસ જે બોર્ડ માટે પાવર સપ્લાય પણ પૂરો પાડે છે · પિન હેડર્સ · ફર્મવેર ડાઉનલોડ મોડને રીસેટ અને સક્રિય કરવા માટે પુશબટન · કેટલાક અન્ય ઘટકો

સામગ્રી અને પેકેજિંગ

છૂટક ઓર્ડર જો તમે થોડા ઓર્ડર કરો છોampઉપરાંત, દરેક ESP32-DevKitM-1 એન્ટિસ્ટેટિક બેગમાં અથવા તમારા રિટેલરના આધારે કોઈપણ પેકેજિંગમાં વ્યક્તિગત પેકેજમાં આવે છે.
રિટેલ ઓર્ડર માટે, કૃપા કરીને https://www.espressif.com/en/contact-us/get-s પર જાઓ.ampલેસ

જથ્થાબંધ ઓર્ડર જો તમે જથ્થાબંધ ઓર્ડર આપો છો, તો બોર્ડ મોટા કાર્ડબોર્ડ બોક્સમાં આવે છે. જથ્થાબંધ ઓર્ડર માટે, કૃપા કરીને https://www.espressif.com/en/contact-us/sales-questions પર જાઓ.

ઘટકોનું વર્ણન નીચે આપેલ આકૃતિ અને નીચે આપેલ કોષ્ટક ESP32-DevKitM-1 બોર્ડના મુખ્ય ઘટકો, ઇન્ટરફેસ અને નિયંત્રણોનું વર્ણન કરે છે. આપણે ESP32-MINI-1 મોડ્યુલવાળા બોર્ડને એક ઉદાહરણ તરીકે લઈએ છીએ.ampનીચેના વિભાગોમાં le.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

આકૃતિ 6: ESP32-DevKitM-1 – આગળ

મુખ્ય ઘટક ઓન-બોર્ડ મોડ્યુલ
5 V થી 3.3 V LDO બુટ બટન
રીસેટ બટન માઇક્રો-યુએસબી પોર્ટ
USB-ટુ-UART બ્રિજ 3.3 V પાવર ઓન LED
I/O કનેક્ટર

વર્ણન
ESP32-MINI-1 મોડ્યુલ અથવા ESP32-MINI-1U મોડ્યુલ. ESP32-MINI-1 ઓન-બોર્ડ PCB એન્ટેના સાથે આવે છે. ESP32-MINI-1U બાહ્ય એન્ટેના કનેક્ટર સાથે આવે છે. બંને મોડ્યુલોમાં 4 MB ફ્લેશ ઇન ચિપ પેકેજ છે. વિગતો માટે, કૃપા કરીને ESP32-MINI-1 અને ESP32-MINI-1U ડેટાશીટ જુઓ.
પાવર રેગ્યુલેટર 5 V ને 3.3 V માં રૂપાંતરિત કરે છે.
ડાઉનલોડ બટન. બુટ દબાવી રાખીને અને પછી રીસેટ દબાવવાથી સીરીયલ પોર્ટ દ્વારા ફર્મવેર ડાઉનલોડ કરવા માટે ફર્મવેર ડાઉનલોડ મોડ શરૂ થાય છે.
રીસેટ બટન
યુએસબી ઈન્ટરફેસ. બોર્ડ માટે પાવર સપ્લાય તેમજ કોમ્પ્યુટર અને ESP32 ચિપ વચ્ચે કોમ્યુનિકેશન ઈન્ટરફેસ.
સિંગલ USB-UART બ્રિજ ચિપ 3 Mbps સુધીના ટ્રાન્સફર રેટ પ્રદાન કરે છે.
જ્યારે USB બોર્ડ સાથે જોડાયેલ હોય ત્યારે ચાલુ થાય છે. વિગતો માટે, કૃપા કરીને સંબંધિત દસ્તાવેજોમાં સ્કીમેટિક્સ જુઓ. બધા ઉપલબ્ધ GPIO પિન (ફ્લેશ માટે SPI બસ સિવાય) બોર્ડ પરના પિન હેડરોમાં વિભાજિત કરવામાં આવે છે. વપરાશકર્તાઓ બહુવિધ કાર્યોને સક્ષમ કરવા માટે ESP32 ચિપ પ્રોગ્રામ કરી શકે છે.

એપ્લિકેશન ડેવલપમેન્ટ શરૂ કરો તમારા ESP32-DevKitM-1 ને પાવર અપ કરતા પહેલા, કૃપા કરીને ખાતરી કરો કે તે સારી સ્થિતિમાં છે અને નુકસાનના કોઈ સ્પષ્ટ સંકેતો નથી.
જરૂરી હાર્ડવેર · ESP32-DevKitM-1 · USB 2.0 કેબલ (સ્ટાન્ડર્ડ-A થી માઇક્રો-B) · વિન્ડોઝ, લિનક્સ અથવા macOS ચલાવતું કમ્પ્યુટર
સોફ્ટવેર સેટઅપ કૃપા કરીને શરૂઆત પર આગળ વધો, જ્યાં વિભાગ ઇન્સ્ટોલેશન તમને વિકાસ વાતાવરણ સેટ કરવામાં ઝડપથી મદદ કરશે અને પછી એપ્લિકેશનને ફ્લેશ કરશે.ampતમારા ESP32-DevKitM-1 પર જાઓ.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
ધ્યાન આપો: 2 ડિસેમ્બર, 2021 પહેલા બનાવેલા ESP32-DevKitM-1 બોર્ડમાં સિંગલ કોર મોડ્યુલ ઇન્સ્ટોલ કરેલું છે. તમારી પાસે કયું મોડ્યુલ છે તે ચકાસવા માટે, કૃપા કરીને PCN-2021-021 માં મોડ્યુલ માર્કિંગ માહિતી તપાસો. જો તમારા બોર્ડમાં સિંગલ કોર મોડ્યુલ ઇન્સ્ટોલ કરેલું છે, તો કૃપા કરીને તમારી એપ્લિકેશનોને ફ્લેશ કરતા પહેલા મેનુકોન્ફિગમાં સિંગલ કોર મોડ (CONFIG_FREERTOS_UNICORE) સક્ષમ કરો.
હાર્ડવેર રેફરન્સ બ્લોક ડાયાગ્રામ નીચે આપેલ બ્લોક ડાયાગ્રામ ESP32-DevKitM-1 ના ઘટકો અને તેમના ઇન્ટરકનેક્શન્સ દર્શાવે છે.

આકૃતિ 7: ESP32-DevKitM-1
પાવર સોર્સ પસંદ કરો બોર્ડને પાવર પૂરો પાડવા માટે ત્રણ પરસ્પર વિશિષ્ટ રીતો છે: · માઇક્રો USB પોર્ટ, ડિફોલ્ટ પાવર સપ્લાય · 5V અને GND હેડર પિન · 3V3 અને GND હેડર પિન
ચેતવણી: · ઉપરોક્ત વિકલ્પોમાંથી ફક્ત એક જ વિકલ્પનો ઉપયોગ કરીને વીજ પુરવઠો પૂરો પાડવો આવશ્યક છે, નહીં તો બોર્ડ અને/અથવા વીજ પુરવઠા સ્ત્રોતને નુકસાન થઈ શકે છે. · માઇક્રો USB પોર્ટ દ્વારા વીજ પુરવઠો આપવાની ભલામણ કરવામાં આવે છે.

પિન વર્ણન નીચે આપેલ કોષ્ટક બોર્ડની બંને બાજુના પિનનું નામ અને કાર્ય પ્રદાન કરે છે. પેરિફેરલ પિન ગોઠવણી માટે, કૃપા કરીને ESP32 ડેટાશીટનો સંદર્ભ લો.

ના.

નામ

પ્રકાર

1

જીએનડી

P

2

3V3

P

કાર્ય ગ્રાઉન્ડ 3.3 V પાવર સપ્લાય

આગામી પૃષ્ઠ પર ચાલુ રહે છે

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

કોષ્ટક 2 પાછલા પૃષ્ઠથી ચાલુ છે

ના.

નામ

પ્રકાર

કાર્ય

3

I36

I

GPIO36, ADC1_CH0, RTC_GPIO0

4

I37

I

GPIO37, ADC1_CH1, RTC_GPIO1

5

I38

I

GPIO38, ADC1_CH2, RTC_GPIO2

6

I39

I

GPIO39, ADC1_CH3, RTC_GPIO3

7

આરએસટી

I

રીસેટ કરો; ઉચ્ચ: સક્ષમ કરો; નીચું: પાવર બંધ

8

I34

I

GPIO34, ADC1_CH6, RTC_GPIO4

9

I35

I

GPIO35, ADC1_CH7, RTC_GPIO5

10

IO32

I/O

GPIO32, XTAL_32K_P (32.768 kHz ક્રિસ્ટલ ઓસિલેટર ઇનપુટ),

ADC1_CH4, TOUCH9, RTC_GPIO9

11

IO33

I/O

GPIO33, XTAL_32K_N (32.768 kHz ક્રિસ્ટલ ઓસિલેટર આઉટપુટ),

ADC1_CH5, TOUCH8, RTC_GPIO8

12

IO25

I/O

GPIO25, DAC_1, ADC2_CH8, RTC_GPIO6, EMAC_RXD0

13

IO26

I/O

GPIO26, DAC_2, ADC2_CH9, RTC_GPIO7, EMAC_RXD1

14

IO27

I/O

GPIO27, ADC2_CH7, TOUCH7, RTC_GPIO17, EMAC_RX_DV

15

IO14

I/O

GPIO14, ADC2_CH6, TOUCH6, RTC_GPIO16, MTMS, HSPICLK,

HS2_CLK, SD_CLK, EMAC_TXD2

16

5V

P

5 વી પાવર સપ્લાય

17

IO12

I/O

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

HS2_DATA2, SD_DATA2, EMAC_TXD3

18

IO13

I/O

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

HS2_DATA3, SD_DATA3, EMAC_RX_ER

19

IO15

I/O

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

HS2_CMD, SD_CMD, EMAC_RXD3

20

IO2

I/O

GPIO2, ADC2_CH2, TOUCH2, RTC_GPIO12, HSPIWP,

HS2_DATA0, SD_DATA0

21

IO0

I/O

GPIO0, ADC2_CH1, TOUCH1, RTC_GPIO11, CLK_OUT1,

EMAC_TX_CLK

22

IO4

I/O

GPIO4, ADC2_CH0, TOUCH0, RTC_GPIO10, HSPIHD,

HS2_DATA1, SD_DATA1, EMAC_TX_ER

23

IO9

I/O

GPIO9, HS1_DATA2, U1RXD, SD_DATA2

24

IO10

I/O

GPIO10, HS1_DATA3, U1TXD, SD_DATA3

25

IO5

I/O

GPIO5, HS1_DATA6, VSPICS0, EMAC_RX_CLK

26

IO18

I/O

GPIO18, HS1_DATA7, VSPICLK

27

IO23

I/O

GPIO23, HS1_STROBE, VSPID

28

IO19

I/O

GPIO19, VSPIQ, U0CTS, EMAC_TXD0

29

IO22

I/O

GPIO22, VSPIWP, U0RTS, EMAC_TXD1

30

IO21

I/O

GPIO21, VSPIHD, EMAC_TX_EN

31

TXD0

I/O

GPIO1, U0TXD, CLK_OUT3, EMAC_RXD2

32

આરએક્સડી 0

I/O

GPIO3, U0RXD, CLK_OUT2

હાર્ડવેર પુનરાવર્તન વિગતો કોઈ પાછલા સંસ્કરણો ઉપલબ્ધ નથી.
સંબંધિત દસ્તાવેજો
· ESP32-MINI-1 અને ESP32-MINI-1U ડેટાશીટ (PDF) · ESP32-DevKitM-1 સ્કીમેટિક્સ (PDF) · ESP32-DevKitM-1 PCB લેઆઉટ (PDF) · ESP32-DevKitM-1 લેઆઉટ (DXF) - તમે કરી શકો છો view તે ઓટોડેસ્ક સાથે Viewઓનલાઇન · ESP32 ડેટાશીટ (PDF) · ESP પ્રોડક્ટ સિલેક્ટર
બોર્ડ માટે અન્ય ડિઝાઇન દસ્તાવેજો માટે, કૃપા કરીને sales@espressif.com પર અમારો સંપર્ક કરો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
1.2.2 સ .ફ્ટવેર
ESP32 પર ESP-IDF નો ઉપયોગ શરૂ કરવા માટે, નીચે આપેલ સોફ્ટવેર ઇન્સ્ટોલ કરો: · ESP32 માટે કોડ કમ્પાઇલ કરવા માટે ટૂલચેન · ટૂલ્સ બનાવો - ESP32 માટે સંપૂર્ણ એપ્લિકેશન બનાવવા માટે CMake અને Ninja · ESP-IDF જેમાં આવશ્યકપણે ESP32 માટે API (સોફ્ટવેર લાઇબ્રેરીઓ અને સોર્સ કોડ) અને ટૂલચેન ચલાવવા માટે સ્ક્રિપ્ટ્સ શામેલ છે.

1.3 સ્થાપન
બધા જરૂરી સોફ્ટવેર ઇન્સ્ટોલ કરવા માટે, અમે આ કાર્યને સરળ બનાવવા માટે કેટલીક અલગ અલગ રીતો પ્રદાન કરીએ છીએ. ઉપલબ્ધ વિકલ્પોમાંથી એક પસંદ કરો.
૧.૩.૧ IDE

નોંધ: અમે તમારા મનપસંદ IDE દ્વારા ESP-IDF ઇન્સ્ટોલ કરવાની ખૂબ ભલામણ કરીએ છીએ.
· એક્લિપ્સ પ્લગઇન · VSCode એક્સટેન્શન

1.3.2 મેન્યુઅલ ઇન્સ્ટોલેશન
મેન્યુઅલ પ્રક્રિયા માટે, કૃપા કરીને તમારી ઓપરેટિંગ સિસ્ટમ અનુસાર પસંદ કરો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
વિન્ડોઝ માટે ટૂલચેનનું માનક સેટઅપ
પરિચય ESP-IDF ને કેટલાક પૂર્વશરત સાધનો ઇન્સ્ટોલ કરવાની જરૂર છે જેથી તમે સપોર્ટેડ ચિપ્સ માટે ફર્મવેર બનાવી શકો. પૂર્વશરત સાધનોમાં Python, Git, ક્રોસ-કમ્પાઇલર્સ, CMake અને Ninja બિલ્ડ ટૂલ્સનો સમાવેશ થાય છે. આ માટે શરૂઆત કરવા માટે કમાન્ડ પ્રોમ્પ્ટનો ઉપયોગ કરીશું, પરંતુ ESP-IDF ઇન્સ્ટોલ થયા પછી તમે CMake સપોર્ટ સાથે Eclipse Plugin અથવા અન્ય ગ્રાફિકલ IDE નો ઉપયોગ કરી શકો છો. નોંધ: મર્યાદાઓ: – ESP-IDF અને ESP-IDF ટૂલ્સનો ઇન્સ્ટોલેશન પાથ 90 અક્ષરોથી વધુ લાંબો ન હોવો જોઈએ. ખૂબ લાંબો ઇન્સ્ટોલેશન પાથ નિષ્ફળ બિલ્ડમાં પરિણમી શકે છે. – Python અથવા ESP-IDF ના ઇન્સ્ટોલેશન પાથમાં સફેદ જગ્યાઓ અથવા કૌંસ ન હોવા જોઈએ. – Python અથવા ESP-IDF ના ઇન્સ્ટોલેશન પાથમાં ખાસ અક્ષરો (નોન ASCII) ન હોવા જોઈએ સિવાય કે ઓપરેટિંગ સિસ્ટમ oUnicode UTF-8psupport સાથે ગોઠવેલ હોય. સિસ્ટમ એડમિનિસ્ટ્રેટર કંટ્રોલ પેનલ દ્વારા સપોર્ટને સક્ષમ કરી શકે છે - તારીખ, સમય અથવા નંબર ફોર્મેટ બદલો - એડમિનિસ્ટ્રેટિવ ટેબ - સિસ્ટમ લોકેલ બદલો - વિકલ્પ તપાસો oBeta: વિશ્વવ્યાપી ભાષા સપોર્ટ માટે યુનિકોડ UTF-8 નો ઉપયોગ કરોp - ઠીક છે અને કમ્પ્યુટર રીબૂટ કરો.
ESP-IDF ટૂલ્સ ઇન્સ્ટોલર ESP-IDFns પૂર્વજરૂરીયાતો ઇન્સ્ટોલ કરવાનો સૌથી સરળ રસ્તો એ છે કે ESP-IDF ટૂલ્સ ઇન્સ્ટોલર્સમાંથી એક ડાઉનલોડ કરો.

વિન્ડોઝ ઇન્સ્ટોલર ડાઉનલોડ કરો
ઓનલાઈન અને ઓફલાઈન ઇન્સ્ટોલર માટે યુઝકેસ શું છે ઓનલાઈન ઇન્સ્ટોલર ખૂબ નાનું છે અને ESP-IDF ના બધા ઉપલબ્ધ રીલીઝના ઇન્સ્ટોલેશનને મંજૂરી આપે છે. ઇન્સ્ટોલર ઇન્સ્ટોલેશન પ્રક્રિયા દરમિયાન ફક્ત Git For Windows સહિત જરૂરી ડિપેન્ડન્સીઝ ડાઉનલોડ કરશે. ઇન્સ્ટોલર ડાઉનલોડ કરેલ સ્ટોર કરે છે. fileકેશ ડિરેક્ટરી %userpro માં sfile%. એસ્પ્રેસિફ
ઑફલાઇન ઇન્સ્ટોલરને કોઈપણ નેટવર્ક કનેક્શનની જરૂર નથી. ઇન્સ્ટોલરમાં Git For Windows સહિતની બધી જરૂરી ડિપેન્ડન્સી શામેલ છે.
ઇન્સ્ટોલેશનના ઘટકો ઇન્સ્ટોલર નીચેના ઘટકોનો ઉપયોગ કરે છે:
· એમ્બેડેડ પાયથોન · ક્રોસ-કમ્પાઇલર્સ · ઓપનઓસીડી · સીમેક અને નીન્જા બિલ્ડ ટૂલ્સ · ઇએસપી-આઇડીએફ
ઇન્સ્ટોલર ESP-IDF સાથે હાલની ડિરેક્ટરીનો ફરીથી ઉપયોગ કરવાની પણ મંજૂરી આપે છે. ભલામણ કરેલ ડિરેક્ટરી %userpro છે.file%ડેસ્કટોપ્સ-આઈડીએફ જ્યાં %યુઝરપ્રોfile% એ તમારી હોમ ડિરેક્ટરી છે.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
ESP-IDF પર્યાવરણ શરૂ કરી રહ્યા છીએ ઇન્સ્ટોલેશન પ્રક્રિયાના અંતે તમે "Run ESP-IDF PowerShell Environment" વિકલ્પ અથવા "Run ESP-IDF Command Prompt (cmd.exe)" વિકલ્પ ચકાસી શકો છો. ઇન્સ્ટોલર પસંદ કરેલા પ્રોમ્પ્ટમાં ESP-IDF પર્યાવરણ શરૂ કરશે. ESP-IDF PowerShell પર્યાવરણ ચલાવો:

આકૃતિ 8: ESP-IDF પાવરશેલ એન્વાયર્નમેન્ટ ચલાવો સાથે ESP-IDF ટૂલ્સ સેટઅપ વિઝાર્ડ પૂર્ણ કરવું
ESP-IDF કમાન્ડ પ્રોમ્પ્ટ (cmd.exe) ચલાવો:
કમાન્ડ પ્રોમ્પ્ટનો ઉપયોગ કરીને શરૂઆત કરવાના બાકીના પગલાં માટે, આપણે વિન્ડોઝ કમાન્ડ પ્રોમ્પ્ટનો ઉપયોગ કરીશું. ESP-IDF ટૂલ્સ ઇન્સ્ટોલર ESP-IDF કમાન્ડ પ્રોમ્પ્ટ લોન્ચ કરવા માટે સ્ટાર્ટ મેનૂમાં એક શોર્ટકટ પણ બનાવે છે. આ શોર્ટકટ કમાન્ડ પ્રોમ્પ્ટ (cmd.exe) લોન્ચ કરે છે અને પર્યાવરણ ચલ (PATH, IDF_PATH અને અન્ય) સેટ કરવા માટે export.bat સ્ક્રિપ્ટ ચલાવે છે. આ કમાન્ડ પ્રોમ્પ્ટની અંદર, બધા ઇન્સ્ટોલ કરેલા ટૂલ્સ ઉપલબ્ધ છે. નોંધ કરો કે આ શોર્ટકટ ESP-IDF ટૂલ્સ ઇન્સ્ટોલરમાં પસંદ કરેલી ESP-IDF ડિરેક્ટરી માટે વિશિષ્ટ છે. જો તમારી પાસે કમ્પ્યુટર પર બહુવિધ ESP-IDF ડિરેક્ટરીઓ છે (દા.ત.ample, ESP-IDF ના વિવિધ સંસ્કરણો સાથે કામ કરવા માટે), તમારી પાસે તેનો ઉપયોગ કરવા માટે બે વિકલ્પો છે:
1. ESP-IDF ટૂલ્સ ઇન્સ્ટોલર દ્વારા બનાવેલ શોર્ટકટની એક નકલ બનાવો, અને નવા શોર્ટકટની કાર્યકારી ડિરેક્ટરીને તમે જે ESP-IDF ડિરેક્ટરીનો ઉપયોગ કરવા માંગો છો તેમાં બદલો.
2. વૈકલ્પિક રીતે, cmd.exe ચલાવો, પછી તમે જે ESP-IDF ડિરેક્ટરીનો ઉપયોગ કરવા માંગો છો તેમાં બદલો, અને export.bat ચલાવો. નોંધ લો કે પાછલા વિકલ્પથી વિપરીત, આ રીતે PATH માં Python અને Git હાજર હોવા જરૂરી છે. જો તમને Python સંબંધિત ભૂલો મળે અથવા Git ન મળે, તો પહેલા વિકલ્પનો ઉપયોગ કરો.
ESP-IDF પર પ્રથમ પગલાં હવે બધી આવશ્યકતાઓ પૂર્ણ થઈ ગઈ હોવાથી, આગળનો વિષય તમને તમારા પ્રથમ પ્રોજેક્ટની શરૂઆત કેવી રીતે કરવી તે અંગે માર્ગદર્શન આપશે.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ 1. શરૂઆત કરો આકૃતિ 9: ESP-IDF પાવરશેલ

આકૃતિ 10: ESP-IDF કમાન્ડ પ્રોમ્પ્ટ (cmd.exe) ચલાવીને ESP-IDF ટૂલ્સ સેટઅપ વિઝાર્ડ પૂર્ણ કરવું.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

આકૃતિ ૧૧: ESP-IDF કમાન્ડ પ્રોમ્પ્ટ

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
આ માર્ગદર્શિકા તમને ESP-IDF નો ઉપયોગ કરવાના પ્રથમ પગલાંમાં મદદ કરશે. ESP32 પર નવો પ્રોજેક્ટ શરૂ કરવા અને ડિવાઇસ આઉટપુટ બનાવવા, ફ્લેશ કરવા અને મોનિટર કરવા માટે આ માર્ગદર્શિકાને અનુસરો. નોંધ: જો તમે હજુ સુધી ESP-IDF ઇન્સ્ટોલ કર્યું નથી, તો કૃપા કરીને ઇન્સ્ટોલેશન પર જાઓ અને આ માર્ગદર્શિકાનો ઉપયોગ કરવા માટે જરૂરી બધા સોફ્ટવેર મેળવવા માટે સૂચનાઓનું પાલન કરો.

પ્રોજેક્ટ શરૂ કરો હવે તમે ESP32 માટે તમારી અરજી તૈયાર કરવા માટે તૈયાર છો. તમે getstarted/hello_world પ્રોજેક્ટ સાથે શરૂઆત કરી શકો છો.ampESP-IDF માં લેસ ડિરેક્ટરી.
મહત્વપૂર્ણ: ESP-IDF બિલ્ડ સિસ્ટમ ESP-IDF અથવા પ્રોજેક્ટ્સના પાથમાં જગ્યાઓને સપોર્ટ કરતી નથી.
પ્રોજેક્ટ get-started/hello_world ને ~/esp ડિરેક્ટરીમાં કોપી કરો: cd %userprofile% ખાસ કરીને xcopy /e /i % IDF_PATH% exampલેગેટ-સ્ટાર્ટેડહેલો_વર્લ્ડ હેલો_વર્લ્ડ
નોંધ: ભૂતપૂર્વની શ્રેણી છેampભૂતપૂર્વ માં લે પ્રોજેક્ટ્સampESP-IDF માં લેસ ડિરેક્ટરી. તમે ઉપર દર્શાવ્યા પ્રમાણે કોઈપણ પ્રોજેક્ટની નકલ કરી શકો છો અને તેને ચલાવી શકો છો. ભૂતપૂર્વ બિલ્ડ કરવાનું પણ શક્ય છેampપહેલા તેમની નકલ કર્યા વિના, તેમને સ્થાને મૂકો.

તમારા ઉપકરણને કનેક્ટ કરો હવે તમારા ESP32 બોર્ડને કમ્પ્યુટર સાથે કનેક્ટ કરો અને તપાસો કે બોર્ડ કયા સીરીયલ પોર્ટ હેઠળ દેખાય છે. વિન્ડોઝમાં સીરીયલ પોર્ટ નામો COM થી શરૂ થાય છે. જો તમને ખાતરી ન હોય કે સીરીયલ પોર્ટ નામ કેવી રીતે તપાસવું, તો કૃપા કરીને સંપૂર્ણ વિગતો માટે ESP32 સાથે સીરીયલ કનેક્શન સ્થાપિત કરો જુઓ.
નોંધ: પોર્ટનું નામ હાથમાં રાખો કારણ કે તમને આગલા પગલાઓમાં તેની જરૂર પડશે.

તમારા પ્રોજેક્ટને ગોઠવો તમારી hello_world ડિરેક્ટરી પર જાઓ, ESP32 ને લક્ષ્ય તરીકે સેટ કરો અને પ્રોજેક્ટ ગોઠવણી ઉપયોગિતા menuconfig ચલાવો.
વિન્ડોઝ સીડી % યુઝરપ્રોfile%esphello_world idf.py સેટ-ટાર્ગેટ esp32 idf.py મેનુકોન્ફિગ
નવો પ્રોજેક્ટ ખોલ્યા પછી, તમારે પહેલા idf.py set-target esp32 વડે લક્ષ્ય સેટ કરવું જોઈએ. નોંધ કરો કે પ્રોજેક્ટમાં હાલના બિલ્ડ્સ અને રૂપરેખાંકનો, જો કોઈ હોય, તો તે આ પ્રક્રિયામાં સાફ અને પ્રારંભ કરવામાં આવશે. આ પગલું બિલકુલ છોડી દેવા માટે લક્ષ્યને પર્યાવરણ ચલમાં સાચવી શકાય છે. વધારાની માહિતી માટે લક્ષ્ય ચિપ પસંદ કરો: સેટ-ટાર્ગેટ જુઓ. જો અગાઉના પગલાં યોગ્ય રીતે કરવામાં આવ્યા હોય, તો નીચેનું મેનૂ દેખાય છે: તમે પ્રોજેક્ટ વિશિષ્ટ ચલોને સેટ કરવા માટે આ મેનૂનો ઉપયોગ કરી રહ્યા છો, દા.ત., Wi-Fi નેટવર્ક નામ અને પાસવર્ડ, પ્રોસેસર ગતિ, વગેરે. menuconfig સાથે પ્રોજેક્ટ સેટ કરવાનું ohello_wordp માટે છોડી શકાય છે, કારણ કે આ ભૂતપૂર્વample ડિફોલ્ટ રૂપરેખાંકન સાથે ચાલે છે.
ધ્યાન આપો: જો તમે ESP32-SOLO-1 મોડ્યુલ સાથે ESP32-DevKitC બોર્ડ અથવા ESP32-MIN1-1(1U) મોડ્યુલ સાથે ESP32-DevKitM-1 બોર્ડનો ઉપયોગ કરો છો, તો કૃપા કરીને ફ્લેશિંગ કરતા પહેલા મેનુકોન્ફિગમાં સિંગલ કોર મોડ (CONFIG_FREERTOS_UNICORE) સક્ષમ કરો.ampલેસ

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

આકૃતિ ૧૨: પ્રોજેક્ટ રૂપરેખાંકન - હોમ વિન્ડો
નોંધ: તમારા ટર્મિનલમાં મેનુના રંગો અલગ અલગ હોઈ શકે છે. તમે –style વિકલ્પનો ઉપયોગ કરીને દેખાવ બદલી શકો છો. વધુ માહિતી માટે કૃપા કરીને idf.py menuconfig –help ચલાવો.
જો તમે સપોર્ટેડ ડેવલપમેન્ટ બોર્ડમાંથી કોઈ એકનો ઉપયોગ કરી રહ્યા છો, તો તમે બોર્ડ સપોર્ટ પેકેજનો ઉપયોગ કરીને તમારા ડેવલપમેન્ટને ઝડપી બનાવી શકો છો. વધુ માહિતી માટે વધારાની ટિપ્સ જુઓ.
પ્રોજેક્ટ બનાવો: આ ચલાવીને પ્રોજેક્ટ બનાવો:
idf.py બિલ્ડ
આ આદેશ એપ્લિકેશન અને તમામ ESP-IDF ઘટકોનું સંકલન કરશે, પછી તે બુટલોડર, પાર્ટીશન ટેબલ અને એપ્લિકેશન દ્વિસંગી જનરેટ કરશે.
$ idf.py build /path/to/hello_world/build ડિરેક્ટરીમાં cmake ચલાવી રહ્યા છીએ “cmake -G Ninja –warn-uninitialized /path/to/hello_world” ચલાવી રહ્યા છીએ… બિન-પ્રારંભિક મૂલ્યો વિશે ચેતવણી આપો. — Git મળ્યું: /usr/bin/git (આવૃત્તિ “2.17.0” મળી) — રૂપરેખાંકનને કારણે ખાલી aws_iot ઘટક બનાવવું — ઘટક નામો: … — ઘટક પાથ: …
… (બિલ્ડ સિસ્ટમ આઉટપુટની વધુ રેખાઓ)
[527/527] hello_world.bin esptool.py v2.3.1 જનરેટ કરી રહ્યું છે
પ્રોજેક્ટ બિલ્ડ પૂર્ણ થયું. ફ્લેશ કરવા માટે, આ આદેશ ચલાવો: ../../../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 build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/ partition-table.bin અથવા 'idf.py -p PORT flash' ચલાવો.
જો ત્યાં કોઈ ભૂલો ન હોય, તો ફર્મવેર બાઈનરી .bin જનરેટ કરીને બિલ્ડ સમાપ્ત થશે files.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
ડિવાઇસ પર ફ્લેશ કરો તમે હમણાં જ બનાવેલા બાયનરી (bootloader.bin, partition-table.bin અને hello_world.bin) ને તમારા ESP32 બોર્ડ પર idf.py -p PORT [-b BAUD] ફ્લેશ ચલાવીને ફ્લેશ કરો.
PORT ને તમારા ESP32 બોર્ડન્સ સીરીયલ પોર્ટ નામથી બદલો. તમે BAUD ને તમને જોઈતા બાઉડ રેટથી બદલીને ફ્લેશર બાઉડ રેટ પણ બદલી શકો છો. ડિફોલ્ટ બાઉડ રેટ 460800 છે. idf.py દલીલો વિશે વધુ માહિતી માટે, idf.py જુઓ.
નોંધ: વિકલ્પ ફ્લેશ આપમેળે પ્રોજેક્ટ બનાવે છે અને ફ્લેશ કરે છે, તેથી idf.py બિલ્ડ ચલાવવાની જરૂર નથી.

ફ્લેશિંગ કરતી વખતે સમસ્યાઓનો સામનો કરવો પડ્યો? જો તમે આપેલ આદેશ ચલાવો છો અને oFailed to connectp જેવી ભૂલો જુઓ છો, તો આના ઘણા કારણો હોઈ શકે છે. એક કારણ esptool.py દ્વારા આવતી સમસ્યાઓ હોઈ શકે છે, જે બિલ્ડ સિસ્ટમ દ્વારા ચિપ રીસેટ કરવા, ROM બુટલોડર સાથે ક્રિયાપ્રતિક્રિયા કરવા અને ફ્લેશ ફર્મવેર માટે બોલાવવામાં આવતી ઉપયોગિતા છે. એક સરળ ઉકેલ નીચે વર્ણવેલ મેન્યુઅલ રીસેટ છે, અને જો તે મદદ ન કરે તો તમે મુશ્કેલીનિવારણમાં સંભવિત સમસ્યાઓ વિશે વધુ વિગતો શોધી શકો છો.
esptool.py USB ની DTR અને RTS કંટ્રોલ લાઇન્સને સીરીયલ કન્વર્ટર ચિપ, એટલે કે FTDI અથવા CP210x પર ભાર મૂકીને ESP32 ને આપમેળે રીસેટ કરે છે (વધુ માહિતી માટે, ESP32 સાથે સીરીયલ કનેક્શન સ્થાપિત કરો જુઓ). DTR અને RTS કંટ્રોલ લાઇનો બદલામાં ESP32 ના GPIO0 અને CHIP_PU (EN) પિન સાથે જોડાયેલી હોય છે, આમ વોલ્યુમમાં ફેરફાર થાય છે.tagDTR અને RTS ના e સ્તરો ESP32 ને ફર્મવેર ડાઉનલોડ મોડમાં બુટ કરશે. ભૂતપૂર્વ તરીકેampહા, ESP32 DevKitC ડેવલપમેન્ટ બોર્ડ માટે સ્કીમેટિક તપાસો.
સામાન્ય રીતે, તમને સત્તાવાર esp-idf ડેવલપમેન્ટ બોર્ડ સાથે કોઈ સમસ્યા ન હોવી જોઈએ. જો કે, esptool.py નીચેના કિસ્સાઓમાં તમારા હાર્ડવેરને આપમેળે રીસેટ કરવામાં સક્ષમ નથી:
· તમારા હાર્ડવેરમાં GPIO0 અને CHIP_PU સાથે જોડાયેલ DTR અને RTS લાઇન્સ નથી · DTR અને RTS લાઇન્સ અલગ રીતે ગોઠવેલી છે · આવી કોઈ સીરીયલ કંટ્રોલ લાઇન્સ બિલકુલ નથી.
તમારી પાસે કયા પ્રકારના હાર્ડવેર છે તેના આધારે, તમારા ESP32 બોર્ડને ફર્મવેર ડાઉનલોડ મોડ (રીસેટ) માં મેન્યુઅલી મૂકવું પણ શક્ય બની શકે છે.
· એસ્પ્રેસિફ દ્વારા ઉત્પાદિત ડેવલપમેન્ટ બોર્ડ માટે, આ માહિતી સંબંધિત શરૂઆત માર્ગદર્શિકાઓ અથવા વપરાશકર્તા માર્ગદર્શિકાઓમાં મળી શકે છે. ઉદાહરણ તરીકેampઅને, ESP-IDF ડેવલપમેન્ટ બોર્ડને મેન્યુઅલી રીસેટ કરવા માટે, બુટ બટન (GPIO0) દબાવી રાખો અને EN બટન (CHIP_PU) દબાવો.
· અન્ય પ્રકારના હાર્ડવેર માટે, GPIO0 ને નીચે ખેંચવાનો પ્રયાસ કરો.

સામાન્ય કામગીરી ફ્લેશિંગ કરતી વખતે, તમને નીચેના જેવો આઉટપુટ લોગ દેખાશે:
… 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/partition-table.bin 0x1000 bootloader/bootloader.bin 0x10000 hello_world.bin esptool.py v3.0-dev સીરીયલ પોર્ટ /dev/ttyUSB0 કનેક્ટ કરી રહ્યું છે…….._ ચિપ ESP32D0WDQ6 છે (રિવિઝન 0) સુવિધાઓ: WiFi, BT, ડ્યુઅલ કોર, કોડિંગ સ્કીમ કંઈ નહીં ક્રિસ્ટલ 40MHz છે MAC: 24:0a:c4:05:b9:14 સ્ટબ અપલોડ કરી રહ્યું છે… સ્ટબ ચાલી રહ્યું છે… સ્ટબ ચાલી રહ્યું છે… બાઉડ રેટને 460800 માં બદલી રહ્યું છે.
(આગળના પાના પર ચાલુ)

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
(પાછલા પૃષ્ઠથી ચાલુ) ફ્લેશ કદ ગોઠવી રહ્યું છે… ૩૦૭૨ બાઇટ્સ ૧૦૩ સુધી સંકુચિત… ૦x૦૦૦૦૮૦૦૦ પર લખવું… (૧૦૦%) ૦.૦ સેકન્ડમાં ૦x૦૦૦૦૮૦૦૦ પર ૩૦૭૨ બાઇટ્સ (૧૦૩ સંકુચિત) લખ્યા (અસરકારક ૫૯૬૨.૮ kbit/s)… ડેટાનો હેશ ચકાસાયેલ. ૨૬૦૯૬ બાઇટ્સ ૧૫૪૦૮ સુધી સંકુચિત… ૦x૦૦૦૦૧૦૦૦ પર લખવું… (૧૦૦%) ૦.૪ સેકન્ડમાં ૦x૦૦૦૦૧૦૦૦ પર ૨૬૦૯૬ બાઇટ્સ (૧૫૪૦૮ સંકુચિત) લખ્યા (અસરકારક ૫૪૬.૭ kbit/s)… ડેટાનો હેશ ચકાસાયેલ. ૧૪૭૧૦૪ બાઇટ્સને ૭૭૩૬૪ સુધી સંકુચિત કર્યા... ૦x૦૦૧૦૦૦૦ પર લખવું... (૨૦%) ૦x૦૦૧૪૦૦૦ પર લખવું... (૪૦%) ૦x૦૦૧૮૦૦૦ પર લખવું... (૬૦%) ૦x૦૦૧સી૦૦૦ પર લખવું... (૮૦%) ૦x૦૦૨૦૦૦ પર લખવું... (૧૦૦%) ૧.૯ સેકન્ડમાં ૦x૦૦૧૦૦૦૦ પર ૧૪૭૧૦૪ બાઇટ (૭૭૩૬૪ સંકુચિત) લખ્યા (અસરકારક ૬૧૫.૫ kbit/s)... ડેટાનો હેશ ચકાસાયેલ.
છોડી રહ્યાં છીએ... RTS પિન દ્વારા હાર્ડ રીસેટ કરી રહ્યાં છીએ... થઈ ગયું
જો ફ્લેશ પ્રક્રિયાના અંત સુધીમાં કોઈ સમસ્યા ન હોય, તો બોર્ડ રીબૂટ થશે અને theohello_worldpapplication શરૂ કરશે. જો તમે idf.py ચલાવવાને બદલે Eclipse અથવા VS Code IDE નો ઉપયોગ કરવા માંગતા હો, તો Eclipse Plugin, VSCode Extension તપાસો.
આઉટપુટનું નિરીક્ષણ કરો. ohello_worldpis ખરેખર ચાલી રહ્યું છે કે નહીં તે ચકાસવા માટે, idf.py -p PORT monitor લખો (PORT ને તમારા સીરીયલ પોર્ટ નામથી બદલવાનું ભૂલશો નહીં).
આ આદેશ IDF મોનિટર એપ્લિકેશન લોન્ચ કરે છે:
$ idf.py -p મોનિટર ડિરેક્ટરીમાં idf_monitor ચલાવી રહ્યા છીએ […]/esp/hello_world/build “python […]/esp-idf/tools/idf_monitor.py -b 115200 […]/esp/hello_ world/build/hello_world.elf”… ચલાવી રહ્યા છીએ — idf_monitor ચાલુ છે 115200 —– બહાર નીકળો: Ctrl+] | મેનુ: Ctrl+T | મદદ: Ctrl+T પછી Ctrl+H –ets 8 જૂન 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) ets 8 જૂન 2016 00:22:57 …
સ્ટાર્ટઅપ અને ડાયગ્નોસ્ટિક લોગ ઉપર સ્ક્રોલ કર્યા પછી, તમારે ઓહેલો વર્લ્ડ જોવું જોઈએ!એપ્લિકેશન દ્વારા પ્રિન્ટ આઉટ.
… હેલો વર્લ્ડ! ૧૦ સેકન્ડમાં ફરી શરૂ થઈ રહ્યું છે… આ ૨ CPU કોર(કોર), WiFi/BT/BLE, સિલિકોન રિવિઝન ૧, ૨MB બાહ્ય ફ્લેશ સાથે esp32 ચિપ છે ન્યૂનતમ ફ્રી હીપ સાઇઝ: ૨૯૮૯૬૮ બાઇટ્સ ૯ સેકન્ડમાં ફરી શરૂ થઈ રહ્યું છે… ૮ સેકન્ડમાં ફરી શરૂ થઈ રહ્યું છે… ૭ સેકન્ડમાં ફરી શરૂ થઈ રહ્યું છે…
IDF મોનિટરમાંથી બહાર નીકળવા માટે શોર્ટકટ Ctrl+] નો ઉપયોગ કરો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
જો અપલોડ કર્યા પછી તરત જ IDF મોનિટર નિષ્ફળ જાય, અથવા, ઉપરના સંદેશાઓને બદલે, તમને નીચે આપેલા સંદેશાઓ જેવો જ રેન્ડમ કચરો દેખાય, તો તમારું બોર્ડ કદાચ 26 MHz ક્રિસ્ટલનો ઉપયોગ કરી રહ્યું છે. મોટાભાગની ડેવલપમેન્ટ બોર્ડ ડિઝાઇન 40 MHz નો ઉપયોગ કરે છે, તેથી ESP-IDF આ ફ્રીક્વન્સીનો ઉપયોગ ડિફોલ્ટ મૂલ્ય તરીકે કરે છે.

જો તમને આવી સમસ્યા હોય, તો નીચે મુજબ કરો: 1. મોનિટરમાંથી બહાર નીકળો. 2. મેનુકોન્ફિગ પર પાછા જાઓ. 3. કમ્પોનન્ટ રૂપરેખા > હાર્ડવેર સેટિંગ્સ > મુખ્ય XTAL રૂપરેખા > મુખ્ય XTAL આવર્તન પર જાઓ, પછી CONFIG_XTAL_FREQ_SEL ને 26 MHz પર બદલો. 4. તે પછી, એપ્લિકેશન ફરીથી બનાવો અને ફ્લેશ કરો.
ESP-IDF ના વર્તમાન સંસ્કરણમાં, ESP32 દ્વારા સપોર્ટેડ મુખ્ય XTAL ફ્રીક્વન્સીઝ નીચે મુજબ છે:
· ૨૬ મેગાહર્ટ્ઝ · ૪૦ મેગાહર્ટ્ઝ
નોંધ: તમે idf.py -p PORT ફ્લેશ મોનિટર ચલાવીને એક જ પગલામાં બિલ્ડીંગ, ફ્લેશિંગ અને મોનિટરિંગને જોડી શકો છો.
આ પણ જુઓ: · IDF મોનિટરનો ઉપયોગ કરવા માટે સરળ શોર્ટકટ્સ અને વધુ વિગતો માટે IDF મોનિટર. · idf.py આદેશો અને વિકલ્પોના સંપૂર્ણ સંદર્ભ માટે idf.py.
ESP32 સાથે શરૂઆત કરવા માટે તમારે આટલું જ જોઈએ! હવે તમે બીજા કોઈ એક્સ અજમાવવા માટે તૈયાર છોampઓછી, અથવા સીધા તમારી પોતાની એપ્લિકેશનો વિકસાવવા પર જાઓ.
મહત્વપૂર્ણ: કેટલાક ભૂતપૂર્વampESP32 માં જરૂરી હાર્ડવેર શામેલ ન હોવાથી, તે ESP32 ને સપોર્ટ કરતું નથી, તેથી તેને સપોર્ટ કરી શકાતો નથી. જો ex બનાવી રહ્યા છોampલે, કૃપા કરીને README તપાસો file સપોર્ટેડ ટાર્ગેટ્સ ટેબલ માટે. જો આ ESP32 ટાર્ગેટ સહિત હાજર હોય, અથવા ટેબલ બિલકુલ અસ્તિત્વમાં ન હોય, તો ભૂતપૂર્વample ESP32 પર કામ કરશે.
વધારાની ટિપ્સ
પરવાનગી સમસ્યાઓ /dev/ttyUSB0 કેટલાક Linux વિતરણો સાથે, ESP32 ફ્લેશ કરતી વખતે તમને "Failed to open port /dev/ttyUSB0" ભૂલ સંદેશ મળી શકે છે. આ સમસ્યા વર્તમાન વપરાશકર્તાને ડાયલઆઉટ જૂથમાં ઉમેરીને ઉકેલી શકાય છે.
પાયથોન સુસંગતતા ESP-IDF પાયથોન 3.7 અથવા નવા સંસ્કરણોને સપોર્ટ કરે છે. આ જરૂરિયાતને પૂર્ણ કરતા તમારા ઓપરેટિંગ સિસ્ટમને તાજેતરના સંસ્કરણ પર અપગ્રેડ કરવાની ભલામણ કરવામાં આવે છે. અન્ય વિકલ્પોમાં સ્ત્રોતોમાંથી પાયથોન ઇન્સ્ટોલ કરવું અથવા પાયથોન વર્ઝન મેનેજમેન્ટ સિસ્ટમ જેમ કે pyenv નો ઉપયોગ શામેલ છે.
બોર્ડ સપોર્ટ પેકેજથી શરૂઆત કરો. કેટલાક ડેવલપમેન્ટ બોર્ડ પર પ્રોટોટાઇપિંગ ઝડપી બનાવવા માટે, તમે બોર્ડ સપોર્ટ પેકેજો (BSPs) નો ઉપયોગ કરી શકો છો, જે ચોક્કસ બોર્ડનું પ્રારંભિકરણ થોડા ફંક્શન કોલ્સ જેટલું સરળ બનાવે છે.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

BSP સામાન્ય રીતે ડેવલપમેન્ટ બોર્ડ પર પૂરા પાડવામાં આવેલા બધા હાર્ડવેર ઘટકોને સપોર્ટ કરે છે. પિનઆઉટ વ્યાખ્યા અને પ્રારંભિક કાર્યો ઉપરાંત, BSP બાહ્ય ઘટકો જેમ કે સેન્સર, ડિસ્પ્લે, ઓડિયો કોડેક્સ વગેરે માટે ડ્રાઇવરો સાથે આવે છે. BSPs IDF કમ્પોનન્ટ મેનેજર દ્વારા વિતરિત કરવામાં આવે છે, તેથી તેઓ IDF કમ્પોનન્ટ રજિસ્ટ્રીમાં મળી શકે છે. અહીં એક ઉદાહરણ છેampતમારા પ્રોજેક્ટમાં ESP-WROVER-KIT BSP કેવી રીતે ઉમેરવું તેની માહિતી: idf.py add-dependency esp_wrover_kit
વધુ માજીampBSP ઉપયોગની માહિતી BSP ex માં મળી શકે છેampલેસ ફોલ્ડર.
સંબંધિત દસ્તાવેજો ઇન્સ્ટોલ પ્રક્રિયાને કસ્ટમાઇઝ કરવા માંગતા અદ્યતન વપરાશકર્તાઓ માટે: · વિન્ડોઝ પર ESP-IDF ટૂલ્સ અપડેટ કરવું · ESP32 સાથે સીરીયલ કનેક્શન સ્થાપિત કરવું · એક્લિપ્સ પ્લગઇન · VSCode એક્સટેન્શન · IDF મોનિટર
વિન્ડોઝ પર ESP-IDF ટૂલ્સ અપડેટ કરી રહ્યા છીએ
સ્ક્રિપ્ટનો ઉપયોગ કરીને ESP-IDF ટૂલ્સ ઇન્સ્ટોલ કરો. વિન્ડોઝ કમાન્ડ પ્રોમ્પ્ટમાંથી, જ્યાં ESPIDF ઇન્સ્ટોલ કરેલ છે તે ડિરેક્ટરીમાં જાઓ. પછી ચલાવો:
install.bat
પાવરશેલ માટે, જ્યાં ESP-IDF ઇન્સ્ટોલ કરેલ છે તે ડિરેક્ટરીમાં બદલો. પછી ચલાવો:
ઇન્સ્ટોલ.ps1
આ ESP-IDF નો ઉપયોગ કરવા માટે જરૂરી સાધનો ડાઉનલોડ અને ઇન્સ્ટોલ કરશે. જો ટૂલનું ચોક્કસ સંસ્કરણ પહેલાથી જ ઇન્સ્ટોલ કરેલું હોય, તો કોઈ કાર્યવાહી કરવામાં આવશે નહીં. ટૂલ્સ ESP-IDF ટૂલ્સ ઇન્સ્ટોલર પ્રક્રિયા દરમિયાન ઉલ્લેખિત ડિરેક્ટરીમાં ડાઉનલોડ અને ઇન્સ્ટોલ કરવામાં આવે છે. ડિફૉલ્ટ રૂપે, આ ​​C:Usersusername.espressif છે.
નિકાસ સ્ક્રિપ્ટનો ઉપયોગ કરીને PATH માં ESP-IDF ટૂલ્સ ઉમેરો ESP-IDF ટૂલ્સ ઇન્સ્ટોલર oESP-IDF કમાન્ડ પ્રોમ્પ્ટ માટે સ્ટાર્ટ મેનૂ શોર્ટકટ બનાવે છે. આ શોર્ટકટ એક કમાન્ડ પ્રોમ્પ્ટ વિન્ડો ખોલે છે જ્યાં બધા ટૂલ્સ પહેલાથી જ છે.
ઉપલબ્ધ છે. કેટલાક કિસ્સાઓમાં, તમે ESP-IDF સાથે કમાન્ડ પ્રોમ્પ્ટ વિન્ડોમાં કામ કરવા માંગી શકો છો જે તે શોર્ટકટનો ઉપયોગ કરીને શરૂ કરવામાં આવ્યું ન હતું. જો આ કિસ્સો હોય, તો PATH માં ESP-IDF ટૂલ્સ ઉમેરવા માટે નીચેની સૂચનાઓનું પાલન કરો. કમાન્ડ પ્રોમ્પ્ટમાં જ્યાં તમારે ESP-IDF નો ઉપયોગ કરવાની જરૂર છે, તે ડિરેક્ટરીમાં બદલો જ્યાં ESP-IDF ઇન્સ્ટોલ કરેલ છે, પછી export.bat ચલાવો:
cd % userprofile%espesp-idf નિકાસ.બેટ
વૈકલ્પિક રીતે, પાવરશેલમાં જ્યાં તમારે ESP-IDF નો ઉપયોગ કરવાની જરૂર છે, તે ડિરેક્ટરીમાં જાઓ જ્યાં ESP-IDF ઇન્સ્ટોલ કરેલ છે, પછી export.ps1 ચલાવો:
સીડી ~/esp/esp-idf નિકાસ.ps1
જ્યારે આ થઈ જશે, ત્યારે આ કમાન્ડ પ્રોમ્પ્ટમાં ટૂલ્સ ઉપલબ્ધ થશે.
ESP32 સાથે સીરીયલ કનેક્શન સ્થાપિત કરો આ વિભાગ ESP32 અને PC વચ્ચે સીરીયલ કનેક્શન કેવી રીતે સ્થાપિત કરવું તેનું માર્ગદર્શન પૂરું પાડે છે.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
ESP32 ને PC થી કનેક્ટ કરો. USB કેબલનો ઉપયોગ કરીને ESP32 બોર્ડને PC સાથે કનેક્ટ કરો. જો ડિવાઇસ ડ્રાઇવર આપમેળે ઇન્સ્ટોલ ન થાય, તો તમારા ESP32 બોર્ડ (અથવા બાહ્ય કન્વર્ટર ડોંગલ) પર USB થી સીરીયલ કન્વર્ટર ચિપ ઓળખો, ઇન્ટરનેટ પર ડ્રાઇવરો શોધો અને તેમને ઇન્સ્ટોલ કરો. નીચે Espressif દ્વારા ઉત્પાદિત મોટાભાગના ESP32 બોર્ડ પર ઇન્સ્ટોલ કરેલા USB થી સીરીયલ કન્વર્ટર ચિપ્સની સૂચિ અને ડ્રાઇવરોની લિંક્સ છે:
· CP210x: CP210x USB થી UART બ્રિજ VCP ડ્રાઇવર્સ · FTDI: FTDI વર્ચ્યુઅલ COM પોર્ટ ડ્રાઇવર્સ કૃપા કરીને ઉપયોગમાં લેવાતા ચોક્કસ USB થી સીરીયલ કન્વર્ટર ચિપ માટે બોર્ડ વપરાશકર્તા માર્ગદર્શિકા તપાસો. ઉપરોક્ત ડ્રાઇવર્સ મુખ્યત્વે સંદર્ભ માટે છે. સામાન્ય પરિસ્થિતિઓમાં, ડ્રાઇવર્સ ઓપરેટિંગ સિસ્ટમ સાથે બંડલ કરેલા હોવા જોઈએ અને બોર્ડને PC સાથે કનેક્ટ કર્યા પછી આપમેળે ઇન્સ્ટોલ થઈ જવા જોઈએ.
વિન્ડોઝ પર પોર્ટ તપાસો વિન્ડોઝ ડિવાઇસ મેનેજરમાં ઓળખાયેલા COM પોર્ટ્સની યાદી તપાસો. ESP32 ને ડિસ્કનેક્ટ કરો અને તેને પાછું કનેક્ટ કરો, જેથી ખાતરી કરી શકાય કે કયો પોર્ટ યાદીમાંથી ગાયબ થઈ જાય છે અને પછી પાછો દેખાય છે. નીચેના આકૃતિઓ ESP32 DevKitC અને ESP32 WROVER KIT માટે સીરીયલ પોર્ટ દર્શાવે છે.

આકૃતિ ૧૩: વિન્ડોઝ ડિવાઇસ મેનેજરમાં ESP32-DevKitC નો USB થી UART બ્રિજ

Linux અને macOS પર પોર્ટ તપાસો તમારા ESP32 બોર્ડ (અથવા બાહ્ય કન્વર્ટર ડોંગલ) ના સીરીયલ પોર્ટ માટે ઉપકરણનું નામ તપાસવા માટે, આ આદેશ બે વાર ચલાવો, પહેલા બોર્ડ / ડોંગલ અનપ્લગ કરીને, પછી પ્લગ ઇન કરીને. બીજી વાર જે પોર્ટ દેખાય છે તે તમને જોઈતો હોય તે છે: Linux
ls /dev/tty*
macOS

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

આકૃતિ ૧૪: વિન્ડોઝ ડિવાઇસ મેનેજરમાં ESP-WROVER-KIT ના બે USB સીરીયલ પોર્ટ

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

ls /dev/cu.* નોંધ: macOS વપરાશકર્તાઓ: જો તમને સીરીયલ પોર્ટ દેખાતો નથી, તો તપાસો કે તમારી પાસે USB/સીરીયલ ડ્રાઇવર્સ ઇન્સ્ટોલ કરેલા છે. ડ્રાઇવર્સની લિંક્સ માટે ESP32 ને PC સાથે કનેક્ટ કરો વિભાગ જુઓ. macOS હાઇ સીએરા (10.13) માટે, તમારે ડ્રાઇવર્સને લોડ કરવાની સ્પષ્ટ મંજૂરી પણ આપવી પડી શકે છે. સિસ્ટમ પસંદગીઓ -> સુરક્ષા અને ગોપનીયતા -> સામાન્ય ખોલો અને તપાસો કે શું અહીં oSystem Software વિશે ડેવલપર lp તરફથી સંદેશ બતાવવામાં આવ્યો છે જ્યાં ડેવલપરનું નામ સિલિકોન લેબ્સ અથવા FTDI છે.

Linux પર ડાયલઆઉટમાં યુઝર ઉમેરવું હાલમાં લોગ થયેલ યુઝર પાસે USB દ્વારા સીરીયલ પોર્ટ વાંચવા અને લખવાની ઍક્સેસ હોવી જોઈએ. મોટાભાગના Linux ડિસ્ટ્રિબ્યુશન પર, આ નીચેના આદેશનો ઉપયોગ કરીને યુઝરને ડાયલઆઉટ ગ્રુપમાં ઉમેરીને કરવામાં આવે છે:
sudo usermod -a -G ડાયલઆઉટ $USER
આર્ક લિનક્સ પર આ નીચેના આદેશ સાથે uucp જૂથમાં વપરાશકર્તાને ઉમેરીને કરવામાં આવે છે:
sudo usermod -a -G uucp $USER
ખાતરી કરો કે તમે સીરીયલ પોર્ટ માટે વાંચવા અને લખવાની પરવાનગીઓને સક્ષમ કરવા માટે ફરીથી લોગિન કરો છો.
સીરીયલ કનેક્શન ચકાસો હવે ખાતરી કરો કે સીરીયલ કનેક્શન કાર્યરત છે. ESP32 રીસેટ કર્યા પછી ટર્મિનલ પર કોઈ આઉટપુટ મળે છે કે નહીં તે તપાસીને તમે સીરીયલ ટર્મિનલ પ્રોગ્રામનો ઉપયોગ કરીને આ કરી શકો છો. ESP32 પર ડિફોલ્ટ કન્સોલ બોડ રેટ 115200 છે.
આ ભૂતપૂર્વમાં વિન્ડોઝ અને લિનક્સampઆપણે પુટી SSH ક્લાયંટનો ઉપયોગ કરીશું જે વિન્ડોઝ અને લિનક્સ બંને માટે ઉપલબ્ધ છે. તમે અન્ય સીરીયલ પ્રોગ્રામનો ઉપયોગ કરી શકો છો અને નીચે આપેલા કોમ્યુનિકેશન પેરામીટર્સ સેટ કરી શકો છો. ટર્મિનલ ચલાવો અને ઓળખાયેલ સીરીયલ પોર્ટ સેટ કરો. બાઉડ રેટ = 115200 (જો જરૂરી હોય તો, ઉપયોગમાં લેવાતી ચિપના ડિફોલ્ટ બાઉડ રેટમાં આને બદલો), ડેટા બિટ્સ = 8, સ્ટોપ બિટ્સ = 1, અને પેરિટી = N. નીચે આપેલ છે.ampવિન્ડોઝ અને લિનક્સ પર પોર્ટ અને આવા ટ્રાન્સમિશન પરિમાણો (ટૂંકમાં 115200-8-1-N તરીકે વર્ણવેલ) સેટ કરવાના સ્ક્રીનશોટ. ઉપરોક્ત પગલાંઓમાં તમે ઓળખેલ બરાબર એ જ સીરીયલ પોર્ટ પસંદ કરવાનું યાદ રાખો. પછી ટર્મિનલમાં સીરીયલ પોર્ટ ખોલો અને તપાસો કે શું તમને ESP32 દ્વારા છાપેલ કોઈ લોગ દેખાય છે. લોગ સામગ્રી ESP32 પર લોડ થયેલ એપ્લિકેશન પર આધાર રાખે છે, Ex જુઓample આઉટપુટ.
નોંધ: કોમ્યુનિકેશન કાર્યરત છે કે નહીં તેની ચકાસણી કર્યા પછી સીરીયલ ટર્મિનલ બંધ કરો. જો તમે ટર્મિનલ સત્ર ખુલ્લું રાખશો, તો પછીથી ફર્મવેર અપલોડ કરવા માટે સીરીયલ પોર્ટ ઍક્સેસિબલ રહેશે નહીં.

macOS સીરીયલ ટર્મિનલ પ્રોગ્રામ ઇન્સ્ટોલ કરવાની ઝંઝટમાંથી મુક્તિ મેળવવા માટે, macOS સ્ક્રીન કમાન્ડ આપે છે. · Linux અને macOS પર ચેક પોર્ટમાં ચર્ચા કર્યા મુજબ, ચલાવો:

ls /dev/cu.* · તમને સમાન આઉટપુટ દેખાશે:

/dev/cu.Bluetooth-ઇનકમિંગ-પોર્ટ /dev/cu.SLAB_USBtoUART USBtoUART7

/dev/cu.SLAB_

· આઉટપુટ તમારા પીસી સાથે જોડાયેલા બોર્ડના પ્રકાર અને સંખ્યાના આધારે બદલાશે. પછી તમારા બોર્ડનું ડિવાઇસ નામ પસંદ કરો અને ચલાવો (જો જરૂરી હોય તો, ઉપયોગમાં લેવાતી ચિપના ડિફોલ્ટ બોડ રેટમાં o115200p બદલો):

સ્ક્રીન /dev/cu.device_name 115200 device_name ને ls /dev/cu.* ચલાવતા મળેલા નામથી બદલો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

આકૃતિ 15: વિન્ડોઝ પર પુટ્ટીમાં સીરીયલ કોમ્યુનિકેશન સેટ કરવું

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

આકૃતિ ૧૬: Linux પર PuTTY માં સીરીયલ કોમ્યુનિકેશન સેટ કરવું

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
· તમે સ્ક્રીન પર દેખાતા કેટલાક લોગ શોધી રહ્યા છો. લોગની સામગ્રી ESP32 પર લોડ થયેલ એપ્લિકેશન પર આધારિત હશે, Ex જુઓ.ample આઉટપુટ. સ્ક્રીન સત્રમાંથી બહાર નીકળવા માટે Ctrl-A + ટાઈપ કરો.
નોંધ: વાતચીત કાર્યરત છે કે નહીં તે ચકાસ્યા પછી સ્ક્રીન સત્રમાંથી બહાર નીકળવાનું ભૂલશો નહીં. જો તમે તેમ કરવામાં નિષ્ફળ જાઓ અને ફક્ત ટર્મિનલ વિન્ડો બંધ કરો, તો પછીથી ફર્મવેર અપલોડ કરવા માટે સીરીયલ પોર્ટ ઍક્સેસિબલ રહેશે નહીં.
Example આઉટપુટ એક ભૂતપૂર્વampનીચે લોગ બતાવેલ છે. જો તમને કંઈ ન દેખાય તો બોર્ડ રીસેટ કરો. ets જૂન 8 2016 00:22:57
rst:0x5 (DEEPSLEEP_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) ets 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 બુટલોડર I (45) બુટ: કમ્પાઇલ સમય 18:48:10

જો તમે વાંચી શકાય તેવું લોગ આઉટપુટ જોઈ શકો છો, તો તેનો અર્થ એ છે કે સીરીયલ કનેક્શન કામ કરી રહ્યું છે અને તમે ઇન્સ્ટોલેશન સાથે આગળ વધવા અને અંતે ESP32 પર એપ્લિકેશન અપલોડ કરવા માટે તૈયાર છો.
નોંધ: કેટલાક સીરીયલ પોર્ટ વાયરિંગ રૂપરેખાંકનો માટે, ESP32 બુટ થાય અને સીરીયલ આઉટપુટ ઉત્પન્ન કરે તે પહેલાં ટર્મિનલ પ્રોગ્રામમાં સીરીયલ RTS અને DTR પિનને અક્ષમ કરવાની જરૂર છે. આ હાર્ડવેર પર જ આધાર રાખે છે, મોટાભાગના ડેવલપમેન્ટ બોર્ડ (બધા Espressif બોર્ડ સહિત) માં આ સમસ્યા હોતી નથી. જો RTS અને DTR સીધા EN અને GPIO0 પિન સાથે વાયર કરેલા હોય તો આ સમસ્યા હાજર હોય છે. વધુ વિગતો માટે esptool દસ્તાવેજીકરણ જુઓ.
જો તમે ESP32 ડેવલપમેન્ટ માટે s/w ઇન્સ્ટોલ કરતી વખતે ESP-IDF પરના પ્રથમ પગલાં 5 થી અહીં આવ્યા છો, તો તમે ESP-IDF પરના પ્રથમ પગલાં 5 સાથે ચાલુ રાખી શકો છો.
IDF મોનિટર IDF મોનિટર મુખ્યત્વે એક સીરીયલ ટર્મિનલ પ્રોગ્રામ છે જે લક્ષ્ય ઉપકરણોના સીરીયલ પોર્ટ પર અને ત્યાંથી સીરીયલ ડેટા રિલે કરે છે. તે કેટલીક IDF-વિશિષ્ટ સુવિધાઓ પણ પ્રદાન કરે છે. IDF મોનિટર idf.py મોનિટર ચલાવીને IDF પ્રોજેક્ટમાંથી લોન્ચ કરી શકાય છે.
કીબોર્ડ શોર્ટકટ્સ IDF મોનિટર સાથે સરળ ક્રિયાપ્રતિક્રિયા માટે, કોષ્ટકમાં આપેલા કીબોર્ડ શોર્ટકટ્સનો ઉપયોગ કરો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

કીબોર્ડ શોર્ટકટ Ctrl+] Ctrl+T
· Ctrl+T
· Ctrl+] · Ctrl+P
· Ctrl+R
· Ctrl+F
· Ctrl+A (અથવા A)
· Ctrl+Y
· Ctrl+L
· Ctrl+I (અથવા I)
· Ctrl+H (અથવા H)
· Ctrl+X (અથવા X)
Ctrl+C

ક્રિયા

વર્ણન

પ્રોગ્રામમાંથી બહાર નીકળો મેનુ એસ્કેપ કી મેનુ અક્ષરને જ રિમોટ પર મોકલો
એક્ઝિટ કેરેક્ટરને જ રિમોટ પર મોકલો
RTS લાઇન દ્વારા એપ્લિકેશનને થોભાવવા માટે લક્ષ્યને બુટલોડરમાં રીસેટ કરો
RTS દ્વારા લક્ષ્ય બોર્ડ રીસેટ કરો
પ્રોજેક્ટ બનાવો અને ફ્લેશ કરો

ફક્ત એપ્લિકેશન બનાવો અને ફ્લેશ કરો

સ્ક્રીન પર લોગ આઉટપુટ પ્રિન્ટિંગ બંધ/ફરી શરૂ કરો

સ્ટોપ/રિઝ્યુમ લોગ આઉટપુટ આમાં સાચવવામાં આવ્યો file

થોભો/ફરી શરૂ કરવાનો સમયamps

પ્રિન્ટીંગ

બધા કીબોર્ડ શોર્ટકટ્સ દર્શાવો

નીચે આપેલી કીમાંથી એક દબાવો અને તેને અનુસરો.
RTS લાઇન (જો કનેક્ટેડ હોય) દ્વારા બુટલોડરમાં લક્ષ્યને રીસેટ કરે છે, જેથી બોર્ડ કંઈપણ ચલાવતું નથી. જ્યારે તમારે બીજા ઉપકરણના પ્રારંભની રાહ જોવાની જરૂર હોય ત્યારે ઉપયોગી થાય છે. લક્ષ્ય બોર્ડને રીસેટ કરે છે અને RTS લાઇન (જો કનેક્ટેડ હોય) દ્વારા એપ્લિકેશનને ફરીથી શરૂ કરે છે.
પ્રોજેક્ટ ફ્લેશ ટાર્ગેટ ચલાવવા માટે idf_monitor ને થોભાવે છે, પછી idf_monitor ને ફરી શરૂ કરે છે. કોઈપણ બદલાયેલ સ્ત્રોત files ને ફરીથી કમ્પાઇલ કરવામાં આવે છે અને પછી ફરીથી ફ્લેશ કરવામાં આવે છે. જો idf_monitor ને આર્ગ્યુમેન્ટ -E થી શરૂ કરવામાં આવ્યું હોય તો ટાર્ગેટ એન્ક્રિપ્ટેડ-ફ્લેશ ચલાવવામાં આવે છે. એપ-ફ્લેશ ટાર્ગેટ ચલાવવા માટે idf_monitor ને થોભાવે છે, પછી idf_monitor ને ફરી શરૂ કરે છે. ફ્લેશ ટાર્ગેટની જેમ, પરંતુ ફક્ત મુખ્ય એપ્લિકેશન બનાવવામાં આવે છે અને ફરીથી ફ્લેશ કરવામાં આવે છે. જો idf_monitor ને આર્ગ્યુમેન્ટ -E થી શરૂ કરવામાં આવ્યું હોય તો ટાર્ગેટ એન્ક્રિપ્ટેડ-એપ-ફ્લેશ ચલાવવામાં આવે છે. સક્રિય કરતી વખતે બધા આવનારા સીરીયલ ડેટાને કાઢી નાખે છે. મોનિટર છોડ્યા વિના લોગ આઉટપુટને ઝડપથી થોભાવવા અને તપાસવાની મંજૂરી આપે છે. એક બનાવે છે file પ્રોજેક્ટ ડિરેક્ટરીમાં અને આઉટપુટ તેમાં લખાયેલું છે file જ્યાં સુધી આ સમાન કીબોર્ડ શોર્ટકટ (અથવા IDF મોનિટર બહાર નીકળે છે) થી અક્ષમ ન થાય ત્યાં સુધી. IDF મોનિટર ટાઇમસ્ટ પ્રિન્ટ કરી શકે છેamp દરેક પંક્તિની શરૂઆતમાં. સમયરેખાamp ફોર્મેટ -ટાઇમેસ્ટ દ્વારા બદલી શકાય છેamp-ફોર્મેટ કમાન્ડ લાઇન દલીલ.

પ્રોગ્રામમાંથી બહાર નીકળો

ચાલી રહેલ એપ્લિકેશનમાં વિક્ષેપ પાડો

રનટાઇમ પર એપ્લિકેશન ડીબગ કરવા માટે IDF મોનિટરને થોભાવે છે અને GDB પ્રોજેક્ટ ડીબગર ચલાવે છે. આ માટે :ref:CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME વિકલ્પ સક્ષમ હોવો જરૂરી છે.

Ctrl-] અને Ctrl-T સિવાયની કોઈપણ કી દબાવવામાં આવશે, તે સીરીયલ પોર્ટ દ્વારા મોકલવામાં આવશે.

IDF-વિશિષ્ટ સુવિધાઓ

ઓટોમેટિક એડ્રેસ ડીકોડિંગ જ્યારે પણ ESP-IDF 0x4_______ ફોર્મનો હેક્સાડેસિમલ કોડ એડ્રેસ આઉટપુટ કરે છે, ત્યારે IDF મોનિટર સોર્સ કોડમાં સ્થાન શોધવા અને ફંક્શન નામ શોધવા માટે addr2line_ નો ઉપયોગ કરે છે.
જો ESP-IDF એપ ક્રેશ થાય અને ગભરાટ ફેલાય, તો રજિસ્ટર ડમ્પ અને બેકટ્રેસ ઉત્પન્ન થાય છે, જેમ કે નીચે મુજબ:

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

ગુરુ ધ્યાન ભૂલ StoreProhibited પ્રકારની કોર 0 પર આવી. અપવાદ હતો

હેન્ડલ વગરનું.

રજિસ્ટર ડમ્પ:

PC

: 0x400f360d પીએસ

: 0x00060330 A0

: 0x800dbf56 A1

:

0x3ffb7e00

A2

: 0x3ffb136c A3

: 0x00000005 A4

: 0x00000000 A5

:

0x00000000

A6

: 0x00000000 A7

: 0x00000080 A8

: 0x00000000 A9

:

0x3ffb7dd0

A10

: 0x00000003 A11

: 0x00060f23 A12

: 0x00060f20 A13

:

0x3ffba6d0

A14

: 0x00000047 A15

: 0x0000000f સીએઆર

: 0x00000019 કારણ:

0x0000001d

EXCVADDR: 0x00000000 LBEG : 0x4000c46c લેન્ડ : 0x4000c477 LCOUNT :

0x00000000

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

IDF મોનિટર ડમ્પમાં વધુ વિગતો ઉમેરે છે:

ગુરુ ધ્યાન ભૂલ StoreProhibited પ્રકારની કોર 0 પર આવી. અપવાદ હતો

હેન્ડલ વગરનું.

રજિસ્ટર ડમ્પ:

PC

: 0x400f360d પીએસ

: 0x00060330 A0

: 0x800dbf56 A1

:

0x3ffb7e00

0x400f360d: /home/gus/esp/32/idf/ex પર ક્રેશ કરવા માટે કંઈક કરોampલેસ/શરૂઆત/

હેલો_વર્લ્ડ/મેઈન/./હેલો_વર્લ્ડ_મેઈન.સી:57

(ઇનલાઇન દ્વારા) /home/gus/esp/32/idf/ex પર inner_dont_crashampલેસ/ગેટ-સ્ટાર્ટ/હેલો_

વિશ્વ/મુખ્ય/./હેલો_વર્લ્ડ_મેઈન.સી:52

A2

: 0x3ffb136c A3

: 0x00000005 A4

: 0x00000000 A5

:

0x00000000

A6

: 0x00000000 A7

: 0x00000080 A8

: 0x00000000 A9

:

0x3ffb7dd0

A10

: 0x00000003 A11

: 0x00060f23 A12

: 0x00060f20 A13

:

0x3ffba6d0

A14

: 0x00000047 A15

: 0x0000000f સીએઆર

: 0x00000019 કારણ:

0x0000001d

EXCVADDR: 0x00000000 LBEG : 0x4000c46c લેન્ડ : 0x4000c477 LCOUNT :

0x00000000

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 (ઇનલાઇન દ્વારા) /home/gus/esp/32/idf/ex પર inner_dont_crashamples/get-started/hello_ world/main/./hello_world_main.c:52 0x400dbf56: /home/gus/esp/32/idf/ex પર still_dont_crashamples/get-started/hello_ world/main/./hello_world_main.c:47 0x400dbf5e: /home/gus/esp/32/idf/ex પર ક્રેશ ન કરોamples/get-started/hello_world/ main/./hello_world_main.c:42 0x400dbf82: /home/gus/esp/32/idf/ex પર app_mainamples/get-started/hello_world/main/ ./hello_world_main.c:33 0x400d071d: /home/gus/esp/32/idf/components/esp32/./cpu_start.c:254 પર મુખ્ય કાર્ય

દરેક સરનામાંને ડીકોડ કરવા માટે, IDF મોનિટર પૃષ્ઠભૂમિમાં નીચેનો આદેશ ચલાવે છે: xtensa-esp32-elf-addr2line -pfiaC -e build/PROJECT.elf ADDRESS

નોંધ: પર્યાવરણ ચલ ESP_MONITOR_DECODE ને 0 પર સેટ કરો અથવા ચોક્કસ કમાન્ડ લાઇન સાથે idf_monitor.py પર કૉલ કરો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
વિકલ્પ: idf_monitor.py –disable-address-decoding સરનામાં ડીકોડિંગને અક્ષમ કરવા માટે.
કનેક્શન પર ટાર્ગેટ રીસેટ ડિફૉલ્ટ રૂપે, IDF મોનિટર ટાર્ગેટને કનેક્ટ કરતી વખતે રીસેટ કરશે. ટાર્ગેટ ચિપનું રીસેટ DTR અને RTS સીરીયલ લાઇનનો ઉપયોગ કરીને કરવામાં આવે છે. IDF મોનિટરને કનેક્શન પર ટાર્ગેટને આપમેળે રીસેટ કરવાથી રોકવા માટે, –no-reset વિકલ્પ (દા.ત., idf_monitor.py –no-reset) નો ઉપયોગ કરીને IDF મોનિટરને કૉલ કરો.
નોંધ: –no-reset વિકલ્પ IDF મોનિટરને ચોક્કસ પોર્ટ સાથે કનેક્ટ કરતી વખતે પણ સમાન વર્તન લાગુ કરે છે (દા.ત., idf.py મોનિટર –no-reset -p [PORT]).
GDBStub વડે GDB લોન્ચ કરવું GDBStub એ એક ઉપયોગી રનટાઇમ ડિબગીંગ સુવિધા છે જે ટાર્ગેટ પર ચાલે છે અને ડિબગીંગ આદેશો પ્રાપ્ત કરવા માટે સીરીયલ પોર્ટ પર હોસ્ટ સાથે જોડાય છે. GDBStub મેમરી અને ચલોને વાંચવા, કોલ સ્ટેક ફ્રેમ્સનું પરીક્ષણ કરવા વગેરે જેવા આદેશોને સપોર્ટ કરે છે. જોકે GDBStub J કરતા ઓછું બહુમુખી છે.TAG ડીબગીંગ, તેને કોઈ ખાસ હાર્ડવેરની જરૂર નથી (જેમ કે JTAG USB બ્રિજ પર) કારણ કે સંદેશાવ્યવહાર સંપૂર્ણપણે સીરીયલ પોર્ટ પર થાય છે. રનટાઇમ પર CONFIG_ESP_SYSTEM_PANIC ને GDBStub પર સેટ કરીને પૃષ્ઠભૂમિમાં GDBStub ચલાવવા માટે લક્ષ્યને ગોઠવી શકાય છે. GDBStub પૃષ્ઠભૂમિમાં ચાલશે જ્યાં સુધી સીરીયલ પોર્ટ પર Ctrl+C સંદેશ મોકલવામાં ન આવે અને GDBStub ને પ્રોગ્રામ તોડી નાખે (એટલે ​​કે, તેના અમલને અટકાવે), આમ GDBStub ને ડિબગીંગ આદેશોને હેન્ડલ કરવાની મંજૂરી આપે છે. વધુમાં, પેનિક હેન્ડલરને ક્રેશ પર CONFIG_ESP_SYSTEM_PANIC ને GDBStub પર સેટ કરીને ક્રેશ પર GDBStub ચલાવવા માટે ગોઠવી શકાય છે. જ્યારે ક્રેશ થાય છે, ત્યારે GDBStub સીરીયલ પોર્ટ પર એક ખાસ સ્ટ્રિંગ પેટર્ન આઉટપુટ કરશે જે દર્શાવે છે કે તે ચાલી રહ્યું છે. બંને કિસ્સાઓમાં (એટલે ​​કે, Ctrl+C સંદેશ મોકલવો, અથવા ખાસ સ્ટ્રિંગ પેટર્ન પ્રાપ્ત કરવી), IDF મોનિટર વપરાશકર્તાને ડિબગીંગ આદેશો મોકલવાની મંજૂરી આપવા માટે આપમેળે GDB લોન્ચ કરશે. GDB બહાર નીકળ્યા પછી, લક્ષ્ય RTS સીરીયલ લાઇન દ્વારા રીસેટ થાય છે. જો આ લાઇન જોડાયેલ ન હોય, તો વપરાશકર્તાઓ તેમના લક્ષ્યને રીસેટ કરી શકે છે (બોર્ડન્સ રીસેટ બટન દબાવીને).
નોંધ: પૃષ્ઠભૂમિમાં, IDF મોનિટર GDB લોન્ચ કરવા માટે નીચેનો આદેશ ચલાવે છે:
xtensa-esp32-elf-gdb -ex “set serial baud BAUD” -ex “target remote PORT” -ex interrupt build/PROJECT.elf :idf_target:`Hello NAME chip`

આઉટપુટ ફિલ્ટરિંગ IDF મોનિટરને idf.py મોનિટર –print-filter=”xyz” તરીકે બોલાવી શકાય છે, જ્યાં –print-filter એ આઉટપુટ ફિલ્ટરિંગ માટેનું પરિમાણ છે. ડિફોલ્ટ મૂલ્ય ખાલી સ્ટ્રિંગ છે, જેનો અર્થ છે કે બધું છાપેલ છે.
શું છાપવું તેના પરના નિયંત્રણોને શ્રેણી તરીકે સ્પષ્ટ કરી શકાય છેtag>: વસ્તુઓ જ્યાંtag> એ છે tag સ્ટ્રિંગ અને એ {N, E, W, I, D, V, *} સમૂહમાંથી એક અક્ષર છે જે લોગીંગ માટેના સ્તરનો ઉલ્લેખ કરે છે.
માજી માટેampલે, PRINT_FILTER=”tag1:W” ફક્ત ESP_LOGW(“) સાથે લખેલા આઉટપુટ સાથે મેળ ખાય છે અને પ્રિન્ટ કરે છે.tag૧”, …) અથવા ઓછા વર્બોસિટી સ્તરે, એટલે કે ESP_LOGE(“tag૧″, …). સ્પષ્ટ ન કરતા અથવા વર્બોઝ સ્તર પર * ડિફોલ્ટનો ઉપયોગ કરીને.
નોંધ: લોગીંગ લાઇબ્રેરી દ્વારા તમને જરૂરી ન હોય તેવા આઉટપુટને કમ્પાઇલ કરતી વખતે અક્ષમ કરવા માટે પ્રાથમિક લોગીંગનો ઉપયોગ કરો. IDF મોનિટર સાથે આઉટપુટ ફિલ્ટરિંગ એ એક ગૌણ ઉકેલ છે જે એપ્લિકેશનને ફરીથી કમ્પાઇલ કર્યા વિના ફિલ્ટરિંગ વિકલ્પોને સમાયોજિત કરવા માટે ઉપયોગી થઈ શકે છે.
તમારી એપ્લિકેશન tags આઉટપુટ ફિલ્ટરિંગ સુવિધા સાથે સુસંગત થવા માટે તેમાં ખાલી જગ્યાઓ, ફૂદડી *, અથવા કોલોન : ન હોવા જોઈએ.
જો તમારી એપ્લિકેશનમાં આઉટપુટની છેલ્લી લાઇન પછી કેરેજ રીટર્ન ન આવે, તો આઉટપુટ ફિલ્ટરિંગ મૂંઝવણમાં મુકાઈ શકે છે, એટલે કે, મોનિટર લાઇન છાપવાનું શરૂ કરે છે અને પછીથી ખબર પડે છે કે લાઇન લખવી જોઈતી ન હતી. આ એક જાણીતી સમસ્યા છે અને હંમેશા કેરેજ રીટર્ન ઉમેરીને ટાળી શકાય છે (ખાસ કરીને જ્યારે કોઈ આઉટપુટ તરત જ અનુસરતું નથી).

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
Exampફિલ્ટરિંગ નિયમોના નિયમો:
· * નો ઉપયોગ કોઈપણ સાથે મેચ કરવા માટે કરી શકાય છે tags. જોકે, સ્ટ્રિંગ PRINT_FILTER=”*:I tag૧:ઈ” ના સંદર્ભમાં tag૧ ફક્ત ભૂલો છાપે છે, કારણ કે નિયમ tag* માટેના નિયમ કરતાં 1 ને વધુ પ્રાથમિકતા છે.
· ડિફોલ્ટ (ખાલી) નિયમ *:V ની સમકક્ષ છે કારણ કે દરેક સાથે મેળ ખાય છે tag વર્બોઝ સ્તર અથવા નીચલા સ્તરે એટલે કે બધું જ મેચ કરવું.
· “*:N” ફક્ત લોગીંગ ફંક્શન્સમાંથી આઉટપુટ જ નહીં, પણ printf વગેરે દ્વારા બનાવેલા પ્રિન્ટ્સને પણ દબાવી દે છે. આને ટાળવા માટે, *:E અથવા ઉચ્ચ વર્બોસિટી સ્તરનો ઉપયોગ કરો.
· નિયમો “tag૧:વી", "tag૧:v", "tag૧:", "tag૧:*", અને "tag૧” સમકક્ષ છે. · નિયમ “tag૧:પ tag1:E” એ “tag૧:ઈ” કારણ કે તેની કોઈપણ પરિણામી ઘટના tag
નામ પાછલા નામને ઓવરરાઈટ કરે છે. · નિયમ “tag1:આઇ tag2:W” ફક્ત છાપે છે tag૧ માહિતી વર્બોસિટી સ્તર અથવા તેનાથી નીચા સ્તરે અને tagચેતવણી પર 2
શબ્દાનુસાર સ્તર અથવા નીચું. · નિયમ “tag1:આઇ tag૧:પ tag3:N” મૂળભૂત રીતે પાછલા એકની સમકક્ષ છે કારણ કે tag3:N સ્પષ્ટ કરે છે
કે tag૩ છાપવું જોઈએ નહીં. · tag૩:N નિયમમાં “tag1:આઇ tag૧:પ tag3:N *:V” વધુ અર્થપૂર્ણ છે કારણ કે વગર tag૩:N ધ
tag૩ સંદેશાઓ છાપી શકાયા હોત; માટે ભૂલો tag1 અને tag2 એ ઉલ્લેખિત (અથવા ઓછા) વર્બોસિટી સ્તરે છાપવામાં આવશે અને બાકીનું બધું મૂળભૂત રીતે છાપવામાં આવશે.
વધુ જટિલ ફિલ્ટરિંગ ઉદાહરણample નીચેનો લોગ સ્નિપેટ કોઈપણ ફિલ્ટરિંગ વિકલ્પો વિના પ્રાપ્ત થયો હતો:
load:0x40078000,len:13564 એન્ટ્રી 0x40078d4c E (31) esp_image: 0x30000 પરની છબીમાં અમાન્ય મેજિક બાઇટ છે W (31) esp_image: 0x30000 પરની છબીમાં અમાન્ય SPI મોડ છે 255 E (39) બુટ: ફેક્ટરી એપ્લિકેશન પાર્ટીશન બુટ કરી શકાતું નથી I (568) cpu_start: Pro cpu up. I (569) heap_init: પ્રારંભ કરી રહ્યું છે. ગતિશીલ ફાળવણી માટે RAM ઉપલબ્ધ છે: I (603) cpu_start: Pro cpu સ્ટાર્ટ યુઝર કોડ D (309) light_driver: [light_init, 74]: સ્થિતિ: 1, મોડ: 2 D (318) vfs: esp_vfs_register_fd_range શ્રેણી માટે સફળ છે <54; 64) અને VFS ID 1 I (328) wifi: wifi ડ્રાઇવર ટાસ્ક: 3ffdbf84, prio:23, સ્ટેક:4096, core=0
ફિલ્ટરિંગ વિકલ્પો PRINT_FILTER=”wifi esp_image:E light_driver:I” માટે કેપ્ચર કરેલ આઉટપુટ નીચે આપેલ છે:
E (31) esp_image: 0x30000 પરની છબીમાં અમાન્ય મેજિક બાઇટ છે I (328) wifi: wifi ડ્રાઇવર કાર્ય: 3ffdbf84, prio:23, સ્ટેક:4096, core=0
“PRINT_FILTER=”light_driver:D esp_image:N boot:N cpu_start:N vfs:N wifi:N *:V” વિકલ્પો નીચે મુજબનું આઉટપુટ દર્શાવે છે:
load:0x40078000,len:13564 એન્ટ્રી 0x40078d4c I (569) heap_init: શરૂ કરી રહ્યું છે. ગતિશીલ ફાળવણી માટે RAM ઉપલબ્ધ છે: D (309) light_driver: [light_init, 74]: સ્થિતિ: 1, મોડ: 2
IDF મોનિટર સાથે જાણીતા મુદ્દાઓ
વિન્ડોઝ પર જોવા મળેલી સમસ્યાઓ
· વિન્ડોઝ કન્સોલ મર્યાદાઓને કારણે એરો કી, તેમજ કેટલીક અન્ય કી, GDB માં કામ કરતી નથી. · ક્યારેક, જ્યારે oidf.pypexits, IDF મોનિટર ફરી શરૂ થાય તે પહેલાં તે 30 સેકન્ડ સુધી અટકી શકે છે. · જ્યારે ogdbpis ચાલે છે, ત્યારે તે GDBStub સાથે વાતચીત શરૂ કરતા પહેલા થોડા સમય માટે અટકી શકે છે.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ 1. Linux અને macOS માટે સ્ટાન્ડર્ડ ટૂલચેન સેટઅપ શરૂ કરો

ઇન્સ્ટોલેશન સ્ટેપ બાય સ્ટેપ આ એક વિગતવાર રોડમેપ છે જે તમને ઇન્સ્ટોલેશન પ્રક્રિયામાંથી પસાર કરશે.
ડેવલપમેન્ટ એન્વાયર્નમેન્ટ સેટ કરવું તમારા ESP32 માટે ESP-IDF સેટ કરવા માટેના આ પગલાં છે. · પગલું 1. પૂર્વજરૂરીયાતો ઇન્સ્ટોલ કરો · પગલું 2. ESP-IDF મેળવો · પગલું 3. ટૂલ્સ સેટ કરો · પગલું 4. પર્યાવરણ ચલ સેટ કરો · પગલું 5. ESP-IDF પરના પ્રથમ પગલાં
પગલું 1. પૂર્વજરૂરીયાતો ઇન્સ્ટોલ કરો ESP32 સાથે ESP-IDF નો ઉપયોગ કરવા માટે, તમારે તમારા ઓપરેટિંગ સિસ્ટમ પર આધારિત કેટલાક સોફ્ટવેર પેકેજો ઇન્સ્ટોલ કરવાની જરૂર છે. આ સેટઅપ માર્ગદર્શિકા તમને Linux અને macOS આધારિત સિસ્ટમો પર બધું ઇન્સ્ટોલ કરવામાં મદદ કરશે.
Linux વપરાશકર્તાઓ માટે ESP-IDF નો ઉપયોગ કરીને કમ્પાઇલ કરવા માટે તમારે નીચેના પેકેજો મેળવવાની જરૂર પડશે. ચલાવવાનો આદેશ તમે Linux ના કયા વિતરણનો ઉપયોગ કરી રહ્યા છો તેના પર આધાર રાખે છે:
· ઉબુન્ટુ અને ડેબિયન: 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 અપડેટ && sudo yum install git wget flex bison gperf python3 cmake ninja-build ccache dfu-util libusbx
CentOS 7 હજુ પણ સપોર્ટેડ છે પરંતુ વધુ સારા વપરાશકર્તા અનુભવ માટે CentOS વર્ઝન 8 ની ભલામણ કરવામાં આવે છે. · Arch: sudo pacman -S –needed gcc git make flex bison gperf python cmake ninja ccache dfu-util libusb
નોંધ: · ESP-IDF સાથે ઉપયોગ કરવા માટે CMake વર્ઝન 3.16 અથવા તેનાથી નવું વર્ઝન જરૂરી છે. જો તમારા OS વર્ઝનમાં યોગ્ય વર્ઝન ન હોય તો યોગ્ય વર્ઝન ઇન્સ્ટોલ કરવા માટે otools/idf_tools.py install cmakep ચલાવો. · જો તમને ઉપરોક્ત યાદીમાં તમારું Linux ડિસ્ટ્રિબ્યુશન દેખાતું નથી, તો કૃપા કરીને પેકેજ ઇન્સ્ટોલેશન માટે કયો આદેશ વાપરવો તે જાણવા માટે તેના દસ્તાવેજો તપાસો.
macOS વપરાશકર્તાઓ માટે ESP-IDF macOS પર ડિફોલ્ટ રૂપે ઇન્સ્ટોલ કરેલ Python ના સંસ્કરણનો ઉપયોગ કરશે. · CMake & Ninja બિલ્ડ ઇન્સ્ટોલ કરો: જો તમારી પાસે HomeBrew હોય, તો તમે આ ચલાવી શકો છો: brew install cmake ninja dfu-util જો તમારી પાસે MacPorts હોય, તો તમે આ ચલાવી શકો છો: sudo port install cmake ninja dfu-util નહિંતર, macOS ઇન્સ્ટોલેશન ડાઉનલોડ્સ માટે CMake અને Ninja હોમ પેજનો સંદર્ભ લો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
· ઝડપી બિલ્ડ માટે ccache ઇન્સ્ટોલ કરવાની પણ ભારપૂર્વક ભલામણ કરવામાં આવે છે. જો તમારી પાસે HomeBrew છે, તો આ MacPorts પર brew install ccache અથવા sudo port install ccache દ્વારા કરી શકાય છે.
નોંધ: જો કોઈપણ પગલા દરમિયાન આ પ્રકારની ભૂલ દેખાય છે: xcrun: ભૂલ: અમાન્ય સક્રિય વિકાસકર્તા પાથ (/Library/Developer/CommandLineTools), /Library/Developer/CommandLineTools/usr/bin/xcrun પર xcrun ખૂટે છે.
પછી તમારે ચાલુ રાખવા માટે XCode કમાન્ડ લાઇન ટૂલ્સ ઇન્સ્ટોલ કરવાની જરૂર પડશે. તમે xcode-select –install ચલાવીને આ ઇન્સ્ટોલ કરી શકો છો.
Apple M1 વપરાશકર્તાઓ જો તમે Apple M1 પ્લેટફોર્મનો ઉપયોગ કરો છો અને આના જેવી ભૂલ જુઓ છો: ચેતવણી: ટૂલ xtensa-esp32-elf વર્ઝન esp-2021r2-patch3-8.4.0 માટેની ડિરેક્ટરી હાજર છે, પરંતુ ટૂલ મળ્યું નથી ભૂલ: ટૂલ xtensa-esp32-elf માં કોઈ ઇન્સ્ટોલ કરેલ વર્ઝન નથી. કૃપા કરીને તેને ઇન્સ્ટોલ કરવા માટે 'install.sh' ચલાવો.
અથવા: zsh: એક્ઝેક્યુટેબલમાં ખરાબ CPU પ્રકાર: ~/.espressif/tools/xtensa-esp32-elf/esp-2021r2patch3-8.4.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
પછી તમારે /usr/sbin/softwareupdate –install-rosetta –agree-to-license ચલાવીને Apple Rosetta 2 ઇન્સ્ટોલ કરવાની જરૂર પડશે.
પાયથોન 3 ઇન્સ્ટોલ કરવું macOS Catalina 10.15 રિલીઝ નોટ્સના આધારે, Python 2.7 નો ઉપયોગ કરવાની ભલામણ કરવામાં આવતી નથી અને Python 2.7 ને macOS ના ભવિષ્યના વર્ઝનમાં ડિફોલ્ટ રૂપે શામેલ કરવામાં આવશે નહીં. તમારી પાસે હાલમાં કયું Python છે તે તપાસો: python –version
જો આઉટપુટ પાયથોન 2.7.17 જેવું હોય, તો તમારું ડિફોલ્ટ ઇન્ટરપ્રીટર પાયથોન 2.7 છે. જો એમ હોય, તો એ પણ તપાસો કે પાયથોન 3 તમારા કમ્પ્યુટર પર પહેલાથી ઇન્સ્ટોલ કરેલું નથી: python3 –version
જો ઉપરોક્ત આદેશ ભૂલ આપે છે, તો તેનો અર્થ એ છે કે પાયથોન 3 ઇન્સ્ટોલ કરેલું નથી. નીચે એક ઓવર છેview પાયથોન 3 ઇન્સ્ટોલ કરવા માટેના પગલાંઓ.
· હોમબ્રુ સાથે ઇન્સ્ટોલેશન નીચે મુજબ કરી શકાય છે: brew install python3
· જો તમારી પાસે MacPorts હોય, તો તમે આ ચલાવી શકો છો: sudo port install python38
પગલું 2. ESP-IDF મેળવો ESP32 માટે એપ્લિકેશનો બનાવવા માટે, તમારે ESP-IDF રિપોઝીટરીમાં Espressif દ્વારા પૂરી પાડવામાં આવેલ સોફ્ટવેર લાઇબ્રેરીઓની જરૂર પડશે. ESP-IDF મેળવવા માટે, તમારી ઇન્સ્ટોલેશન ડિરેક્ટરીમાં નેવિગેટ કરો અને git clone વડે રિપોઝીટરીને ક્લોન કરો, નીચે આપેલ સૂચનાઓને અનુસરીને, તમારી ઓપરેટિંગ સિસ્ટમ માટે વિશિષ્ટ. ટર્મિનલ ખોલો, અને નીચેના આદેશો ચલાવો:

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

mkdir -p ~/esp cd ~/esp git ક્લોન -b v5.0.9 –રિકર્સિવ https://github.com/espressif/esp-idf.git
ESP-IDF ને ~/esp/esp-idf માં ડાઉનલોડ કરવામાં આવશે. આપેલ પરિસ્થિતિમાં કયા ESP-IDF સંસ્કરણનો ઉપયોગ કરવો તે વિશેની માહિતી માટે ESP-IDF સંસ્કરણોનો સંપર્ક કરો.
પગલું 3. ટૂલ્સ સેટ કરો ESP-IDF ઉપરાંત, તમારે ESP32 ને સપોર્ટ કરતા પ્રોજેક્ટ્સ માટે ESP-IDF દ્વારા ઉપયોગમાં લેવાતા ટૂલ્સ, જેમ કે કમ્પાઇલર, ડીબગર, પાયથોન પેકેજો, વગેરે પણ ઇન્સ્ટોલ કરવાની જરૂર છે. cd ~/esp/esp-idf ./install.sh esp32
અથવા ફિશ શેલ સીડી સાથે ~/esp/esp-idf ./install.fish esp32
ઉપરોક્ત આદેશો ફક્ત ESP32 માટે જ ટૂલ્સ ઇન્સ્ટોલ કરે છે. જો તમે વધુ ચિપ લક્ષ્યો માટે પ્રોજેક્ટ્સ વિકસાવવા માંગતા હો, તો તમારે તે બધાની યાદી બનાવવી જોઈએ અને ભૂતપૂર્વ માટે ચલાવવું જોઈએ.ampલે: સીડી ~/esp/esp-idf ./install.sh esp32,esp32s2
અથવા ફિશ શેલ સીડી સાથે ~/esp/esp-idf ./install.fish esp32,esp32s2
બધા સપોર્ટેડ ટાર્ગેટ માટે ટૂલ્સ ઇન્સ્ટોલ કરવા માટે કૃપા કરીને નીચેનો આદેશ ચલાવો: cd ~/esp/esp-idf ./install.sh all
અથવા ફિશ શેલ સીડી સાથે ~/esp/esp-idf ./install.fish બધા
નોંધ: macOS વપરાશકર્તાઓ માટે, જો કોઈપણ પગલા દરમિયાન આવી ભૂલ દેખાય છે:urlઓપન એરર [SSL: CERTIFICATE_VERIFY_FAILED] પ્રમાણપત્ર ચકાસણી નિષ્ફળ: સ્થાનિક જારીકર્તા પ્રમાણપત્ર મેળવવામાં અસમર્થ (_ssl.c:xxx)
પ્રમાણપત્રો ઇન્સ્ટોલ કરવા માટે તમે તમારા કમ્પ્યુટરના પાયથોન ફોલ્ડરમાં Install Certificates.command ચલાવી શકો છો. વિગતો માટે, ESP-IDF ટૂલ્સ ઇન્સ્ટોલ કરતી વખતે ડાઉનલોડ ભૂલ જુઓ.

વૈકલ્પિક File ડાઉનલોડ્સ ટૂલ્સ ઇન્સ્ટોલર સંખ્યાબંધ ડાઉનલોડ કરે છે files GitHub Releases સાથે જોડાયેલ છે. જો GitHub ને ઍક્સેસ કરવાનું ધીમું હોય તો GitHub એસેટ ડાઉનલોડ્સ માટે Espressifns ડાઉનલોડ સર્વરને પ્રાધાન્ય આપવા માટે પર્યાવરણ ચલ સેટ કરવું શક્ય છે.

નોંધ: આ સેટિંગ ફક્ત GitHub રિલીઝમાંથી ડાઉનલોડ કરેલા વ્યક્તિગત ટૂલ્સને નિયંત્રિત કરે છે, તે બદલતું નથી URLકોઈપણ Git રિપોઝીટરીને ઍક્સેસ કરવા માટે વપરાય છે.

ટૂલ્સ ઇન્સ્ટોલ કરતી વખતે Espressif ડાઉનલોડ સર્વરને પ્રાધાન્ય આપવા માટે, install.sh ચલાવતી વખતે નીચેના આદેશોનો ક્રમ વાપરો:

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

સીડી ~/esp/esp-idf નિકાસ IDF_GITHUB_ASSETS=”dl.espressif.com/github_assets” ./install.sh
ટૂલ્સ ઇન્સ્ટોલેશન પાથને કસ્ટમાઇઝ કરવું આ પગલામાં રજૂ કરાયેલ સ્ક્રિપ્ટ્સ ESP-IDF દ્વારા જરૂરી કમ્પાઇલેશન ટૂલ્સ ઇન્સ્ટોલ કરે છે જે Linux પર યુઝર હોમ ડિરેક્ટરી: $HOME/.espressif ની અંદર છે. જો તમે ટૂલ્સને અલગ ડિરેક્ટરીમાં ઇન્સ્ટોલ કરવા માંગતા હો, તો ઇન્સ્ટોલેશન સ્ક્રિપ્ટ્સ ચલાવતા પહેલા પર્યાવરણ ચલ IDF_TOOLS_PATH સેટ કરો. ખાતરી કરો કે તમારા યુઝર એકાઉન્ટ પાસે આ પાથ વાંચવા અને લખવા માટે પૂરતી પરવાનગીઓ છે. જો IDF_TOOLS_PATH બદલતા હો, તો ખાતરી કરો કે દર વખતે જ્યારે ઇન્સ્ટોલ સ્ક્રિપ્ટ (install.bat, install.ps1 અથવા install.sh) અને એક્સપોર્ટ સ્ક્રિપ્ટ (export.bat, export.ps1 અથવા export.sh) એક્ઝિક્યુટ થાય ત્યારે તે સમાન મૂલ્ય પર સેટ થયેલ છે.
પગલું 4. પર્યાવરણ ચલોને સેટ કરો ઇન્સ્ટોલ કરેલા ટૂલ્સ હજુ સુધી PATH પર્યાવરણ ચલોમાં ઉમેરવામાં આવ્યા નથી. કમાન્ડ લાઇનમાંથી ટૂલ્સને ઉપયોગી બનાવવા માટે, કેટલાક પર્યાવરણ ચલોને સેટ કરવા આવશ્યક છે. ESP-IDF બીજી સ્ક્રિપ્ટ પ્રદાન કરે છે જે તે કરે છે. ટર્મિનલમાં જ્યાં તમે ESP-IDF નો ઉપયોગ કરવા જઈ રહ્યા છો, ત્યાં ચલાવો:
. $HOME/esp/esp-idf/export.sh
અથવા માછલી માટે (માત્ર માછલી સંસ્કરણ 3.0.0 થી સમર્થિત):
. $HOME/esp/esp-idf/export.fish
આગળના બિંદુ અને પાથ વચ્ચેની જગ્યા પર ધ્યાન આપો! જો તમે વારંવાર esp-idf નો ઉપયોગ કરવાની યોજના ઘડી રહ્યા છો, તો તમે export.sh ચલાવવા માટે એક ઉપનામ બનાવી શકો છો:
૧. નીચેના આદેશને કોપી કરીને તમારા shellns pro માં પેસ્ટ કરો.file (.પ્રોfile, .bashrc, .zprofile, વગેરે)
ઉપનામ get_idf='. $HOME/esp/esp-idf/export.sh' 2. ટર્મિનલ સત્ર પુનઃપ્રારંભ કરીને અથવા સોર્સ [પ્રો માટે માર્ગ] ચલાવીને રૂપરેખાંકન તાજું કરો.file],
ભૂતપૂર્વ માટેample, source ~/.bashrc. હવે તમે કોઈપણ ટર્મિનલ સત્રમાં esp-idf પર્યાવરણ સેટ કરવા અથવા તાજું કરવા માટે get_idf ચલાવી શકો છો. તકનીકી રીતે, તમે તમારા shellns pro માં export.sh ઉમેરી શકો છો.file સીધા; જોકે, તે આગ્રહણીય નથી. આમ કરવાથી દરેક ટર્મિનલ સત્રમાં IDF વર્ચ્યુઅલ વાતાવરણ સક્રિય થાય છે (જેમાં IDF ની જરૂર નથી તે સહિત), વર્ચ્યુઅલ વાતાવરણના હેતુને નિષ્ફળ બનાવે છે અને સંભવતઃ અન્ય સોફ્ટવેરને અસર કરે છે.
પગલું ૫. ESP-IDF પર પ્રથમ પગલાં હવે બધી આવશ્યકતાઓ પૂર્ણ થઈ ગઈ હોવાથી, આગળનો વિષય તમને તમારા પ્રથમ પ્રોજેક્ટને કેવી રીતે શરૂ કરવો તે અંગે માર્ગદર્શન આપશે. આ માર્ગદર્શિકા તમને ESP-IDF નો ઉપયોગ કરવાના પ્રથમ પગલાંમાં મદદ કરશે. ESP32 પર નવો પ્રોજેક્ટ શરૂ કરવા અને ઉપકરણ આઉટપુટ બનાવવા, ફ્લેશ કરવા અને મોનિટર કરવા માટે આ માર્ગદર્શિકાને અનુસરો.
નોંધ: જો તમે હજુ સુધી ESP-IDF ઇન્સ્ટોલ કર્યું નથી, તો કૃપા કરીને ઇન્સ્ટોલેશન પર જાઓ અને આ માર્ગદર્શિકાનો ઉપયોગ કરવા માટે જરૂરી બધા સોફ્ટવેર મેળવવા માટે સૂચનાઓનું પાલન કરો.

પ્રોજેક્ટ શરૂ કરો હવે તમે ESP32 માટે તમારી અરજી તૈયાર કરવા માટે તૈયાર છો. તમે getstarted/hello_world પ્રોજેક્ટ સાથે શરૂઆત કરી શકો છો.ampESP-IDF માં લેસ ડિરેક્ટરી.

મહત્વપૂર્ણ: ESP-IDF બિલ્ડ સિસ્ટમ ESP-IDF અથવા પ્રોજેક્ટ્સના પાથમાં જગ્યાઓને સપોર્ટ કરતી નથી.

પ્રોજેક્ટ get-started/hello_world ને ~/esp ડિરેક્ટરીમાં કોપી કરો:

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
સીડી ~/esp સીપી -આર $IDF_PATH/exampલેસ/ગેટ-સ્ટાર્ટ/હેલો_વર્લ્ડ .
નોંધ: ભૂતપૂર્વની શ્રેણી છેampભૂતપૂર્વ માં લે પ્રોજેક્ટ્સampESP-IDF માં લેસ ડિરેક્ટરી. તમે ઉપર દર્શાવ્યા પ્રમાણે કોઈપણ પ્રોજેક્ટની નકલ કરી શકો છો અને તેને ચલાવી શકો છો. ભૂતપૂર્વ બિલ્ડ કરવાનું પણ શક્ય છેampપહેલા તેમની નકલ કર્યા વિના, તેમને સ્થાને મૂકો.
તમારા ઉપકરણને કનેક્ટ કરો હવે તમારા ESP32 બોર્ડને કમ્પ્યુટર સાથે કનેક્ટ કરો અને તપાસો કે બોર્ડ કયા સીરીયલ પોર્ટ હેઠળ દેખાય છે. સીરીયલ પોર્ટમાં નીચેના નામકરણ પેટર્ન હોય છે:
· Linux: /dev/tty થી શરૂ કરીને · macOS: /dev/cu થી શરૂ કરીને. જો તમને ખાતરી ન હોય કે સીરીયલ પોર્ટ નામ કેવી રીતે તપાસવું, તો કૃપા કરીને સંપૂર્ણ વિગતો માટે ESP32 સાથે સીરીયલ કનેક્શન સ્થાપિત કરો જુઓ.
નોંધ: પોર્ટનું નામ હાથમાં રાખો કારણ કે તમને આગલા પગલાઓમાં તેની જરૂર પડશે.
તમારા પ્રોજેક્ટને ગોઠવો તમારી hello_world ડિરેક્ટરી પર જાઓ, ESP32 ને લક્ષ્ય તરીકે સેટ કરો, અને પ્રોજેક્ટ રૂપરેખાંકન ઉપયોગિતા menuconfig ચલાવો. cd ~/esp/hello_world idf.py set-target esp32 idf.py menuconfig
નવો પ્રોજેક્ટ ખોલ્યા પછી, તમારે પહેલા idf.py set-target esp32 વડે લક્ષ્ય સેટ કરવું જોઈએ. નોંધ કરો કે પ્રોજેક્ટમાં હાલના બિલ્ડ્સ અને ગોઠવણીઓ, જો કોઈ હોય, તો તે આ પ્રક્રિયામાં સાફ અને પ્રારંભ કરવામાં આવશે. આ પગલું બિલકુલ છોડી દેવા માટે લક્ષ્યને પર્યાવરણ ચલમાં સાચવી શકાય છે. વધારાની માહિતી માટે લક્ષ્ય ચિપ પસંદ કરો: સેટ-ટાર્ગેટ જુઓ. જો અગાઉના પગલાં યોગ્ય રીતે કરવામાં આવ્યા હોય, તો નીચેનું મેનુ દેખાય છે:

આકૃતિ ૧૭: પ્રોજેક્ટ રૂપરેખાંકન - હોમ વિન્ડો તમે આ મેનુનો ઉપયોગ પ્રોજેક્ટ વિશિષ્ટ ચલોને સેટ કરવા માટે કરી રહ્યા છો, દા.ત., Wi-Fi નેટવર્ક નામ અને પાસવર્ડ, પ્રોસેસર ગતિ, વગેરે. menuconfig સાથે પ્રોજેક્ટ સેટ કરવાનું forohello_worldp છોડી શકાય છે, કારણ કે આ ભૂતપૂર્વampલે સાથે દોડે છે

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
મૂળભૂત રૂપરેખાંકન.
ધ્યાન આપો: જો તમે ESP32-SOLO-1 મોડ્યુલ સાથે ESP32-DevKitC બોર્ડ અથવા ESP32-MIN1-1(1U) મોડ્યુલ સાથે ESP32-DevKitM-1 બોર્ડનો ઉપયોગ કરો છો, તો કૃપા કરીને ફ્લેશિંગ કરતા પહેલા મેનુકોન્ફિગમાં સિંગલ કોર મોડ (CONFIG_FREERTOS_UNICORE) સક્ષમ કરો.ampલેસ
નોંધ: તમારા ટર્મિનલમાં મેનુના રંગો અલગ અલગ હોઈ શકે છે. તમે –style વિકલ્પનો ઉપયોગ કરીને દેખાવ બદલી શકો છો. વધુ માહિતી માટે કૃપા કરીને idf.py menuconfig –help ચલાવો.
જો તમે સપોર્ટેડ ડેવલપમેન્ટ બોર્ડમાંથી કોઈ એકનો ઉપયોગ કરી રહ્યા છો, તો તમે બોર્ડ સપોર્ટ પેકેજનો ઉપયોગ કરીને તમારા ડેવલપમેન્ટને ઝડપી બનાવી શકો છો. વધુ માહિતી માટે વધારાની ટિપ્સ જુઓ.
પ્રોજેક્ટ બનાવો: આ ચલાવીને પ્રોજેક્ટ બનાવો:
idf.py બિલ્ડ
આ આદેશ એપ્લિકેશન અને તમામ ESP-IDF ઘટકોનું સંકલન કરશે, પછી તે બુટલોડર, પાર્ટીશન ટેબલ અને એપ્લિકેશન દ્વિસંગી જનરેટ કરશે.
$ idf.py build /path/to/hello_world/build ડિરેક્ટરીમાં cmake ચલાવી રહ્યા છીએ “cmake -G Ninja –warn-uninitialized /path/to/hello_world” ચલાવી રહ્યા છીએ… બિન-પ્રારંભિક મૂલ્યો વિશે ચેતવણી આપો. — Git મળ્યું: /usr/bin/git (આવૃત્તિ “2.17.0” મળી) — રૂપરેખાંકનને કારણે ખાલી aws_iot ઘટક બનાવવું — ઘટક નામો: … — ઘટક પાથ: …
… (બિલ્ડ સિસ્ટમ આઉટપુટની વધુ રેખાઓ)
[527/527] hello_world.bin esptool.py v2.3.1 જનરેટ કરી રહ્યું છે
પ્રોજેક્ટ બિલ્ડ પૂર્ણ થયું. ફ્લેશ કરવા માટે, આ આદેશ ચલાવો: ../../../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 build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/ partition-table.bin અથવા 'idf.py -p PORT flash' ચલાવો.
જો ત્યાં કોઈ ભૂલો ન હોય, તો ફર્મવેર બાઈનરી .bin જનરેટ કરીને બિલ્ડ સમાપ્ત થશે files.
ડિવાઇસ પર ફ્લેશ કરો તમે હમણાં જ બનાવેલા બાયનરી (bootloader.bin, partition-table.bin અને hello_world.bin) ને તમારા ESP32 બોર્ડ પર આ રીતે ચલાવીને ફ્લેશ કરો:
idf.py -p પોર્ટ [-b BAUD] ફ્લેશ
PORT ને તમારા ESP32 બોર્ડન્સ સીરીયલ પોર્ટ નામથી બદલો. તમે BAUD ને તમને જોઈતા બાઉડ રેટથી બદલીને ફ્લેશર બાઉડ રેટ પણ બદલી શકો છો. ડિફોલ્ટ બાઉડ રેટ 460800 છે. idf.py દલીલો વિશે વધુ માહિતી માટે, idf.py જુઓ.
નોંધ: વિકલ્પ ફ્લેશ આપમેળે પ્રોજેક્ટ બનાવે છે અને ફ્લેશ કરે છે, તેથી idf.py બિલ્ડ ચલાવવાની જરૂર નથી.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો

ફ્લેશિંગ કરતી વખતે સમસ્યાઓનો સામનો કરવો પડ્યો? જો તમે આપેલ આદેશ ચલાવો છો અને oFailed to connectp જેવી ભૂલો જુઓ છો, તો આના ઘણા કારણો હોઈ શકે છે. એક કારણ esptool.py દ્વારા આવતી સમસ્યાઓ હોઈ શકે છે, જે બિલ્ડ સિસ્ટમ દ્વારા ચિપ રીસેટ કરવા, ROM બુટલોડર સાથે ક્રિયાપ્રતિક્રિયા કરવા અને ફ્લેશ ફર્મવેર માટે બોલાવવામાં આવતી ઉપયોગિતા છે. એક સરળ ઉકેલ નીચે વર્ણવેલ મેન્યુઅલ રીસેટ છે, અને જો તે મદદ ન કરે તો તમે મુશ્કેલીનિવારણમાં સંભવિત સમસ્યાઓ વિશે વધુ વિગતો શોધી શકો છો.
esptool.py USB ની DTR અને RTS કંટ્રોલ લાઇન્સને સીરીયલ કન્વર્ટર ચિપ, એટલે કે FTDI અથવા CP210x પર ભાર મૂકીને ESP32 ને આપમેળે રીસેટ કરે છે (વધુ માહિતી માટે, ESP32 સાથે સીરીયલ કનેક્શન સ્થાપિત કરો જુઓ). DTR અને RTS કંટ્રોલ લાઇનો બદલામાં ESP32 ના GPIO0 અને CHIP_PU (EN) પિન સાથે જોડાયેલી હોય છે, આમ વોલ્યુમમાં ફેરફાર થાય છે.tagDTR અને RTS ના e સ્તરો ESP32 ને ફર્મવેર ડાઉનલોડ મોડમાં બુટ કરશે. ભૂતપૂર્વ તરીકેampહા, ESP32 DevKitC ડેવલપમેન્ટ બોર્ડ માટે સ્કીમેટિક તપાસો.
સામાન્ય રીતે, તમને સત્તાવાર esp-idf ડેવલપમેન્ટ બોર્ડ સાથે કોઈ સમસ્યા ન હોવી જોઈએ. જો કે, esptool.py નીચેના કિસ્સાઓમાં તમારા હાર્ડવેરને આપમેળે રીસેટ કરવામાં સક્ષમ નથી:
· તમારા હાર્ડવેરમાં GPIO0 અને CHIP_PU સાથે જોડાયેલ DTR અને RTS લાઇન્સ નથી · DTR અને RTS લાઇન્સ અલગ રીતે ગોઠવેલી છે · આવી કોઈ સીરીયલ કંટ્રોલ લાઇન્સ બિલકુલ નથી.
તમારી પાસે કયા પ્રકારના હાર્ડવેર છે તેના આધારે, તમારા ESP32 બોર્ડને ફર્મવેર ડાઉનલોડ મોડ (રીસેટ) માં મેન્યુઅલી મૂકવું પણ શક્ય બની શકે છે.
· એસ્પ્રેસિફ દ્વારા ઉત્પાદિત ડેવલપમેન્ટ બોર્ડ માટે, આ માહિતી સંબંધિત શરૂઆત માર્ગદર્શિકાઓ અથવા વપરાશકર્તા માર્ગદર્શિકાઓમાં મળી શકે છે. ઉદાહરણ તરીકેampઅને, ESP-IDF ડેવલપમેન્ટ બોર્ડને મેન્યુઅલી રીસેટ કરવા માટે, બુટ બટન (GPIO0) દબાવી રાખો અને EN બટન (CHIP_PU) દબાવો.
· અન્ય પ્રકારના હાર્ડવેર માટે, GPIO0 ને નીચે ખેંચવાનો પ્રયાસ કરો.

સામાન્ય કામગીરી ફ્લેશિંગ કરતી વખતે, તમને નીચેના જેવો આઉટપુટ લોગ દેખાશે:
… 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/partition-table.bin 0x1000 bootloader/bootloader.bin 0x10000 hello_world.bin esptool.py v3.0-dev સીરીયલ પોર્ટ /dev/ttyUSB0 કનેક્ટ કરી રહ્યું છે…….._ ચિપ ESP32D0WDQ6 છે (રિવિઝન 0) સુવિધાઓ: WiFi, BT, ડ્યુઅલ કોર, કોડિંગ સ્કીમ કંઈ નહીં ક્રિસ્ટલ 40MHz છે MAC: 24:0a:c4:05:b9:14 સ્ટબ અપલોડ કરી રહ્યું છે… સ્ટબ ચાલી રહ્યું છે… સ્ટબ ચાલી રહ્યું છે… બાઉડ રેટને 460800 માં બદલી રહ્યું છે. ફ્લેશ કદ ગોઠવી રહ્યું છે… ૩૦૭૨ બાઇટ્સ ૧૦૩ સુધી સંકુચિત કર્યા… ૦x૦૦૦૦૮૦૦૦ પર લખવું… (૧૦૦%) ૦.૦ સેકન્ડમાં ૦x૦૦૦૦૮૦૦૦ પર ૩૦૭૨ બાઇટ્સ (૧૦૩ સંકુચિત) લખ્યા (અસરકારક ૫૯૬૨.૮ kbit/s)… ડેટાનો હેશ ચકાસાયેલ. ૨૬૦૯૬ બાઇટ્સ ૧૫૪૦૮ પર સંકુચિત કર્યા… ૦x૦૦૦૦૧૦૦૦ પર લખવું… (૧૦૦%) ૦.૪ સેકન્ડમાં ૦x૦૦૦૦૧૦૦૦ પર ૨૬૦૯૬ બાઇટ્સ (૧૫૪૦૮ સંકુચિત) લખ્યા (અસરકારક ૫૪૬.૭ kbit/s)… ડેટાનો હેશ ચકાસાયેલ. ૧૪૭૧૦૪ બાઇટ્સને ૭૭૩૬૪ પર સંકુચિત કર્યા… ૦x૦૦૧૦૦૦૦ પર લખવું… (૨૦%) ૦x૦૦૧૪૦૦૦ પર લખવું… (૪૦%) ૦x૦૦૧૮૦૦૦ પર લખવું… (૬૦%) ૦x૦૦૧સી૦૦૦ પર લખવું… (૮૦%)
(આગળના પાના પર ચાલુ)

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
(પાછલા પૃષ્ઠથી ચાલુ) 0x00020000 પર લખવું… (100%) 1.9 સેકન્ડમાં 0x00010000 પર 147104 બાઇટ્સ (77364 સંકુચિત) લખ્યા (અસરકારક 615. 5 kbit/s)… ડેટાનો હેશ ચકાસાયેલ.
છોડી રહ્યાં છીએ... RTS પિન દ્વારા હાર્ડ રીસેટ કરી રહ્યાં છીએ... થઈ ગયું
જો ફ્લેશ પ્રક્રિયાના અંત સુધીમાં કોઈ સમસ્યા ન હોય, તો બોર્ડ રીબૂટ થશે અને theohello_worldpapplication શરૂ કરશે. જો તમે idf.py ચલાવવાને બદલે Eclipse અથવા VS Code IDE નો ઉપયોગ કરવા માંગતા હો, તો Eclipse Plugin, VSCode Extension તપાસો.
આઉટપુટ મોનિટર કરો. ohello_worldpis ખરેખર ચાલી રહ્યું છે કે નહીં તે ચકાસવા માટે, idf.py -p PORT monitor લખો (PORT ને તમારા સીરીયલ પોર્ટ નામથી બદલવાનું ભૂલશો નહીં). આ આદેશ IDF મોનિટર એપ્લિકેશન શરૂ કરે છે:
$ idf.py -p મોનિટર ડિરેક્ટરીમાં idf_monitor ચલાવી રહ્યા છીએ […]/esp/hello_world/build “python […]/esp-idf/tools/idf_monitor.py -b 115200 […]/esp/hello_ world/build/hello_world.elf”… ચલાવી રહ્યા છીએ — idf_monitor ચાલુ છે 115200 —– બહાર નીકળો: Ctrl+] | મેનુ: Ctrl+T | મદદ: Ctrl+T પછી Ctrl+H –ets 8 જૂન 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) ets 8 જૂન 2016 00:22:57 …
સ્ટાર્ટઅપ અને ડાયગ્નોસ્ટિક લોગ ઉપર સ્ક્રોલ કર્યા પછી, તમારે ઓહેલો વર્લ્ડ જોવું જોઈએ!એપ્લિકેશન દ્વારા પ્રિન્ટ આઉટ.
… હેલો વર્લ્ડ! ૧૦ સેકન્ડમાં ફરી શરૂ થઈ રહ્યું છે… આ ૨ CPU કોર(કોર), WiFi/BT/BLE, સિલિકોન રિવિઝન ૧, ૨MB બાહ્ય ફ્લેશ સાથે esp32 ચિપ છે ન્યૂનતમ ફ્રી હીપ સાઇઝ: ૨૯૮૯૬૮ બાઇટ્સ ૯ સેકન્ડમાં ફરી શરૂ થઈ રહ્યું છે… ૮ સેકન્ડમાં ફરી શરૂ થઈ રહ્યું છે… ૭ સેકન્ડમાં ફરી શરૂ થઈ રહ્યું છે…
IDF મોનિટરમાંથી બહાર નીકળવા માટે શોર્ટકટ Ctrl+] નો ઉપયોગ કરો. જો IDF મોનિટર અપલોડ થયા પછી તરત જ નિષ્ફળ જાય, અથવા, ઉપરના સંદેશાઓને બદલે, તમને નીચે આપેલા સંદેશાઓ જેવો રેન્ડમ કચરો દેખાય, તો તમારું બોર્ડ કદાચ 26 MHz ક્રિસ્ટલનો ઉપયોગ કરી રહ્યું છે. મોટાભાગના ડેવલપમેન્ટ બોર્ડ ડિઝાઇન 40 MHz નો ઉપયોગ કરે છે, તેથી ESP-IDF આ ફ્રીક્વન્સીનો ઉપયોગ ડિફોલ્ટ મૂલ્ય તરીકે કરે છે.

જો તમને આવી સમસ્યા હોય, તો નીચે મુજબ કરો:
૧. મોનિટરમાંથી બહાર નીકળો. ૨. મેનુકોન્ફિગ પર પાછા જાઓ. ૩. કમ્પોનન્ટ રૂપરેખા > હાર્ડવેર સેટિંગ્સ > મુખ્ય XTAL રૂપરેખા > મુખ્ય XTAL પર જાઓ.
ફ્રીક્વન્સી, પછી CONFIG_XTAL_FREQ_SEL ને 26 MHz પર બદલો. 4. તે પછી, એપ્લિકેશન ફરીથી બનાવો અને ફ્લેશ કરો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
ESP-IDF ના વર્તમાન સંસ્કરણમાં, ESP32 દ્વારા સપોર્ટેડ મુખ્ય XTAL ફ્રીક્વન્સીઝ નીચે મુજબ છે:
· ૨૬ મેગાહર્ટ્ઝ · ૪૦ મેગાહર્ટ્ઝ
નોંધ: તમે idf.py -p PORT ફ્લેશ મોનિટર ચલાવીને એક જ પગલામાં બિલ્ડીંગ, ફ્લેશિંગ અને મોનિટરિંગને જોડી શકો છો.
આ પણ જુઓ: · IDF મોનિટરનો ઉપયોગ કરવા માટે સરળ શોર્ટકટ્સ અને વધુ વિગતો માટે IDF મોનિટર. · idf.py આદેશો અને વિકલ્પોના સંપૂર્ણ સંદર્ભ માટે idf.py.
ESP32 સાથે શરૂઆત કરવા માટે તમારે આટલું જ જોઈએ! હવે તમે બીજા કોઈ એક્સ અજમાવવા માટે તૈયાર છોampઓછી, અથવા સીધા તમારી પોતાની એપ્લિકેશનો વિકસાવવા પર જાઓ.
મહત્વપૂર્ણ: કેટલાક ભૂતપૂર્વampESP32 માં જરૂરી હાર્ડવેર શામેલ ન હોવાથી, તે ESP32 ને સપોર્ટ કરતું નથી, તેથી તેને સપોર્ટ કરી શકાતો નથી. જો ex બનાવી રહ્યા છોampલે, કૃપા કરીને README તપાસો file સપોર્ટેડ ટાર્ગેટ્સ ટેબલ માટે. જો આ ESP32 ટાર્ગેટ સહિત હાજર હોય, અથવા ટેબલ બિલકુલ અસ્તિત્વમાં ન હોય, તો ભૂતપૂર્વample ESP32 પર કામ કરશે.
વધારાની ટિપ્સ
પરવાનગી સમસ્યાઓ /dev/ttyUSB0 કેટલાક Linux વિતરણો સાથે, ESP32 ફ્લેશ કરતી વખતે તમને "Failed to open port /dev/ttyUSB0" ભૂલ સંદેશ મળી શકે છે. આ સમસ્યા વર્તમાન વપરાશકર્તાને ડાયલઆઉટ જૂથમાં ઉમેરીને ઉકેલી શકાય છે.
પાયથોન સુસંગતતા ESP-IDF પાયથોન 3.7 અથવા નવા સંસ્કરણોને સપોર્ટ કરે છે. આ જરૂરિયાતને પૂર્ણ કરતા તમારા ઓપરેટિંગ સિસ્ટમને તાજેતરના સંસ્કરણ પર અપગ્રેડ કરવાની ભલામણ કરવામાં આવે છે. અન્ય વિકલ્પોમાં સ્ત્રોતોમાંથી પાયથોન ઇન્સ્ટોલ કરવું અથવા પાયથોન વર્ઝન મેનેજમેન્ટ સિસ્ટમ જેમ કે pyenv નો ઉપયોગ શામેલ છે.
બોર્ડ સપોર્ટ પેકેજથી શરૂઆત કરો કેટલાક ડેવલપમેન્ટ બોર્ડ પર પ્રોટોટાઇપિંગ ઝડપી બનાવવા માટે, તમે બોર્ડ સપોર્ટ પેકેજો (BSPs) નો ઉપયોગ કરી શકો છો, જે ચોક્કસ બોર્ડનું ઇનિશિયલાઇઝેશન થોડા ફંક્શન કોલ જેટલું સરળ બનાવે છે. BSP સામાન્ય રીતે ડેવલપમેન્ટ બોર્ડ પર પૂરા પાડવામાં આવેલા બધા હાર્ડવેર ઘટકોને સપોર્ટ કરે છે. પિનઆઉટ ડેફિનેશન અને ઇનિશિયલાઇઝેશન ફંક્શન્સ ઉપરાંત, BSP બાહ્ય ઘટકો જેમ કે સેન્સર, ડિસ્પ્લે, ઓડિયો કોડેક્સ વગેરે માટે ડ્રાઇવરો સાથે શિપ કરે છે. BSPs IDF કમ્પોનન્ટ મેનેજર દ્વારા વિતરિત કરવામાં આવે છે, તેથી તે IDF કમ્પોનન્ટ રજિસ્ટ્રીમાં મળી શકે છે. અહીં એક ઉદાહરણ છેampતમારા પ્રોજેક્ટમાં ESP-WROVER-KIT BSP કેવી રીતે ઉમેરવું તેની માહિતી: idf.py add-dependency esp_wrover_kit
વધુ માજીampBSP ઉપયોગની માહિતી BSP ex માં મળી શકે છેampલેસ ફોલ્ડર.
ટીપ: ESP-IDF અપડેટ કરવું સમય સમય પર ESP-IDF ને અપડેટ કરવાની ભલામણ કરવામાં આવે છે, કારણ કે નવા સંસ્કરણો ભૂલોને સુધારે છે અને/અથવા નવી સુવિધાઓ પ્રદાન કરે છે. કૃપા કરીને નોંધ લો કે દરેક ESP-IDF મુખ્ય અને ગૌણ પ્રકાશન સંસ્કરણનો એક સંકળાયેલ સપોર્ટ સમયગાળો હોય છે, અને જ્યારે એક પ્રકાશન શાખા જીવનના અંત (EOL) નજીક આવી રહી હોય છે, ત્યારે બધા વપરાશકર્તાઓને તેમના પ્રોજેક્ટ્સને તાજેતરના ESP-IDF પ્રકાશનોમાં અપગ્રેડ કરવા માટે પ્રોત્સાહિત કરવામાં આવે છે, સપોર્ટ સમયગાળા વિશે વધુ જાણવા માટે, ESP-IDF સંસ્કરણો જુઓ.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ ૧. શરૂઆત કરો
અપડેટ કરવાનો સૌથી સરળ રસ્તો એ છે કે હાલના esp-idf ફોલ્ડરને કાઢી નાખો અને તેને ફરીથી ક્લોન કરો, જાણે કે પગલું 2 માં વર્ણવેલ પ્રારંભિક ઇન્સ્ટોલેશન કરી રહ્યા હોવ. ESP-IDF મેળવો. બીજો ઉકેલ એ છે કે ફક્ત જે બદલાયું છે તે અપડેટ કરો. અપડેટ પ્રક્રિયા તમે જે ESP-IDF નો ઉપયોગ કરી રહ્યા છો તેના પર આધાર રાખે છે. ESP-IDF અપડેટ કર્યા પછી, જો નવા ESP-IDF સંસ્કરણને ટૂલ્સના વિવિધ સંસ્કરણોની જરૂર હોય તો, ફરીથી ઇન્સ્ટોલ સ્ક્રિપ્ટ ચલાવો. પગલું 3 પર સૂચનાઓ જુઓ. ટૂલ્સ સેટ કરો. એકવાર નવા ટૂલ્સ ઇન્સ્ટોલ થઈ જાય, પછી એક્સપોર્ટ સ્ક્રિપ્ટનો ઉપયોગ કરીને પર્યાવરણ અપડેટ કરો. પગલું 4 પર સૂચનાઓ જુઓ. પર્યાવરણ ચલો સેટ કરો.
સંબંધિત દસ્તાવેજો · ESP32 સાથે સીરીયલ કનેક્શન સ્થાપિત કરો · એક્લિપ્સ પ્લગઇન · VSCode એક્સટેન્શન · IDF મોનિટર
૧.૪ તમારો પહેલો પ્રોજેક્ટ બનાવો
જો તમારી પાસે પહેલાથી જ ESP-IDF ઇન્સ્ટોલ કરેલું હોય અને તમે IDE વાપરતા ન હોવ, તો તમે "Windows પર પ્રોજેક્ટ શરૂ કરો" અથવા "Linux અને macOS પર પ્રોજેક્ટ શરૂ કરો" બટનને અનુસરીને કમાન્ડ લાઇનમાંથી તમારો પહેલો પ્રોજેક્ટ બનાવી શકો છો.
૧.૫ ESP-IDF અનઇન્સ્ટોલ કરો
જો તમે ESP-IDF દૂર કરવા માંગતા હો, તો કૃપા કરીને અનઇન્સ્ટોલ ESP-IDF ને અનુસરો.

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ 2
API સંદર્ભ
૨.૧ API સંમેલનો
આ દસ્તાવેજ ESP-IDF એપ્લિકેશન પ્રોગ્રામિંગ ઇન્ટરફેસ (API) માટે સામાન્ય પરંપરાઓ અને ધારણાઓનું વર્ણન કરે છે. ESP-IDF અનેક પ્રકારના પ્રોગ્રામિંગ ઇન્ટરફેસ પૂરા પાડે છે:
· પબ્લિક હેડરમાં જાહેર કરાયેલ C ફંક્શન્સ, સ્ટ્રક્ચર્સ, એનમ્સ, ટાઇપ ડેફિનેશન્સ અને પ્રીપ્રોસેસર મેક્રોઝ fileESPIDF ઘટકોના s. પ્રોગ્રામિંગ માર્ગદર્શિકાના API સંદર્ભ વિભાગના વિવિધ પૃષ્ઠો પર આ કાર્યો, માળખાં અને પ્રકારોનું વર્ણન છે.
· બિલ્ડ સિસ્ટમ ફંક્શન્સ, પૂર્વવ્યાખ્યાયિત ચલો અને વિકલ્પો. આ બિલ્ડ સિસ્ટમ માર્ગદર્શિકામાં દસ્તાવેજીકૃત થયેલ છે. · Kconfig વિકલ્પોનો ઉપયોગ કોડ અને બિલ્ડ સિસ્ટમ (CMakeLists.txt) માં થઈ શકે છે. files. · હોસ્ટ ટૂલ્સ અને તેમના કમાન્ડ લાઇન પેરામીટર્સ પણ ESP-IDF ઇન્ટરફેસનો ભાગ છે. ESP-IDF માં ખાસ કરીને ESP-IDF તેમજ તૃતીય-પક્ષ લાઇબ્રેરીઓ માટે લખાયેલા ઘટકોનો સમાવેશ થાય છે. કેટલાક કિસ્સાઓમાં, તૃતીય-પક્ષ લાઇબ્રેરીમાં ESP-IDF-વિશિષ્ટ રેપર ઉમેરવામાં આવે છે, જે એક ઇન્ટરફેસ પ્રદાન કરે છે જે કાં તો સરળ હોય છે અથવા બાકીની ESP-IDF સુવિધાઓ સાથે વધુ સારી રીતે સંકલિત હોય છે. અન્ય કિસ્સાઓમાં, તૃતીય-પક્ષ લાઇબ્રેરીનું મૂળ API એપ્લિકેશન ડેવલપર્સને રજૂ કરવામાં આવે છે. નીચેના વિભાગો ESP-IDF API ના કેટલાક પાસાઓ અને તેમના ઉપયોગને સમજાવે છે.
2.1.1 ભૂલ હેન્ડલિંગ
મોટાભાગના ESP-IDF APIs esp_err_t પ્રકાર સાથે વ્યાખ્યાયિત ભૂલ કોડ પરત કરે છે. ભૂલ સંભાળવાના અભિગમો વિશે વધુ માહિતી માટે ભૂલ સંભાળવાનો વિભાગ જુઓ. ભૂલ કોડ સંદર્ભમાં ESP-IDF ઘટકો દ્વારા પરત કરાયેલ ભૂલ કોડ્સની સૂચિ શામેલ છે.
૨.૧.૨ રૂપરેખાંકન માળખાં
મહત્વપૂર્ણ: ESP-IDF ના ભાવિ સંસ્કરણો સાથે એપ્લિકેશનને સુસંગત બનાવવા માટે રૂપરેખાંકન માળખાંનું યોગ્ય પ્રારંભ એક મહત્વપૂર્ણ ભાગ છે.
ESP-IDF માં મોટાભાગના આરંભિકરણ અથવા રૂપરેખાંકન કાર્યો રૂપરેખાંકન માળખાના નિર્દેશક તરીકે દલીલ તરીકે લે છે. ઉદાહરણ તરીકેampલે:
45

પ્રકરણ 2. API સંદર્ભ

કોન્સ્ટ 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);
ઇનિશિયલાઇઝેશન ફંક્શન્સ ક્યારેય પોઇન્ટરને રૂપરેખાંકન માળખામાં સંગ્રહિત કરતા નથી, તેથી સ્ટેક પર માળખું ફાળવવાનું સલામત છે.
એપ્લિકેશનમાં માળખાના બધા ક્ષેત્રો શરૂ કરવા આવશ્યક છે. નીચે આપેલ ખોટું છે:
esp_timer_create_args_t my_timer_args; my_timer_args.callback = &my_timer_callback; /* ખોટું! ફીલ્ડ્સ .arg અને .name શરૂ થયા નથી */ esp_timer_create(&my_timer_args, &my_timer);
મોટાભાગના ESP-IDF ભૂતપૂર્વamples સ્ટ્રક્ચર ઇનિશિયલાઇઝેશન માટે C99 નિયુક્ત ઇનિશિયલાઇઝર્સનો ઉપયોગ કરે છે, કારણ કે તે ફીલ્ડ્સના સબસેટને સેટ કરવાની અને બાકીના ફીલ્ડ્સને શૂન્ય-ઇનિશિયલાઇઝ કરવાની સંક્ષિપ્ત રીત પ્રદાન કરે છે:
const esp_timer_create_args_t my_timer_args = { .callback = &my_timer_callback, /* સાચું, ફીલ્ડ્સ .arg અને .name શૂન્ય-પ્રારંભિક છે */
};
C++ ભાષા C++20 સુધી નિયુક્ત ઇનિશિયલાઇઝર્સ સિન્ટેક્સને સપોર્ટ કરતી નથી, જોકે GCC કમ્પાઇલર તેને આંશિક રીતે એક્સટેન્શન તરીકે સપોર્ટ કરે છે. C++ કોડમાં ESP-IDF API નો ઉપયોગ કરતી વખતે, તમે નીચેના પેટર્નનો ઉપયોગ કરવાનું વિચારી શકો છો:
esp_timer_create_args_t my_timer_args = {}; /* બધા ફીલ્ડ શૂન્ય-પ્રારંભિક છે */ my_timer_args.callback = &my_timer_callback;

ડિફોલ્ટ ઇનિશિયલાઇઝર્સ
કેટલાક રૂપરેખાંકન માળખાં માટે, ESP-IDF ક્ષેત્રોના ડિફોલ્ટ મૂલ્યો સેટ કરવા માટે મેક્રો પ્રદાન કરે છે:
httpd_config_t config = HTTPD_DEFAULT_CONFIG(); /* HTTPD_DEFAULT_CONFIG નિયુક્ત ઇનિશિયલાઇઝર સુધી વિસ્તરે છે.
હવે બધા ફીલ્ડ ડિફોલ્ટ મૂલ્યો પર સેટ છે. કોઈપણ ફીલ્ડ હજુ પણ સુધારી શકાય છે: */ config.server_port = 8081; httpd_handle_t server; esp_err_t err = httpd_start(&server, &config);
જ્યારે પણ કોઈ ચોક્કસ રૂપરેખાંકન માળખા માટે ડિફોલ્ટ ઇનિશિયલાઇઝર મેક્રો આપવામાં આવે ત્યારે તેનો ઉપયોગ કરવાની ભલામણ કરવામાં આવે છે.

૨.૧.૩ ખાનગી API
ચોક્કસ હેડર fileESP-IDF માંના s માં એવા API હોય છે જેનો ઉપયોગ ફક્ત ESP-IDF સોર્સ કોડમાં જ થવાનો હોય છે, અને એપ્લિકેશનો દ્વારા નહીં. આવા હેડર files માં ઘણીવાર તેમના નામ અથવા પાથમાં private અથવા esp_private હોય છે. અમુક ઘટકો, જેમ કે hal માં ફક્ત private API હોય છે. ખાનગી API ને નાના અથવા પેચ રીલીઝ વચ્ચે અસંગત રીતે દૂર કરી શકાય છે અથવા બદલી શકાય છે.

૨.૧.૪ ભૂતપૂર્વમાં ઘટકોampલે પ્રોજેક્ટ્સ
ESP-IDF ભૂતપૂર્વamples માં ESP-IDF API નો ઉપયોગ દર્શાવતા વિવિધ પ્રોજેક્ટ્સ છે. ભૂતપૂર્વમાં કોડ ડુપ્લિકેશન ઘટાડવા માટેampઓછા, થોડા સામાન્ય સહાયકો એવા ઘટકોની અંદર વ્યાખ્યાયિત કરવામાં આવે છે જેનો ઉપયોગ બહુવિધ ભૂતપૂર્વ દ્વારા થાય છેampલેસ

એસ્પ્રેસિફ સિસ્ટમ્સ

૧ દસ્તાવેજ પ્રતિસાદ સબમિટ કરો

રિલીઝ v5.0.9

પ્રકરણ 2. API સંદર્ભ
આમાં સ્થિત ઘટકોનો સમાવેશ થાય છે

દસ્તાવેજો / સંસાધનો

એસ્પ્રેસિફ સિસ્ટમ્સ ESP32 ડેવ કિટ ડેવલપમેન્ટ બોર્ડ [પીડીએફ] વપરાશકર્તા માર્ગદર્શિકા
ESP32 ડેવ કિટ ડેવલપમેન્ટ બોર્ડ, ESP32, ડેવ કિટ ડેવલપમેન્ટ બોર્ડ, કિટ ડેવલપમેન્ટ બોર્ડ, ડેવલપમેન્ટ બોર્ડ, બોર્ડ

સંદર્ભો

એક ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. જરૂરી ક્ષેત્રો ચિહ્નિત થયેલ છે *