ESP32 ডেভ কিটক ডেভেলপমেন্ট বোর্ড

পণ্য তথ্য

স্পেসিফিকেশন

  • পণ্য: ESP32
  • প্রোগ্রামিং গাইড: ESP-IDF
  • রিলিজ সংস্করণ: v5.0.9
  • প্রস্তুতকারক: Espressif সিস্টেম
  • প্রকাশের তারিখ: মে 16, 2025

পণ্য ব্যবহারের নির্দেশাবলী

1. শুরু করুন

ESP32 শুরু করার আগে, এর সাথে নিজেকে পরিচিত করুন
নিম্নলিখিত:

1.1 ভূমিকা

এর মৌলিক কার্যকারিতা এবং ক্ষমতা সম্পর্কে জানুন
ইএসপি৩২।

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 এসপ্রেসিফ সিস্টেমস ১৬ মে, ২০২৫

বিষয়বস্তুর সারণী

বিষয়বস্তুর সারণী

i

1 শুরু করুন

3

১.১ ভূমিকা .

১.২ আপনার যা প্রয়োজন।

১.২.১ হার্ডওয়্যার .

১.২.২ সফটওয়্যার .

১.৩ ইনস্টলেশন .

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

১.৩.২ ম্যানুয়াল ইনস্টলেশন। .

১.৪ আপনার প্রথম প্রকল্প তৈরি করুন। .

১.৫ ESP-IDF আনইনস্টল করুন। .

২ এপিআই রেফারেন্স

45

২.১ API কনভেনশন .

২.১.১ ত্রুটি পরিচালনা করা। .

২.১.২ কনফিগারেশন কাঠামো। .

২.১.৩ ব্যক্তিগত API গুলি .

২.১.৪ প্রাক্তনে উপাদানampলে প্রকল্পগুলি .

২.১.৫ API স্থিতিশীলতা .

২.২ অ্যাপ্লিকেশন প্রোটোকল .

2.2.1 ASIO পোর্ট। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

২.২.২ ইএসপি-মডবাস .

২.২.৩ ইএসপি-এমকিউটিটি .

২.২.৪ ইএসপি-টিএলএস .

২.২.৫ ESP HTTP ক্লায়েন্ট। .

২.২.৬ ইএসপি লোকাল কন্ট্রোল। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

২.২.৭ ইএসপি সিরিয়াল স্লেভ লিংক । .

২.২.৮ ESP x509 সার্টিফিকেট বান্ডেল । .

২.২.৯ HTTP সার্ভার .

২.২.১০ HTTPS সার্ভার .

২.২.১১ আইসিএমপি ইকো । .

২.২.১২ mDNS পরিষেবা। .

২.২.১৩ এমবেড টিএলএস .

২.২.১৪ আইপি নেটওয়ার্ক স্তর .

২.৩ ব্লুটুথ এপিআই। .

২.৩.১ ব্লুটুথ® কমন .

২.৩.২ ব্লুটুথ® কম শক্তি। .

২.৩.৩ ব্লুটুথ® ক্লাসিক .

২.৩.৪ কন্ট্রোলার এবং এইচসিআই .

২.৩.৫ ইএসপি-বিএলই-মেশ .

২.৩.৬ নিম্বল-ভিত্তিক হোস্ট এপিআই। .

২.৪ ত্রুটি কোড রেফারেন্স .

২.৫ নেটওয়ার্কিং এপিআই। .

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

২.৫.২ ইথারনেট . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899

২.৫.৩ থ্রেড .

i

২.৫.৪ ইএসপি-নেটিফ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ৯৪২ ২.৫.৫ আইপি নেটওয়ার্ক স্তর। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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)। . . . . . . . . . . . . . . . . . . . . . . . . . . . ১০০৪ ২.৬.৬ জিপিআইও এবং আরটিসি জিপিআইও। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১০০৮ ২.৬.৭ জেনারেল পারপাস টাইমার (জিপিটাইমার)। . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১০২৭ ২.৬.৮ আন্তঃ-সমন্বিত সার্কিট (I2C)। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১০৩৯ ২.৬.৯ ইন্টার-আইসি সাউন্ড (I2S)। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১০৫৬ ২.৬.১০ এলসিডি। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১০৯০ ২.৬.১১ LED কন্ট্রোল (LEDC)। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১১০৭ ২.৬.১২ মোটর কন্ট্রোল পালস উইথড মডুলেটর (MCPWM)। . . . . . . . . . . . . . . . . . . . . ১১২৬ ২.৬.১৩ পালস কাউন্টার (পিসিএনটি)। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১১৭৮ ২.৬.১৪ রিমোট কন্ট্রোল ট্রান্সসিভার (RMT)। . . . . . . . . . . . . . . . . . . . . . . . . . . . ১১৯৩ ২.৬.১৫ এসডি পুল-আপের প্রয়োজনীয়তা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১২২০ ২.৬.১৬ SDMMC হোস্ট ড্রাইভার। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১২২৩ ২.৬.১৭ এসডি এসপিআই হোস্ট ড্রাইভার। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১২২৯ ২.৬.১৮ SDIO কার্ড স্লেভ ড্রাইভার। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১২৩৪ ২.৬.১৯ সিগমা-ডেল্টা মডুলেশন (SDM)। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১২৪৪ ২.৬.২০ এসপিআই মাস্টার ড্রাইভার। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১২৪৯ ২.৬.২১ এসপিআই স্লেভ ড্রাইভার। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১২৭৪ ২.৬.২২ ESP32-WROOM-32SE (নিরাপদ উপাদান)। . . . . . . . . . . . . . . . . . . . . . . . . ১২৮১ ২.৬.২৩ টাচ সেন্সর। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১২৮২ ২.৬.২৪ টু-ওয়্যার অটোমোটিভ ইন্টারফেস (TWAI)। . . . . . . . . . . . . . . . . . . . . . . . . . ১২৯৯ ২.৬.২৫ ইউনিভার্সাল অ্যাসিনক্রোনাস রিসিভার/ট্রান্সমিটার (UART)। . . . . . . . . . . . . . . . . . ১৩১৭ ২.৭ প্রকল্প কনফিগারেশন। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৫২ ৫.১ ভূমিকা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৩৪২ ২.৭.২ প্রকল্প কনফিগারেশন মেনু। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৩৪২ ২.৭.৩ sdkconfig.defaults ব্যবহার করা হচ্ছে। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৩৪২ ২.৭.৪ Kconfig ফর্ম্যাটিং নিয়ম। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৩৪৩ ২.৭.৫ Kconfig বিকল্পের ব্যাকওয়ার্ড সামঞ্জস্য। . . . . . . . . . . . . . . . . . . . . . . . ১৩৪৩ ২.৭.৬ ​​কনফিগারেশন অপশন রেফারেন্স। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৩৪৩ ২.৮ প্রভিশনিং এপিআই। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৬৪৭ ২.৮.১ প্রোটোকল যোগাযোগ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৬৪৭ ২.৮.২ ইউনিফাইড প্রভিশনিং। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৬৬৫ ২.৮.৩ ওয়াই-ফাই প্রভিশনিং। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৬৬৯ ২.৯ স্টোরেজ এপিআই। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fileসিস্টেম সাপোর্ট . . 1703 2.9.4 NVS পার্টিশন জেনারেটর ইউটিলিটি . . . . . . . . . . . . . . . . . ১৭৪৪ ২.৯.৭ স্পিফস Fileসিস্টেম . fileসিস্টেম কম্পোনেন্ট . . . . . . . . . . . . . 1803 2.10.1 অ্যাপ ইমেজ ফরম্যাট . . ১৮১৭ ২.১০.৬ ইফিউজ ম্যানেজার।
ii

২.১০.৮ ইএসপি HTTPS OTA .view) . . . . . . ১৯৮৮ ২.১০.১৩ হিপ মেমোরি অ্যালোকেশন . . . ২০৫৮ ২.১০.২১ ওভার দ্য এয়ার আপডেটস (OTA) । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । ২০৭৩ ২.১০.২২ পারফরম্যান্স মনিটর । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । ২০৮৪ ২.১০.২৩ পাওয়ার ম্যানেজমেন্ট । . . . . . . . . . . . . . . 2087 2.10.24 POSIX থ্রেড সাপোর্ট . . 2121 2.10.29 হিমেম অ্যালোকেশন API . . . . . . . . . . . . . . . . . . 2161

3 হার্ডওয়্যার রেফারেন্স

2167

৩.১ চিপ সিরিজের তুলনা । .

৩.১.১ সম্পর্কিত নথিপত্র .

৪টি API গাইড

2171

৪.১ অ্যাপ্লিকেশন লেভেল ট্রেসিং লাইব্রেরি। .

4.1.1 ওভারview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171

৪.১.২ কার্যপ্রণালী। .

৪.১.৩ কনফিগারেশন বিকল্প এবং নির্ভরতা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2172

৪.১.৪ এই লাইব্রেরিটি কীভাবে ব্যবহার করবেন। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2173

৪.২ অ্যাপ্লিকেশন স্টার্টআপ ফ্লো। .

4.2.1 প্রথম এসtagই বুটলোডার .

২ সেকেন্ড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 . Files . ২২৯৫ ৪.৬.৮ উপাদানের প্রয়োজনীয়তা। ২৩০০ ৪.৬.১১ সিমেক ডিবাগিং। .ample কম্পোনেন্ট CMakeLists . . . . . . 2305 4.6.15 বুটলোডার তৈরি করা . 2306 4.6.18 উপাদান সহ পূর্বনির্মিত লাইব্রেরি ব্যবহার করা . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2307 4.6.19 কাস্টম CMake প্রকল্পগুলিতে ESP-IDF ব্যবহার করা . File গ্লোবিং এবং ইনক্রিমেন্টাল বিল্ডস . . . 2313 4.6.24 ESP-IDF GNU Make System থেকে মাইগ্রেট করা হচ্ছে .view . . . . . . . . . . . . . . . . . . . 2317 4.7.4 UART তে কোর ডাম্প প্রিন্ট করুন . . . 2322 4.8.4 RTC মেমোরিতে ডেটা লোড করা হচ্ছে .ampলে .view . . . . . . . 2324 4.9.4 ESP_ERROR_CHECK ম্যাক্রো . . . . . 2325 4.9.7 ESP_GOTO_ON_ERROR ম্যাক্রো . . . . . . . . . 2325 4.9.10 ম্যাক্রোস পরীক্ষা করুনamples . . . . . 2327 4.10 ESP-WIFI-MESH .view . . .
iv

৪.১০.৮ কর্মক্ষমতা . . ২৩৪৯ ৪.১১.৩ ব্লুটুথ ইভেন্টস।view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৫০ ৪.১২.২ প্যানিক হ্যান্ডলার। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৫০ ৪.১২.৩ ডাম্প এবং ব্যাকট্রেস নিবন্ধন করুন। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2351 4.12.4 GDB স্টাব। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2353 4.12.5 RTC ওয়াচডগ টাইমআউট। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2354 4.12.6 গুরু ধ্যানের ত্রুটি। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2354 4.12.7 অন্যান্য মারাত্মক ত্রুটি। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2356 4.13 ফ্ল্যাশ এনক্রিপশন। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ১৫২ ৫.১ ভূমিকা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2359 4.13.2 প্রাসঙ্গিক ইফিউজ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 ফ্ল্যাশ এনক্রিপশন এবং সিকিউর বুট। . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭১ ৪.১৩.১৩ উন্নত বৈশিষ্ট্য। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭১ ৪.১৩.১৪ প্রযুক্তিগত বিবরণ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭৩ ৪.১৪ হার্ডওয়্যার অ্যাবস্ট্রাকশন। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭৩ ৪.১৪.১ স্থাপত্য। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭৪ ৪.১৪.২ এলএল (নিম্ন স্তর) স্তর। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭৫ ৪.১৪.৩ HAL (হার্ডওয়্যার অ্যাবস্ট্রাকশন লেয়ার)। . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭৬ ৪.১৫ উচ্চ-স্তরের বাধা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭৭ ৪.১৫.১ ইন্টারাপ্ট লেভেল। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৩৭৭ ৪.১৫.২ নোট। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TAG ডিবাগিং . . . . . . . . . . . . . . . . . . . . . . . . . . . 2379 4.16.3 J নির্বাচন করা হচ্ছেTAG অ্যাডাপ্টার . . . . . . . . . 2380 4.16.6 ডিবাগার চালু করা হচ্ছে .amples . . . . . . 2391 4.16.10 সম্পর্কিত নথি .view . . . . . . . . . . . . . 2424 4.18 lwIP . ২৪৩০ ৪.১৮.২ বিএসডি সকেট এপিআই। .
v

৪.১৮.৭ কর্মক্ষমতা অপ্টিমাইজেশন । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । ২৪৩৯
৪.১৯.১ DRAM (ডেটা RAM) . . . . . . . . . . 2441 4.19.4 DROM (ফ্ল্যাশে সংরক্ষিত ডেটা) . . . 2443 4.20.3 ওপেনথ্রেড বর্ডার রাউটার .view . . . . . . . . . . . . . . . 2445 4.21.4 বাইনারি পার্টিশন টেবিল তৈরি করা হচ্ছে . . . . . . . . . . . . 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 কীভাবে সক্ষম করবেন .
vi

৪.২৫.১৩ ছবির দূরবর্তী স্বাক্ষরকরণ। . . . . . . . . . . 2484 4.25.16 নিরাপদ বুট এবং ফ্ল্যাশ এনক্রিপশন . . 2485 4.26 বহিরাগত RAM এর জন্য সমর্থন . . ২৪৮৭ ৪.২৬.৫ আরম্ভ করতে ব্যর্থ। .view . . ২৪৮৯ ৪.২৮.১ আইডিএফ ফ্রন্টএন্ড – idf.py . . . . . 2512 4.29.2 মাল্টি-ডিভাইস টেস্ট কেস .tage পরীক্ষার কেস। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2514 4.29.4 বিভিন্ন লক্ষ্যবস্তুর জন্য পরীক্ষা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2514 4.29.5 বিল্ডিং ইউনিট টেস্ট অ্যাপ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2515 4.29.6 রানিং ইউনিট টেস্ট। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2515 4.29.7 ক্যাশে ক্ষতিপূরণপ্রাপ্ত টাইমার সহ টাইমিং কোড। . . . . . . . . . . . . . . . . . . . . . . ২৫১৬ ৪.২৯.৮ মকস। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2517 4.30 লিনাক্সে ইউনিট টেস্টিং। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2519 4.30.1 এমবেডেড সফটওয়্যার পরীক্ষা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2519 4.30.2 লিনাক্স হোস্টে IDF ইউনিট পরীক্ষা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2520 4.31 ওয়াই-ফাই ড্রাইভার। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.1 ESP32 ওয়াই-ফাই বৈশিষ্ট্য তালিকা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 ওয়াই-ফাই প্রোগ্রামিং মডেল। . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.6 ESP32 ওয়াই-ফাই ইভেন্টের বিবরণ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৫২৩ ৪.৩১.৭ ESP32 ওয়াই-ফাই স্টেশনের সাধারণ পরিস্থিতি। . . . . . . . . . . . . . . . . . . . . . . . . . . 2526 4.31.8 ESP32 Wi-Fi AP সাধারণ পরিস্থিতি। . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.9 ESP32 ওয়াই-ফাই স্ক্যান। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.10 ESP32 ওয়াই-ফাই স্টেশন সংযোগের পরিস্থিতি। . . . . . . . . . . . . . . . . . . . . . . . . 2536 4.31.11 একাধিক AP পাওয়া গেলে ESP32 Wi-Fi স্টেশন সংযোগ করা হচ্ছে। . . . . . . . . . . . . 2543 4.31.12 ওয়াই-ফাই পুনঃসংযোগ করুন। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.13 ওয়াই-ফাই বীকন টাইমআউট। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.14 ESP32 ওয়াই-ফাই কনফিগারেশন। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৫৪৩ ৪.৩১.১৫ ওয়াই-ফাই ইজি কানেক্ট™ (ডিপিপি)। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.16 ওয়্যারলেস নেটওয়ার্ক ব্যবস্থাপনা। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.17 রেডিও রিসোর্স পরিমাপ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৫৪৯ ৪.৩১.১৮ দ্রুত BSS ট্রানজিশন। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2550 4.31.19 ESP32 ওয়াই-ফাই পাওয়ার-সেভিং মোড। . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৫৫০ ৪.৩১.২০ ESP32 ওয়াই-ফাই থ্রুপুট। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vii

৪.৩১.২১ ওয়াই-ফাই ৮০২১১ প্যাকেট পাঠান। . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.27 Wi-Fi QoS। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.28 Wi-Fi AMSDU। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ২৫৫৮ ৪.৩১.২৯ ওয়াই-ফাই ফ্র্যাগমেন্ট . . . . . . . . . . . . . . 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 .

৬.১.৩ অ্যাজুর আইওটি । .

৬.১.৪ গুগল আইওটি কোর । .

৬.১.৫ আলিয়ুন আইওটি। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

৬.১.৬ জয়লিংক আইওটি । .

৬.১.৭ টেনসেন্ট আইওটি । .

৬.১.৮ টেনসেন্টিয়ুন আইওটি । .

৬.১.৯ বাইদু আইওটি । .

৬.২ এসপ্রেসিফেন্স ফ্রেমওয়ার্কস । .

৬.২.১ এসপ্রেসিফ অডিও ডেভেলপমেন্ট ফ্রেমওয়ার্ক । .

৬.২.২ ইএসপি-সিএসআই .

৬.২.৩ এসপ্রেসিফ ডিএসপি লাইব্রেরি। .

৬.২.৪ ইএসপি-ওয়াইফাই-মেশ ডেভেলপমেন্ট ফ্রেমওয়ার্ক । .

৬.২.৫ ইএসপি-ডব্লিউএইচও .

৬.১.১ ইএসপি রেইনমেকার । .

৬.২.৭ ইএসপি-আইওটি-সমাধান । .

৬.২.৮ ইএসপি-প্রোটোকল। .

viii

৬.২.৯ ইএসপি-বিএসপি .

৭টি অবদান নির্দেশিকা

2615

৭.১ কিভাবে অবদান রাখবেন। .

৭.২ অবদান রাখার আগে। .

৭.৩ পুল রিকোয়েস্ট প্রক্রিয়া । .

৭.৪ আইনি অংশ .

৭.৫ সম্পর্কিত নথিপত্র । .

৭.৫.১ এসপ্রেসিফ আইওটি ডেভেলপমেন্ট ফ্রেমওয়ার্ক স্টাইল গাইড। .

৭.৫.২ ESP-IDF প্রকল্পের জন্য প্রি-কমিট হুক ইনস্টল করুন। .

৭.৫.৩ ডকুমেন্টিং কোড .

৭.৫.৪ এক্স তৈরি করা হচ্ছেampলেস . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2629

৭.৫.৫ এপিআই ডকুমেন্টেশন টেমপ্লেট । .

৭.৫.৬ অবদানকারী চুক্তি । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । ২৬৩২

৭.৫.৭ কপিরাইট হেডার নির্দেশিকা । .

৭.৫.৮ পাইটেস্ট গাইড সহ ESP-IDF পরীক্ষা। .

8 ESP-IDF সংস্করণ

2645

৮.১ রিলিজ।

৮.২ আমার কোন সংস্করণ দিয়ে শুরু করা উচিত? .

৮.৩ সংস্করণ পরিকল্পনা । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । ২৬৪৫

৮.৪ সাপোর্ট পিরিয়ডস । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । । ২৬৪৬

৮.৫ বর্তমান সংস্করণ পরীক্ষা করা হচ্ছে। .

৮.৬ গিট ওয়ার্কফ্লো । .

৮.৭ ESP-IDF আপডেট করা হচ্ছে .

৮.৭.১ স্থিতিশীল রিলিজে আপডেট করা হচ্ছে। .

৮.৭.২ একটি প্রি-রিলিজ সংস্করণে আপডেট করা হচ্ছে। .

৮.৭.৩ মাস্টার ব্রাঞ্চে আপডেট করা হচ্ছে। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649

৮.৭.৪ একটি রিলিজ শাখায় আপডেট করা হচ্ছে। .

9 সম্পদ

2651

৯.১ প্ল্যাটফর্মআইও .

৯.১.১ প্ল্যাটফর্মআইও কী? .

৯.১.২ ইনস্টলেশন। .

৯.১.৩ কনফিগারেশন। .

৯.১.৪ টিউটোরিয়াল। .

৯.১.৫ প্রকল্পের পূর্ববর্তী অংশampলেস . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652

৯.১.৬ পরবর্তী পদক্ষেপ .

৯.২ দরকারী লিঙ্ক .

১০টি কপিরাইট এবং লাইসেন্স

2653

১০.১ সফটওয়্যার কপিরাইট .

১০.১.১ ফার্মওয়্যার উপাদান .

১০.১.২ ডকুমেন্টেশন .

১০.২ রম সোর্স কোড কপিরাইট। .

10.3 Xtensa libhal MIT লাইসেন্স। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

10.4 TinyBasic Plus MIT লাইসেন্স। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

১০.৫ টিজেপিজিডিইসি লাইসেন্স । .

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 কোর · আল্ট্রা লো পাওয়ার কো-প্রসেসর · একাধিক পেরিফেরাল
৪০ ন্যানোমিটার প্রযুক্তি দ্বারা চালিত, 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

অধ্যায় ১. শুরু করুন

চিত্র ১: ESP32-DevKitS – সামনের দিকে

এসপ্রেসিফ সিস্টেমস

চিত্র ২: ESP32-DevKitS-R – সামনের ৫
ডকুমেন্ট ফিডব্যাক জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন

কী কম্পোনেন্ট স্প্রিং পিন ২.৫৪ মিমি ফিমেল হেডার
USB-থেকে-UART ব্রিজ LDO মাইক্রো-USB সংযোগকারী/মাইক্রো USB পোর্ট EN বোতাম বুট বোতাম
পাওয়ার অন এলইডি

বর্ণনা মডিউলটিতে ক্লিক করুন। পিনগুলি মডিউলের ক্যাস্টেলেটেড গর্তে ফিট হবে। এই মহিলা হেডারগুলি এই বোর্ডে মাউন্ট করা মডিউলের পিনের সাথে সংযুক্ত। মহিলা হেডারগুলির বিবরণের জন্য, অনুগ্রহ করে হেডার ব্লকগুলি দেখুন। সিঙ্গেল-চিপ USB থেকে UART ব্রিজ 3 Mbps পর্যন্ত স্থানান্তর হার প্রদান করে।
৫ ভোল্ট থেকে ৩.৩ ভোল্ট কম ড্রপআউট ভলিউমtagই রেগুলেটর (এলডিও)।
USB ইন্টারফেস। বোর্ডের জন্য পাওয়ার সাপ্লাই এবং কম্পিউটার এবং বোর্ডের মধ্যে যোগাযোগের ইন্টারফেস।
রিসেট বোতাম।
ডাউনলোড বোতাম। বুট চেপে ধরে EN টিপলে সিরিয়াল পোর্টের মাধ্যমে ফার্মওয়্যার ডাউনলোড করার জন্য ফার্মওয়্যার ডাউনলোড মোড শুরু হয়।
যখন USB বা পাওয়ার সাপ্লাই বোর্ডের সাথে সংযুক্ত থাকে তখন চালু হয়।

কিভাবে একটি বোর্ড ফ্ল্যাশ করবেন আপনার ESP32-DevKitS(-R) চালু করার আগে, দয়া করে নিশ্চিত করুন যে এটি ভালো অবস্থায় আছে এবং কোনও ক্ষতির লক্ষণ নেই।
প্রয়োজনীয় হার্ডওয়্যার · আপনার পছন্দের একটি ESP32 মডিউল · USB 2.0 কেবল (স্ট্যান্ডার্ড-A থেকে মাইক্রো-B) · উইন্ডোজ, লিনাক্স, অথবা ম্যাকওএস চালিত কম্পিউটার
হার্ডওয়্যার সেটআপ নিম্নলিখিত ধাপগুলি অনুসরণ করে আপনার ESP32-DevKitS(-R)-এ আপনার পছন্দের একটি মডিউল মাউন্ট করুন:
· আপনার মডিউলটি ESP32-DevKitS(-R) বোর্ডে আলতো করে রাখুন। নিশ্চিত করুন যে আপনার মডিউলের ক্যাস্টেলেটেড গর্তগুলি বোর্ডের স্প্রিং পিনের সাথে সারিবদ্ধ।
· আপনার মডিউলটি বোর্ডে চাপুন যতক্ষণ না এটি ক্লিক করে। · সমস্ত স্প্রিং পিন ক্যাস্টেলেটেড গর্তে ঢোকানো হয়েছে কিনা তা পরীক্ষা করুন। যদি কিছু ভুলভাবে সারিবদ্ধ স্প্রিং পিন থাকে,
টুইজার দিয়ে ক্যাস্টেলেটেড গর্তে রাখুন।
সফ্টওয়্যার সেটআপ
পছন্দের পদ্ধতি ESP-IDF ডেভেলপমেন্ট ফ্রেমওয়ার্ক ESP32-DevKitS(-R) এ বাইনারি ফ্ল্যাশ করার একটি পছন্দের উপায় প্রদান করে। অনুগ্রহ করে শুরু করুন এ যান, যেখানে বিভাগ ইনস্টলেশন আপনাকে দ্রুত ডেভেলপমেন্ট পরিবেশ সেট আপ করতে এবং তারপর একটি অ্যাপ্লিকেশন ফ্ল্যাশ করতে সাহায্য করবে।ampআপনার ESP32-DevKitS(-R) এ le দিন।
বিকল্প পদ্ধতি বিকল্প হিসেবে, উইন্ডোজ ব্যবহারকারীরা ফ্ল্যাশ ডাউনলোড টুল ব্যবহার করে বাইনারি ফ্ল্যাশ করতে পারেন। শুধু এটি ডাউনলোড করুন, আনজিপ করুন এবং ডক ফোল্ডারের ভিতরের নির্দেশাবলী অনুসরণ করুন।
দ্রষ্টব্য: ১. বাইনারি ফ্ল্যাশ করা files, ESP32 কে ফার্মওয়্যার ডাউনলোড মোডে সেট করা উচিত। এটি স্বয়ংক্রিয়ভাবে ফ্ল্যাশ টুল দ্বারা করা যেতে পারে, অথবা বুট বোতামটি ধরে রেখে EN বোতামটি ট্যাপ করে করা যেতে পারে। 2. বাইনারি ফ্ল্যাশ করার পরে files, Flash Download Tool আপনার ESP32 মডিউলটি পুনরায় চালু করে এবং ডিফল্টরূপে ফ্ল্যাশ করা অ্যাপ্লিকেশনটি বুট করে।

বোর্ডের মাত্রা, বিষয়বস্তু এবং প্যাকেজিং

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন চিত্র ৩: ESP32-DevKitS বোর্ডের মাত্রা – পিছনে

এসপ্রেসিফ সিস্টেমস

চিত্র ৪: ESP32-DevKitS-R বোর্ডের মাত্রা – পিছনে ৭
ডকুমেন্ট ফিডব্যাক জমা দিন

রিলিজ 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) এর উপাদান এবং তাদের আন্তঃসংযোগ দেখানো হয়েছে।

চিত্র ৫: ESP32-DevKitS(-R) (বড় করতে ক্লিক করুন)
পাওয়ার সাপ্লাই বিকল্প বোর্ডে পাওয়ার সরবরাহের জন্য তিনটি পারস্পরিকভাবে একচেটিয়া উপায় রয়েছে: · মাইক্রো USB পোর্ট, ডিফল্ট পাওয়ার সাপ্লাই · 5V এবং GND হেডার পিন · 3V3 এবং GND হেডার পিন
প্রথম বিকল্পটি ব্যবহার করার পরামর্শ দেওয়া হচ্ছে: মাইক্রো USB পোর্ট।

এসপ্রেসিফ সিস্টেমস

.

লেবেল সিগন্যাল

L1 3V3 VDD 3V3

L2 EN চিপ_পিইউ

L3 ভিপি SENSOR_VP

L4 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 সিএমডি এসডি_সিএমডি

L19 5V

বাহ্যিক 5V

আর১ জিএনডি জিএনডি

R2 23

জিপিআইও 23

R3 22

জিপিআইও 22

আর৪ টিএক্স ইউ০টিএক্সডি

আর৫ আরএক্স ইউ০আরএক্সডি

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

আর১৭ ডি১ এসডি_ডেটা১

আর১৭ ডি১ এসডি_ডেটা১

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 হল Espressif দ্বারা উত্পাদিত একটি ESP32-MINI-1(1U)-ভিত্তিক ডেভেলপমেন্ট বোর্ড। সহজে ইন্টারফেসিংয়ের জন্য বেশিরভাগ 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

অধ্যায় ১. শুরু করুন

চিত্র ৬: ESP32-DevKitM-1 – সামনের দিকে

মূল উপাদান অন-বোর্ড মডিউল
৫ ভোল্ট থেকে ৩.৩ ভোল্ট এলডিও বুট বোতাম
রিসেট বোতাম মাইক্রো-ইউএসবি পোর্ট
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) · উইন্ডোজ, লিনাক্স, অথবা ম্যাকওএস চালিত কম্পিউটার
সফটওয়্যার সেটআপ অনুগ্রহ করে শুরু করুন বিভাগে যান, যেখানে বিভাগ ইনস্টলেশন আপনাকে দ্রুত ডেভেলপমেন্ট পরিবেশ সেট আপ করতে এবং তারপর একটি অ্যাপ্লিকেশন ফ্ল্যাশ করতে সাহায্য করবে।ampআপনার ESP32-DevKitM-1 সম্মুখে।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
মনোযোগ: ২ ডিসেম্বর, ২০২১-এর আগে তৈরি ESP32-DevKitM-1 বোর্ডগুলিতে একটি সিঙ্গেল কোর মডিউল ইনস্টল করা আছে। আপনার কোন মডিউলটি আছে তা যাচাই করতে, অনুগ্রহ করে PCN-2021-021-এ মডিউল মার্কিং তথ্য পরীক্ষা করুন। যদি আপনার বোর্ডে একটি সিঙ্গেল কোর মডিউল ইনস্টল করা থাকে, তাহলে আপনার অ্যাপ্লিকেশনগুলি ফ্ল্যাশ করার আগে মেনুকনফিগে সিঙ্গেল কোর মোড (CONFIG_FREERTOS_UNICORE) সক্ষম করুন।
হার্ডওয়্যার রেফারেন্স ব্লক ডায়াগ্রাম নীচের একটি ব্লক ডায়াগ্রামে ESP32-DevKitM-1 এর উপাদান এবং তাদের আন্তঃসংযোগ দেখানো হয়েছে।

চিত্র ৭: 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 V পাওয়ার সাপ্লাই

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

জিপিআইও২, এডিসি২_সিএইচ২, টাচ২, আরটিসি_জিপিআইও১২, এইচএসপিআইডব্লিউপি,

এইচএস২_ডেটা০, এসডি_ডেটা০

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 এর মাধ্যমে ESP-IDF ইনস্টল করার পরামর্শ দিচ্ছি।
· Eclipse প্লাগইন · 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ক্যাশে ডিরেক্টরিতে s %userprofile%. এসপ্রেসিফ
অফলাইন ইনস্টলারের জন্য কোনও নেটওয়ার্ক সংযোগের প্রয়োজন হয় না। ইনস্টলারটিতে Git For Windows সহ সমস্ত প্রয়োজনীয় নির্ভরতা রয়েছে।
ইনস্টলেশনের উপাদান ইনস্টলার নিম্নলিখিত উপাদানগুলি স্থাপন করে:
· এমবেডেড পাইথন · ক্রস-কম্পাইলার · ওপেনওসিডি · সিমেক এবং নিনজা বিল্ড টুলস · ইএসপি-আইডিএফ
ইনস্টলারটি ESP-IDF সহ বিদ্যমান ডিরেক্টরিটি পুনঃব্যবহারের অনুমতি দেয়। প্রস্তাবিত ডিরেক্টরিটি হল %userprofile%ডেস্কটোপেস্প-আইডিএফ যেখানে %ইউজারপ্রোfile% হল আপনার হোম ডিরেক্টরি।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
ESP-IDF পরিবেশ চালু করা ইনস্টলেশন প্রক্রিয়া শেষে আপনি Run ESP-IDF PowerShell Environment অথবা Run ESP-IDF Command Prompt (cmd.exe) বিকল্পটি দেখতে পারেন। ইনস্টলারটি নির্বাচিত প্রম্পটে ESP-IDF পরিবেশ চালু করবে। ESP-IDF PowerShell পরিবেশ চালান:

চিত্র ৮: 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 এর বিভিন্ন সংস্করণের সাথে কাজ করার জন্য), আপনার কাছে সেগুলি ব্যবহারের দুটি বিকল্প রয়েছে:
১. ESP-IDF টুলস ইনস্টলার দ্বারা তৈরি শর্টকাটের একটি কপি তৈরি করুন এবং নতুন শর্টকাটের ওয়ার্কিং ডিরেক্টরিটি আপনি যে ESP-IDF ডিরেক্টরিটি ব্যবহার করতে চান তাতে পরিবর্তন করুন।
২. বিকল্পভাবে, cmd.exe চালান, তারপর আপনি যে ESP-IDF ডিরেক্টরিটি ব্যবহার করতে চান তাতে যান এবং export.bat চালান। মনে রাখবেন যে পূর্ববর্তী বিকল্পের বিপরীতে, এই পদ্ধতিতে PATH-তে Python এবং Git উপস্থিত থাকা প্রয়োজন। যদি আপনি Python সম্পর্কিত ত্রুটি পান বা Git খুঁজে না পান, তাহলে প্রথম বিকল্পটি ব্যবহার করুন।
ESP-IDF-এর প্রথম পদক্ষেপ এখন যেহেতু সমস্ত প্রয়োজনীয়তা পূরণ করা হয়েছে, তাই পরবর্তী বিষয় আপনাকে আপনার প্রথম প্রকল্পটি কীভাবে শুরু করবেন সে সম্পর্কে নির্দেশনা দেবে।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন চিত্র ৯: ESP-IDF পাওয়ারশেল

চিত্র ১০: ESP-IDF কমান্ড প্রম্পট (cmd.exe) রান করে ESP-IDF টুলস সেটআপ উইজার্ড সম্পূর্ণ করা

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন

চিত্র ১১: ESP-IDF কমান্ড প্রম্পট

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
এই নির্দেশিকাটি আপনাকে ESP-IDF ব্যবহারের প্রথম ধাপগুলিতে সাহায্য করবে। ESP32-তে একটি নতুন প্রকল্প শুরু করতে এবং ডিভাইস আউটপুট তৈরি, ফ্ল্যাশ এবং পর্যবেক্ষণ করতে এই নির্দেশিকাটি অনুসরণ করুন। দ্রষ্টব্য: যদি আপনি এখনও ESP-IDF ইনস্টল না করে থাকেন, তাহলে অনুগ্রহ করে ইনস্টলেশনে যান এবং এই নির্দেশিকাটি ব্যবহার করার জন্য প্রয়োজনীয় সমস্ত সফ্টওয়্যার পেতে নির্দেশিকাটি অনুসরণ করুন।

একটি প্রকল্প শুরু করুন এখন আপনি ESP32 এর জন্য আপনার আবেদন প্রস্তুত করতে প্রস্তুত। আপনি getstarted/hello_world প্রকল্প দিয়ে শুরু করতে পারেন ex থেকেampইএসপি-আইডিএফ-এ লেস ডিরেক্টরি।
গুরুত্বপূর্ণ: ESP-IDF বিল্ড সিস্টেম ESP-IDF বা প্রকল্পের পথে স্পেস সমর্থন করে না।
প্রজেক্টটি get-started/hello_world ~/esp ডিরেক্টরিতে কপি করুন: cd %userprofile%esp xcopy /e /i %IDF_PATH%exampলেসগেট-স্টার্টেডহ্যালো_ওয়ার্ল্ডহ্যালো_ওয়ার্ল্ড
দ্রষ্টব্য: প্রাক্তনের একটি পরিসর রয়েছেampপ্রাক্তন মধ্যে লে প্রকল্পampইএসপি-আইডিএফ-এ লেস ডিরেক্টরি। আপনি উপরে উপস্থাপিত অনুরূপভাবে যে কোনো প্রকল্প অনুলিপি এবং এটি চালাতে পারেন. প্রাক্তন নির্মাণ করাও সম্ভব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 boardns সিরিয়াল পোর্টের নাম দিয়ে প্রতিস্থাপন করুন। আপনি BAUD-কে আপনার প্রয়োজনীয় baud রেট দিয়ে প্রতিস্থাপন করে ফ্ল্যাশার baud রেটও পরিবর্তন করতে পারেন। ডিফল্ট 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 কে ফার্মওয়্যার ডাউনলোড মোডে বুট করবে। একটি প্রাক্তন হিসাবেample, ESP32 DevKitC ডেভেলপমেন্ট বোর্ডের স্কিম্যাটিক পরীক্ষা করুন।
সাধারণভাবে, অফিসিয়াল esp-idf ডেভেলপমেন্ট বোর্ডগুলির সাথে আপনার কোনও সমস্যা হওয়ার কথা নয়। তবে, esptool.py নিম্নলিখিত ক্ষেত্রে আপনার হার্ডওয়্যার স্বয়ংক্রিয়ভাবে রিসেট করতে সক্ষম নয়:
· আপনার হার্ডওয়্যারে GPIO0 এবং CHIP_PU এর সাথে DTR এবং RTS লাইন সংযুক্ত নেই · DTR এবং RTS লাইনগুলি ভিন্নভাবে কনফিগার করা হয়েছে · এরকম কোনও সিরিয়াল নিয়ন্ত্রণ লাইন নেই।
আপনার হার্ডওয়্যারের ধরণের উপর নির্ভর করে, আপনার ESP32 বোর্ডটিকে ম্যানুয়ালি ফার্মওয়্যার ডাউনলোড মোডে (রিসেট) রাখাও সম্ভব হতে পারে।
· Espressif দ্বারা উত্পাদিত ডেভেলপমেন্ট বোর্ডগুলির জন্য, এই তথ্য সংশ্লিষ্ট শুরু করার নির্দেশিকা বা ব্যবহারকারী নির্দেশিকাগুলিতে পাওয়া যাবে। উদাহরণস্বরূপ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) বৈশিষ্ট্য: ওয়াইফাই, বিটি, ডুয়াল কোর, কোডিং স্কিম কোনটিই নয় ক্রিস্টাল হল 40MHz MAC: 24:0a:c4:05:b9:14 স্টাব আপলোড করা হচ্ছে… স্টাব চলছে… স্টাব চলছে… বড রেট 460800 এ পরিবর্তন করা হচ্ছে।
(পরবর্তী পৃষ্ঠায় চলবে)

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
(পূর্ববর্তী পৃষ্ঠা থেকে অব্যাহত) ফ্ল্যাশ আকার কনফিগার করা হচ্ছে… ৩০৭২ বাইটকে ১০৩ এ সংকুচিত করা হয়েছে… ০x০০০০৮০০০ এ লেখা… (১০০%) ০.০ সেকেন্ডে ০x০০০০৮০০০ এ ৩০৭২ বাইট (১০৩ সংকুচিত) লিখেছেন (কার্যকর ৫৯৬২.৮ kbit/s)… ডেটার হ্যাশ যাচাই করা হয়েছে। ১৫৪০৮ এ সংকুচিত করা হয়েছে… ০x০০০০১০০০ এ লেখা… (১০০%) ০.৪ সেকেন্ডে ০x০০০০১০০০ এ ২৬০৯৬ বাইট (১৫৪০৮ সংকুচিত) লিখেছেন (কার্যকর ৫৪৬.৭ kbit/s)… ডেটার হ্যাশ যাচাই করা হয়েছে। ১৪৭১০৪ বাইট সংকুচিত করে ৭৭৩৬৪ করা হয়েছে… ০x০০১০০০০০০ এ লেখা… (২০%) ০x০০১৪০০০ এ লেখা… (৪০%) ০x০০১৮০০০ এ লেখা… (৬০%) ০x০০১c০০০ এ লেখা… (৮০%) ০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 চালু করা হচ্ছে ১১৫২০০ —– প্রস্থান করুন: Ctrl+] | মেনু: Ctrl+T | সাহায্য: Ctrl+T এর পরে Ctrl+H –ets ৮ জুন ২০১৬ ০০:২২:৫৭
প্রথম: 0x1 (POWERON_RESET), বুট: 0x13 (SPI_FAST_FLASH_BOOT) ets ৮ জুন ২০১৬ ০০:২২:৫৭ …
স্টার্টআপ এবং ডায়াগনস্টিক লগগুলি উপরে স্ক্রোল করার পরে, আপনি অ্যাপ্লিকেশন দ্বারা oHello world! প্রিন্ট করা দেখতে পাবেন।
… হ্যালো বিশ্ব! ১০ সেকেন্ডের মধ্যে পুনরায় চালু হচ্ছে… এটি esp32 চিপ যার মধ্যে ২টি CPU কোর(গুলি), WiFi/BT/BLE, সিলিকন রিভিশন ১, ২MB এক্সটার্নাল ফ্ল্যাশ রয়েছে। সর্বনিম্ন ফ্রি হিপ সাইজ: ২৯৮৯৬৮ বাইট। ৯ সেকেন্ডের মধ্যে পুনরায় চালু হচ্ছে… ৮ সেকেন্ডের মধ্যে পুনরায় চালু হচ্ছে… ৭ সেকেন্ডের মধ্যে পুনরায় চালু হচ্ছে…
IDF মনিটর থেকে প্রস্থান করতে শর্টকাট Ctrl+] ব্যবহার করুন।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
যদি আপলোডের কিছুক্ষণ পরেই IDF মনিটর ব্যর্থ হয়, অথবা, উপরের বার্তাগুলির পরিবর্তে, আপনি যদি নীচের দেওয়া বার্তাগুলির মতো এলোমেলো আবর্জনা দেখতে পান, তাহলে আপনার বোর্ড সম্ভবত 26 MHz স্ফটিক ব্যবহার করছে। বেশিরভাগ ডেভেলপমেন্ট বোর্ড ডিজাইন 40 MHz ব্যবহার করে, তাই ESP-IDF এই ফ্রিকোয়েন্সিটিকে ডিফল্ট মান হিসেবে ব্যবহার করে।

যদি আপনার এই ধরনের সমস্যা হয়, তাহলে নিম্নলিখিতগুলি করুন: ১. মনিটর থেকে বেরিয়ে আসুন। ২. মেনুকনফিগ-এ ফিরে যান। ৩. কম্পোনেন্ট কনফিগারেশন > হার্ডওয়্যার সেটিংস > মেইন এক্সটাল কনফিগারেশন > মেইন এক্সটাল ফ্রিকোয়েন্সিতে যান, তারপর CONFIG_XTAL_FREQ_SEL কে ২৬ মেগাহার্টজ-এ পরিবর্তন করুন। ৪. এর পরে, অ্যাপ্লিকেশনটি আবার তৈরি করুন এবং ফ্ল্যাশ করুন।
ESP-IDF এর বর্তমান সংস্করণে, ESP32 দ্বারা সমর্থিত প্রধান XTAL ফ্রিকোয়েন্সিগুলি নিম্নরূপ:
· ২৬ মেগাহার্টজ · ৪০ মেগাহার্টজ
দ্রষ্টব্য: আপনি idf.py -p PORT ফ্ল্যাশ মনিটর চালিয়ে এক ধাপে বিল্ডিং, ফ্ল্যাশিং এবং মনিটরিং একত্রিত করতে পারেন।
আরও দেখুন: · সহজ শর্টকাট এবং IDF মনিটর ব্যবহারের বিস্তারিত তথ্যের জন্য IDF মনিটর। · idf.py কমান্ড এবং বিকল্পগুলির সম্পূর্ণ রেফারেন্সের জন্য idf.py।
ESP32 দিয়ে শুরু করার জন্য আপনার এটুকুই দরকার! এখন আপনি অন্য কিছু এক্স চেষ্টা করার জন্য প্রস্তুতampকম, অথবা সরাসরি আপনার নিজস্ব অ্যাপ্লিকেশন তৈরিতে যান।
গুরুত্বপূর্ণ: কিছু প্রাক্তনampESP32 তে প্রয়োজনীয় হার্ডওয়্যার অন্তর্ভুক্ত না হওয়ায় এটি সমর্থিত হবে না। যদি একটি ex তৈরি করা হয়ampআচ্ছা, অনুগ্রহ করে README চেক করুন। file সমর্থিত লক্ষ্যমাত্রা টেবিলের জন্য। যদি এটি ESP32 লক্ষ্য সহ উপস্থিত থাকে, অথবা টেবিলটি আদৌ বিদ্যমান না থাকে, তাহলে প্রাক্তনample ESP32 তে কাজ করবে।
অতিরিক্ত টিপস
অনুমতি সংক্রান্ত সমস্যা /dev/ttyUSB0 কিছু লিনাক্স ডিস্ট্রিবিউশনের ক্ষেত্রে, ESP32 ফ্ল্যাশ করার সময় আপনি "Failed to open port /dev/ttyUSB0" ত্রুটি বার্তা পেতে পারেন। বর্তমান ব্যবহারকারীকে ডায়ালআউট গ্রুপে যুক্ত করে এটি সমাধান করা যেতে পারে।
পাইথন সামঞ্জস্য ESP-IDF পাইথন 3.7 বা তার পরবর্তী সংস্করণ সমর্থন করে। এই প্রয়োজনীয়তা পূরণ করে আপনার অপারেটিং সিস্টেমকে সাম্প্রতিক সংস্করণে আপগ্রেড করার পরামর্শ দেওয়া হচ্ছে। অন্যান্য বিকল্পগুলির মধ্যে রয়েছে উৎস থেকে পাইথন ইনস্টল করা অথবা পাইনভের মতো পাইথন সংস্করণ পরিচালনা সিস্টেম ব্যবহার করা।
বোর্ড সাপোর্ট প্যাকেজ দিয়ে শুরু করুন। কিছু ডেভেলপমেন্ট বোর্ডে প্রোটোটাইপিং দ্রুত করার জন্য, আপনি বোর্ড সাপোর্ট প্যাকেজ (BSP) ব্যবহার করতে পারেন, যা একটি নির্দিষ্ট বোর্ডের ইনিশিয়ালাইজেশনকে কয়েকটি ফাংশন কলের মতো সহজ করে তোলে।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন

একটি BSP সাধারণত ডেভেলপমেন্ট বোর্ডে প্রদত্ত সমস্ত হার্ডওয়্যার উপাদান সমর্থন করে। পিনআউট সংজ্ঞা এবং প্রাথমিককরণ ফাংশন ছাড়াও, একটি BSP সেন্সর, ডিসপ্লে, অডিও কোডেক ইত্যাদির মতো বহিরাগত উপাদানগুলির জন্য ড্রাইভার সরবরাহ করে। BSP গুলি IDF কম্পোনেন্ট ম্যানেজারের মাধ্যমে বিতরণ করা হয়, তাই এগুলি IDF কম্পোনেন্ট রেজিস্ট্রিতে পাওয়া যেতে পারে। এখানে একটি উদাহরণ দেওয়া হলampআপনার প্রকল্পে ESP-WROVER-KIT BSP কীভাবে যুক্ত করবেন তার একটি তালিকা: idf.py add-dependency esp_wrover_kit
আরো প্রাক্তনampBSP ব্যবহারের কিছু তথ্য BSP ex-এ পাওয়া যাবেampলেস ফোল্ডার।
সম্পর্কিত ডকুমেন্টস উন্নত ব্যবহারকারীদের জন্য যারা ইনস্টল প্রক্রিয়াটি কাস্টমাইজ করতে চান: · উইন্ডোজে ESP-IDF টুল আপডেট করা · ESP32 এর সাথে সিরিয়াল সংযোগ স্থাপন করা · Eclipse Plugin · VSCode এক্সটেনশন · IDF মনিটর
উইন্ডোজে ESP-IDF টুল আপডেট করা হচ্ছে
স্ক্রিপ্ট ব্যবহার করে ESP-IDF টুল ইনস্টল করুন। উইন্ডোজ কমান্ড প্রম্পট থেকে, ESPIDF ইনস্টল করা ডিরেক্টরিতে যান। তারপর চালান:
install.bat
Powershell এর জন্য, 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 এক্সপোর্ট.ব্যাট
বিকল্পভাবে, Powershell-এ যেখানে আপনাকে ESP-IDF ব্যবহার করতে হবে, সেই ডিরেক্টরিতে যান যেখানে ESP-IDF ইনস্টল করা আছে, তারপর export.ps1 এক্সিকিউট করুন:
সিডি ~/esp/esp-idf এক্সপোর্ট.ps1
এটি সম্পন্ন হলে, এই কমান্ড প্রম্পটে সরঞ্জামগুলি উপলব্ধ হবে।
ESP32 এর সাথে সিরিয়াল সংযোগ স্থাপন করুন এই বিভাগটি ESP32 এবং পিসির মধ্যে সিরিয়াল সংযোগ স্থাপনের নির্দেশনা প্রদান করে।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
ESP32 কে পিসিতে সংযুক্ত করুন USB কেবল ব্যবহার করে ESP32 বোর্ডটিকে পিসিতে সংযুক্ত করুন। যদি ডিভাইস ড্রাইভার স্বয়ংক্রিয়ভাবে ইনস্টল না হয়, তাহলে আপনার ESP32 বোর্ডে (অথবা এক্সটার্নাল কনভার্টার ডংলে) USB থেকে সিরিয়াল কনভার্টার চিপ সনাক্ত করুন, ইন্টারনেটে ড্রাইভার অনুসন্ধান করুন এবং সেগুলি ইনস্টল করুন। Espressif দ্বারা উৎপাদিত বেশিরভাগ ESP32 বোর্ডে ইনস্টল করা USB থেকে সিরিয়াল কনভার্টার চিপের তালিকা এবং ড্রাইভারগুলির লিঙ্ক নীচে দেওয়া হল:
· CP210x: CP210x USB থেকে UART ব্রিজ VCP ড্রাইভার · FTDI: FTDI ভার্চুয়াল COM পোর্ট ড্রাইভার নির্দিষ্ট USB থেকে সিরিয়াল কনভার্টার চিপের জন্য বোর্ড ব্যবহারকারী নির্দেশিকাটি পরীক্ষা করে দেখুন। উপরের ড্রাইভারগুলি মূলত রেফারেন্সের জন্য। স্বাভাবিক পরিস্থিতিতে, ড্রাইভারগুলি একটি অপারেটিং সিস্টেমের সাথে সংযুক্ত হওয়া উচিত এবং বোর্ডটিকে পিসিতে সংযুক্ত করার পরে স্বয়ংক্রিয়ভাবে ইনস্টল করা উচিত।
উইন্ডোজে পোর্ট চেক করুন উইন্ডোজ ডিভাইস ম্যানেজারে চিহ্নিত 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 High Sierra (10.13) এর জন্য, আপনাকে স্পষ্টভাবে ড্রাইভারগুলিকে লোড করার অনুমতি দিতে হতে পারে। System Preferences -> Security & Privacy -> General খুলুন এবং এখানে oSystem Software সম্পর্কে কোনও বার্তা দেখানো হয়েছে কিনা তা পরীক্ষা করুন। developer lp যেখানে ডেভেলপারের নাম Silicon Labs বা FTDI।

লিনাক্সে ডায়ালআউটে ব্যবহারকারী যোগ করা বর্তমানে লগ করা ব্যবহারকারীর USB এর মাধ্যমে সিরিয়াল পোর্টটি পড়ার এবং লেখার অ্যাক্সেস থাকা উচিত। বেশিরভাগ লিনাক্স ডিস্ট্রিবিউশনে, নিম্নলিখিত কমান্ডের সাহায্যে ব্যবহারকারীকে ডায়ালআউট গ্রুপে যুক্ত করে এটি করা হয়:
sudo usermod -a -G ডায়ালআউট $USER
আর্ক লিনাক্সে এটি নিম্নলিখিত কমান্ডের সাহায্যে ব্যবহারকারীকে uucp গ্রুপে যুক্ত করে করা হয়:
sudo usermod -a -G uucp $USER
সিরিয়াল পোর্টের জন্য পঠন এবং লেখার অনুমতি সক্ষম করতে আপনি পুনরায় লগইন করেছেন তা নিশ্চিত করুন৷
সিরিয়াল সংযোগ যাচাই করুন এখন সিরিয়াল সংযোগটি চালু আছে কিনা তা যাচাই করুন। ESP32 রিসেট করার পরে টার্মিনালে কোনও আউটপুট পাওয়া যাচ্ছে কিনা তা পরীক্ষা করে আপনি একটি সিরিয়াল টার্মিনাল প্রোগ্রাম ব্যবহার করে এটি করতে পারেন। ESP32-তে ডিফল্ট কনসোল বড রেট হল 115200।
এই উদাহরণে উইন্ডোজ এবং লিনাক্সampআমরা PuTTY SSH ক্লায়েন্ট ব্যবহার করব যা উইন্ডোজ এবং লিনাক্স উভয়ের জন্য উপলব্ধ। আপনি অন্যান্য সিরিয়াল প্রোগ্রাম ব্যবহার করতে পারেন এবং নীচের মত যোগাযোগের প্যারামিটার সেট করতে পারেন। টার্মিনাল চালান এবং চিহ্নিত সিরিয়াল পোর্ট সেট করুন। Baud রেট = 115200 (প্রয়োজনে, ব্যবহৃত চিপের ডিফল্ট baud রেট পরিবর্তন করুন), ডেটা বিট = 8, স্টপ বিট = 1, এবং প্যারিটি = N। নীচে উদাহরণ দেওয়া হলampউইন্ডোজ এবং লিনাক্সে পোর্ট এবং ট্রান্সমিশন প্যারামিটার (সংক্ষেপে 115200-8-1-N হিসাবে বর্ণনা করা হয়েছে) সেট করার স্ক্রিনশট। উপরের ধাপগুলিতে আপনি যে সিরিয়াল পোর্টটি চিহ্নিত করেছেন ঠিক সেই সিরিয়াল পোর্টটি নির্বাচন করতে ভুলবেন না। তারপর টার্মিনালে সিরিয়াল পোর্ট খুলুন এবং ESP32 দ্বারা মুদ্রিত কোনও লগ দেখতে পান কিনা তা পরীক্ষা করুন। লগের বিষয়বস্তু ESP32 এ লোড করা অ্যাপ্লিকেশনের উপর নির্ভর করবে, Ex দেখুনampলে আউটপুট।
দ্রষ্টব্য: যোগাযোগ কাজ করছে কিনা তা যাচাই করার পর সিরিয়াল টার্মিনালটি বন্ধ করুন। যদি আপনি টার্মিনাল সেশনটি খোলা রাখেন, তাহলে পরবর্তীতে ফার্মওয়্যার আপলোড করার জন্য সিরিয়াল পোর্টটি অ্যাক্সেসযোগ্য হবে না।

macOS সিরিয়াল টার্মিনাল প্রোগ্রাম ইনস্টল করার ঝামেলা এড়াতে, macOS স্ক্রিন কমান্ড অফার করে। · লিনাক্স এবং ম্যাকওএস-এ চেক পোর্টে আলোচনা করা হয়েছে, রান করুন:

ls /dev/cu.* · আপনি একই রকম আউটপুট দেখতে পাবেন:

/dev/cu.Bluetooth-ইনকামিং-পোর্ট /dev/cu.SLAB_USBtoUART USBtoUART7

/dev/cu.SLAB_

· আপনার পিসিতে সংযুক্ত বোর্ডের ধরণ এবং সংখ্যার উপর নির্ভর করে আউটপুট পরিবর্তিত হবে। তারপর আপনার বোর্ডের ডিভাইসের নামটি নির্বাচন করুন এবং চালান (প্রয়োজনে, ব্যবহৃত চিপের ডিফল্ট বড রেটে o115200p পরিবর্তন করুন):

screen /dev/cu.device_name 115200 device_name এর পরিবর্তে ls /dev/cu.* চলমান নামটি ব্যবহার করুন।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন

চিত্র ১৫: উইন্ডোজে PUTTY তে সিরিয়াল কমিউনিকেশন সেট করা

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন

চিত্র ১৬: লিনাক্সে PUTTY তে সিরিয়াল কমিউনিকেশন সেট করা

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
· আপনি যা খুঁজছেন তা হল স্ক্রিনে প্রদর্শিত কিছু লগ। লগের বিষয়বস্তু ESP32 এ লোড করা অ্যাপ্লিকেশনের উপর নির্ভর করবে, দেখুন Example আউটপুট। স্ক্রিন সেশন থেকে বেরিয়ে আসতে Ctrl-A + টাইপ করুন।
দ্রষ্টব্য: যোগাযোগ কাজ করছে কিনা তা যাচাই করার পরে স্ক্রিন সেশন থেকে বেরিয়ে আসতে ভুলবেন না। যদি আপনি এটি করতে ব্যর্থ হন এবং কেবল টার্মিনাল উইন্ডোটি বন্ধ করে দেন, তাহলে সিরিয়াল পোর্টটি পরে ফার্মওয়্যার আপলোড করার জন্য অ্যাক্সেসযোগ্য হবে না।
Example আউটপুট একটি প্রাক্তনample লগটি নিচে দেখানো হল। যদি আপনি কিছু না দেখেন তবে বোর্ডটি রিসেট করুন। ets জুন ৮ ২০১৬ ০০:২২:৫৭
প্রথম: ০x৫ (DEEPSLEEP_RESET), বুট: ০x১৩ (SPI_FAST_FLASH_BOOT) ets ৮ জুন ২০১৬ ০০:২২:৫৭
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-এর প্রথম পদক্ষেপ, তাহলে আপনি ধাপ ৫ দিয়ে এগিয়ে যেতে পারেন। ESP-IDF-এর প্রথম পদক্ষেপ।
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 দিয়ে শুরু করা হয় তাহলে Target encrypted-flash চালানো হয়। অ্যাপ-ফ্ল্যাশ টার্গেট চালানোর জন্য idf_monitor কে থামায়, তারপর idf_monitor পুনরায় চালু করে। ফ্ল্যাশ টার্গেটের মতো, কিন্তু শুধুমাত্র মূল অ্যাপটি তৈরি করা হয় এবং পুনরায় ফ্ল্যাশ করা হয়। যদি idf_monitor আর্গুমেন্ট -E দিয়ে শুরু করা হয় তাহলে Target encrypted-app-flash চালানো হয়। সক্রিয় থাকাকালীন সমস্ত ইনকামিং সিরিয়াল ডেটা বাতিল করে। মনিটরটি বন্ধ না করে দ্রুত বিরতি এবং লগ আউটপুট পরীক্ষা করার অনুমতি দেয়। একটি তৈরি করে file প্রজেক্ট ডিরেক্টরিতে এবং আউটপুটটি তাতে লেখা হয় file যতক্ষণ না একই কীবোর্ড শর্টকাট দিয়ে এটি নিষ্ক্রিয় করা হয় (অথবা IDF মনিটর প্রস্থান করে)। IDF মনিটর একটি টাইমস্ট প্রিন্ট করতে পারেamp প্রতিটি লাইনের শুরুতে। সময়সীমাamp -টাইমেস্ট দ্বারা বিন্যাস পরিবর্তন করা যেতে পারেamp-ফর্ম্যাট কমান্ড লাইন আর্গুমেন্ট।

প্রোগ্রাম থেকে প্রস্থান করুন

চলমান অ্যাপ্লিকেশনে বাধা দিন

রানটাইমে অ্যাপ্লিকেশনটি ডিবাগ করার জন্য IDF মনিটরকে থামায় এবং GDB প্রজেক্ট ডিবাগার চালায়। এর জন্য :ref:CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME বিকল্পটি সক্রিয় করতে হবে।

Ctrl-] এবং Ctrl-T ব্যতীত অন্য যেকোনো কী চাপলে, সিরিয়াল পোর্টের মাধ্যমে পাঠানো হবে।

আইডিএফ-নির্দিষ্ট বৈশিষ্ট্য

স্বয়ংক্রিয় ঠিকানা ডিকোডিং যখনই ESP-IDF 0x4_______ ফর্মের একটি হেক্সাডেসিমেল কোড ঠিকানা আউটপুট করে, IDF মনিটর সোর্স কোডে অবস্থানটি অনুসন্ধান করতে এবং ফাংশনের নাম খুঁজে পেতে addr2line_ ব্যবহার করে।
যদি একটি ESP-IDF অ্যাপ ক্র্যাশ করে এবং আতঙ্কিত হয়, তাহলে একটি রেজিস্টার ডাম্প এবং ব্যাকট্রেস তৈরি করা হয়, যেমন নিম্নলিখিত:

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন

গুরু মেডিটেশন ত্রুটি StoreProhibited ধরণের কোর 0 তে ঘটেছে। ব্যতিক্রম ছিল

অব্যবহৃত।

রেজিস্টার ডাম্প:

PC

: ০x৪০০f৩৬০ডি পিএস

: ০x০০৬০৩৩০ এ০

: ০x৮০০ডিবিএফ৫৬ এ১

:

০x৩ffb৭e০০

A2

: ০x৩ffb১৩৬c এ৩

: ০x০০৬০৩৩০ এ০

: ০x০০৬০৩৩০ এ০

:

0x00000000

A6

: ০x০০৬০৩৩০ এ০

: ০x০০৬০৩৩০ এ০

: ০x০০৬০৩৩০ এ০

:

০x৩ffb৭dd০

A10

: ০x০০৬০৩৩০ এ০

: ০x০০৬০f২৩ এ১২

: ০x০০৬০f২৩ এ১২

:

০x৩ffba৬d০

A14

: ০x০০৬০৩৩০ এ০

: ০x০০০০০০০f সৌদি আরব

: 0x00000019 অজুহাত:

0x0000001d

EXCVADDR: 0x00000000 LBEG : 0x4000c46c ধার : 0x4000c477 LCOUNT :

0x00000000

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

আইডিএফ মনিটর ডাম্পে আরও বিশদ যোগ করেছে:

গুরু মেডিটেশন ত্রুটি StoreProhibited ধরণের কোর 0 তে ঘটেছে। ব্যতিক্রম ছিল

অব্যবহৃত।

রেজিস্টার ডাম্প:

PC

: ০x৪০০f৩৬০ডি পিএস

: ০x০০৬০৩৩০ এ০

: ০x৮০০ডিবিএফ৫৬ এ১

:

০x৩ffb৭e০০

0x400f360d: /home/gus/esp/32/idf/ex-এ কিছু_করুন_ক্র্যাশ করুনampলেস/শুরু করা/

হ্যালো_ওয়ার্ল্ড/মেইন/./হ্যালো_ওয়ার্ল্ড_মেইন.সি:৫৭

(ইনলাইনড) /home/gus/esp/32/idf/ex এ inner_dont_crashampলেস/শুরু/হ্যালো_

world/main/./hello_world_main.c:52

A2

: ০x৩ffb১৩৬c এ৩

: ০x০০৬০৩৩০ এ০

: ০x০০৬০৩৩০ এ০

:

0x00000000

A6

: ০x০০৬০৩৩০ এ০

: ০x০০৬০৩৩০ এ০

: ০x০০৬০৩৩০ এ০

:

০x৩ffb৭dd০

A10

: ০x০০৬০৩৩০ এ০

: ০x০০৬০f২৩ এ১২

: ০x০০৬০f২৩ এ১২

:

০x৩ffba৬d০

A14

: ০x০০৬০৩৩০ এ০

: ০x০০০০০০০f সৌদি আরব

: 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 (ইনলাইনড) inner_dont_crash at /home/gus/esp/32/idf/examples/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 এ main_task

প্রতিটি ঠিকানা ডিকোড করার জন্য, 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 bridge) এর মাধ্যমে যোগাযোগ সম্পূর্ণরূপে সিরিয়াল পোর্টের মাধ্যমে সম্পন্ন হয়। রানটাইমে CONFIG_ESP_SYSTEM_PANIC কে GDBStub এ সেট করে ব্যাকগ্রাউন্ডে GDBStub চালানোর জন্য একটি টার্গেট কনফিগার করা যেতে পারে। সিরিয়াল পোর্টের মাধ্যমে Ctrl+C বার্তা পাঠানো না হওয়া পর্যন্ত GDBStub ব্যাকগ্রাউন্ডে চলবে এবং GDBStub প্রোগ্রামটি ভেঙে ফেলবে (অর্থাৎ, কার্যকর করা বন্ধ করবে), ফলে GDBStub ডিবাগিং কমান্ড পরিচালনা করতে পারবে। অধিকন্তু, প্যানিক হ্যান্ডলারকে CONFIG_ESP_SYSTEM_PANIC কে প্যানিকের সময় GDBStub এ সেট করে ক্র্যাশে GDBStub চালানোর জন্য কনফিগার করা যেতে পারে। যখন কোনও ক্র্যাশ ঘটে, তখন GDBStub সিরিয়াল পোর্টের উপর একটি বিশেষ স্ট্রিং প্যাটার্ন আউটপুট করবে যা নির্দেশ করবে যে এটি চলছে। উভয় ক্ষেত্রেই (অর্থাৎ, Ctrl+C বার্তা পাঠানো, অথবা বিশেষ স্ট্রিং প্যাটার্ন গ্রহণ করা), IDF মনিটর স্বয়ংক্রিয়ভাবে GDB চালু করবে যাতে ব্যবহারকারী ডিবাগিং কমান্ড পাঠাতে পারে। GDB প্রস্থান করার পরে, টার্গেটটি RTS সিরিয়াল লাইনের মাধ্যমে রিসেট করা হয়। যদি এই লাইনটি সংযুক্ত না থাকে, তাহলে ব্যবহারকারীরা তাদের টার্গেট রিসেট করতে পারবেন (বোর্ড রিসেট বোতাম টিপে)।
দ্রষ্টব্য: ব্যাকগ্রাউন্ডে, IDF মনিটর GDB চালু করার জন্য নিম্নলিখিত কমান্ডটি চালায়:
xtensa-esp32-elf-gdb -ex “serial baud set BAUD” -ex “target remote PORT” -ex interrupt build/PROJECT.elf :idf_target:`Hello NAME chip`

আউটপুট ফিল্টারিং IDF মনিটরকে idf.py monitor –print-filter=”xyz” হিসেবে ব্যবহার করা যেতে পারে, যেখানে –print-filter হল আউটপুট ফিল্টারিংয়ের প্যারামিটার। ডিফল্ট মান হল একটি খালি স্ট্রিং, যার অর্থ সবকিছু প্রিন্ট করা হয়েছে।
কী মুদ্রণ করবেন তার উপর বিধিনিষেধগুলি একটি সিরিজ হিসাবে নির্দিষ্ট করা যেতে পারেtag>: জিনিসপত্র যেখানেtag> হল tag স্ট্রিং এবং হল {N, E, W, I, D, V, *} সেটের একটি অক্ষর যা লগিং এর জন্য একটি স্তর নির্দেশ করে।
প্রাক্তন জন্যampলে, প্রিন্ট_ফিল্টার=”tag1:W” শুধুমাত্র ESP_LOGW(“) দিয়ে লেখা আউটপুটগুলির সাথে মেলে এবং প্রিন্ট করে।tag১”, …) অথবা নিম্নতর শব্দভাণ্ডার স্তরে, অর্থাৎ ESP_LOGE(“tag১″, …)। একটি নির্দিষ্ট না করে অথবা ভার্বোস স্তরে * ডিফল্ট ব্যবহার করা।
দ্রষ্টব্য: লগিং লাইব্রেরির মাধ্যমে আপনার প্রয়োজন নেই এমন আউটপুটগুলি সংকলনের সময় নিষ্ক্রিয় করতে প্রাথমিক লগিং ব্যবহার করুন। IDF মনিটরের সাহায্যে আউটপুট ফিল্টারিং একটি গৌণ সমাধান যা অ্যাপ্লিকেশনটি পুনরায় কম্পাইল না করে ফিল্টারিং বিকল্পগুলি সামঞ্জস্য করার জন্য কার্যকর হতে পারে।
তোমার অ্যাপ tags আউটপুট ফিল্টারিং বৈশিষ্ট্যের সাথে সামঞ্জস্যপূর্ণ হওয়ার জন্য, এতে স্পেস, তারকাচিহ্ন *, অথবা কোলন : থাকা উচিত নয়।
যদি আপনার অ্যাপের আউটপুটের শেষ লাইনের পরে ক্যারেজ রিটার্ন না আসে, তাহলে আউটপুট ফিল্টারিং বিভ্রান্ত হতে পারে, অর্থাৎ, মনিটর লাইনটি প্রিন্ট করতে শুরু করে এবং পরে জানতে পারে যে লাইনটি লেখা উচিত ছিল না। এটি একটি পরিচিত সমস্যা এবং সর্বদা ক্যারেজ রিটার্ন যোগ করে এড়ানো যেতে পারে (বিশেষ করে যখন কোনও আউটপুট অবিলম্বে পরে আসে না)।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
Exampফিল্টারিং নিয়মের কিছু অংশ:
· * যেকোনো tags. তবে, স্ট্রিং PRINT_FILTER=”*:I tag১:ই” সম্পর্কে tag1 শুধুমাত্র ত্রুটি প্রিন্ট করে, কারণ এর জন্য নিয়ম tag* এর জন্য নিয়মের চেয়ে 1 এর অগ্রাধিকার বেশি।
· ডিফল্ট (খালি) নিয়মটি *:V এর সমতুল্য কারণ প্রতিটির সাথে মিলছে tag ভার্বোস লেভেল বা তার নিচের মানে সবকিছু মিলে যাওয়া।
· “*:N” কেবল লগিং ফাংশন থেকে আউটপুটই দমন করে না, বরং printf ইত্যাদি দ্বারা তৈরি প্রিন্টগুলিকেও দমন করে। এটি এড়াতে, *:E অথবা উচ্চতর ভার্বোসিটি স্তর ব্যবহার করুন।
· নিয়ম “tag১:ভি", "tag১:v", "tag১:", "tag১:*", এবং "tag১” সমতুল্য। · নিয়ম “tag১:পশ্চিম tag1:E” হল “এর সমতুল্য”tag১:ই” কারণ একই ঘটনার যেকোনো ফলস্বরূপ সংঘটিত হওয়া tag
নামটি আগেরটি মুছে ফেলে। · নিয়ম “tag1: আমি tag2:W” শুধুমাত্র প্রিন্ট করে tag১ তথ্য ভার্বোসিটি স্তরে বা তার কম এবং tagসতর্কতায় ২
শব্দের মাত্রা বা তার কম। · নিয়ম “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: Initializing. RAM গতিশীল বরাদ্দের জন্য উপলব্ধ: I (603) cpu_start: Pro cpu স্টার্ট ব্যবহারকারী কোড D (309) light_driver: [light_init, 74]:status: 1, mode: 2 D (318) vfs: esp_vfs_register_fd_range <54 রেঞ্জের জন্য সফল; 64) এবং VFS ID 1 I (328) wifi: wifi ড্রাইভার টাস্ক: 3ffdbf84, prio:23, stack:4096, core=0
ফিল্টারিং অপশন PRINT_FILTER=”wifi esp_image:E light_driver:I” এর জন্য ক্যাপচার করা আউটপুট নিচে দেওয়া হল:
E (31) esp_image: 0x30000 এ থাকা ছবিতে অবৈধ ম্যাজিক বাইট আছে I (328) wifi: wifi ড্রাইভার টাস্ক: 3ffdbf84, prio:23, stack: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

অধ্যায় ১। লিনাক্স এবং ম্যাকোসের জন্য স্ট্যান্ডার্ড টুলচেইন সেটআপ শুরু করুন

ধাপে ধাপে ইনস্টলেশন। এটি আপনাকে ইনস্টলেশন প্রক্রিয়ার মধ্য দিয়ে নিয়ে যাওয়ার জন্য একটি বিস্তারিত রোডম্যাপ।
ডেভেলপমেন্ট এনভায়রনমেন্ট সেট আপ করা আপনার ESP32 এর জন্য ESP-IDF সেট আপ করার ধাপগুলি এখানে দেওয়া হল। · ধাপ ১. পূর্বশর্ত ইনস্টল করুন · ধাপ ২. ESP-IDF পান · ধাপ ৩. টুল সেট আপ করুন · ধাপ ৪. এনভায়রনমেন্ট ভেরিয়েবল সেট আপ করুন · ধাপ ৫. ESP-IDF এর প্রথম ধাপ
ধাপ ১. ইনস্টল করার পূর্বশর্ত ESP32 এর সাথে ESP-IDF ব্যবহার করার জন্য, আপনার অপারেটিং সিস্টেমের উপর ভিত্তি করে কিছু সফ্টওয়্যার প্যাকেজ ইনস্টল করতে হবে। এই সেটআপ গাইড আপনাকে Linux এবং macOS ভিত্তিক সিস্টেমে সবকিছু ইনস্টল করতে সাহায্য করবে।
লিনাক্স ব্যবহারকারীদের জন্য ESP-IDF ব্যবহার করে কম্পাইল করার জন্য আপনাকে নিম্নলিখিত প্যাকেজগুলি পেতে হবে। কোন কমান্ডটি চালানো হবে তা নির্ভর করে আপনি কোন লিনাক্স ডিস্ট্রিবিউশন ব্যবহার করছেন তার উপর:
· উবুন্টু এবং ডেবিয়ান: 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 ইনস্টল 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 চালান। · যদি আপনি উপরের তালিকায় আপনার লিনাক্স ডিস্ট্রিবিউশন দেখতে না পান তবে প্যাকেজ ইনস্টলেশনের জন্য কোন কমান্ড ব্যবহার করবেন তা জানতে দয়া করে এর ডকুমেন্টেশনটি পরীক্ষা করুন।
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 ইনস্টল করতে হবে।
পাইথন ৩ ইনস্টল করা হচ্ছে macOS Catalina 10.15 রিলিজ নোটের উপর ভিত্তি করে, Python 2.7 ব্যবহার করা বাঞ্ছনীয় নয় এবং MacOS-এর ভবিষ্যতের সংস্করণগুলিতে Python 2.7 ডিফল্টরূপে অন্তর্ভুক্ত করা হবে না। আপনার বর্তমানে কোন Python আছে তা পরীক্ষা করুন: python –version
যদি আউটপুট পাইথন ২.৭.১৭ এর মতো হয়, তাহলে আপনার ডিফল্ট ইন্টারপ্রেটার হবে পাইথন ২.৭। যদি তাই হয়, তাহলে আপনার কম্পিউটারে পাইথন ৩ ইতিমধ্যেই ইনস্টল করা আছে কিনা তাও পরীক্ষা করুন: python3 –version
যদি উপরের কমান্ডটি একটি ত্রুটি প্রদান করে, তাহলে এর অর্থ হল Python 3 ইনস্টল করা হয়নি। নীচে একটি ওভার দেওয়া হলview পাইথন ৩ ইনস্টল করার ধাপগুলি।
· HomeBrew দিয়ে ইনস্টলেশন নিম্নলিখিতভাবে করা যেতে পারে: brew install python3
· যদি আপনার MacPorts থাকে, তাহলে আপনি এটি চালাতে পারেন: sudo port install python38
ধাপ ২. ESP-IDF পান ESP32 এর জন্য অ্যাপ্লিকেশন তৈরি করতে, আপনার ESP-IDF রিপোজিটরিতে Espressif দ্বারা প্রদত্ত সফ্টওয়্যার লাইব্রেরিগুলির প্রয়োজন। ESP-IDF পেতে, আপনার ইনস্টলেশন ডিরেক্টরিতে যান এবং git clone দিয়ে রিপোজিটরিটি ক্লোন করুন, নীচের নির্দেশাবলী অনুসরণ করে আপনার অপারেটিং সিস্টেমের জন্য নির্দিষ্ট করুন। টার্মিনাল খুলুন এবং নিম্নলিখিত কমান্ডগুলি চালান:

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন

mkdir -p ~/esp cd ~/esp git clone -b v5.0.9 –recursive https://github.com/espressif/esp-idf.git
ESP-IDF ~/esp/esp-idf এ ডাউনলোড করা হবে। একটি প্রদত্ত পরিস্থিতিতে কোন ESP-IDF সংস্করণ ব্যবহার করতে হবে সে সম্পর্কে তথ্যের জন্য ESP-IDF সংস্করণগুলির সাথে পরামর্শ করুন৷
ধাপ ৩. টুল সেট আপ করুন ESP-IDF ছাড়াও, আপনাকে ESP32 সাপোর্ট করা প্রোজেক্টের জন্য ESP-IDF দ্বারা ব্যবহৃত টুলগুলিও ইনস্টল করতে হবে, যেমন কম্পাইলার, ডিবাগার, পাইথন প্যাকেজ ইত্যাদি। cd ~/esp/esp-idf ./install.sh esp32
অথবা ফিশ শেল সিডি সহ ~/esp/esp-idf ./install.fish esp32
উপরের কমান্ডগুলি শুধুমাত্র ESP32 এর জন্য টুল ইনস্টল করে। যদি আপনি আরও চিপ টার্গেটের জন্য প্রকল্প তৈরি করতে চান তবে আপনার সেগুলি তালিকাভুক্ত করা উচিত এবং প্রাক্তনের জন্য চালানো উচিতample: সিডি ~/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 all
দ্রষ্টব্য: macOS ব্যবহারকারীদের জন্য, যদি কোনও ধাপে এই ধরণের ত্রুটি দেখানো হয়:urlখোলা ত্রুটি [SSL: CERTIFICATE_VERIFY_FAILED] সার্টিফিকেট যাচাই ব্যর্থ হয়েছে: স্থানীয় ইস্যুকারী সার্টিফিকেট পেতে অক্ষম (_ssl.c:xxx)
সার্টিফিকেট ইনস্টল করার জন্য আপনি আপনার কম্পিউটারের পাইথন ফোল্ডারে Install Certificates.command চালাতে পারেন। বিস্তারিত জানার জন্য, ESP-IDF টুল ইনস্টল করার সময় ডাউনলোড ত্রুটি দেখুন।

বিকল্প File ডাউনলোড টুলস ইনস্টলার অনেকগুলি ডাউনলোড করে fileGitHub রিলিজের সাথে সংযুক্ত। যদি 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
টুলস ইনস্টলেশন পাথ কাস্টমাইজ করা এই ধাপে প্রবর্তিত স্ক্রিপ্টগুলি লিনাক্সে ব্যবহারকারীর হোম ডিরেক্টরি: $HOME/.espressif-এর ভিতরে ESP-IDF-এর জন্য প্রয়োজনীয় কম্পাইলেশন টুল ইনস্টল করুন। আপনি যদি টুলগুলি অন্য কোনও ডিরেক্টরিতে ইনস্টল করতে চান, তাহলে ইনস্টলেশন স্ক্রিপ্টগুলি চালানোর আগে পরিবেশ পরিবর্তনশীল IDF_TOOLS_PATH সেট করুন। নিশ্চিত করুন যে আপনার ব্যবহারকারী অ্যাকাউন্টে এই পাথটি পড়ার এবং লেখার জন্য পর্যাপ্ত অনুমতি রয়েছে। যদি IDF_TOOLS_PATH পরিবর্তন করেন, তাহলে নিশ্চিত করুন যে প্রতিবার ইনস্টল স্ক্রিপ্ট (install.bat, install.ps1 বা install.sh) এবং একটি এক্সপোর্ট স্ক্রিপ্ট (export.bat, export.ps1 বা export.sh) কার্যকর করার সময় এটি একই মানে সেট করা আছে।
ধাপ ৪। পরিবেশ ভেরিয়েবল সেট আপ করুন ইনস্টল করা টুলগুলি এখনও 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, ইত্যাদি)
alias 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 প্রকল্প দিয়ে শুরু করতে পারেন ex থেকেampইএসপি-আইডিএফ-এ লেস ডিরেক্টরি।

গুরুত্বপূর্ণ: ESP-IDF বিল্ড সিস্টেম ESP-IDF বা প্রকল্পের পথে স্পেস সমর্থন করে না।

প্রজেক্টটি get-started/hello_world ~/esp ডিরেক্টরিতে কপি করুন:

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
সিডি ~/esp সিপি -আর $IDF_PATH/examples/get-start/hello_world।
দ্রষ্টব্য: প্রাক্তনের একটি পরিসর রয়েছেampপ্রাক্তন মধ্যে লে প্রকল্পampইএসপি-আইডিএফ-এ লেস ডিরেক্টরি। আপনি উপরে উপস্থাপিত অনুরূপভাবে যে কোনো প্রকল্প অনুলিপি এবং এটি চালাতে পারেন. প্রাক্তন নির্মাণ করাও সম্ভবampপ্রথমে কপি না করেই জায়গায় রাখুন।
আপনার ডিভাইসটি সংযুক্ত করুন এখন আপনার ESP32 বোর্ডটি কম্পিউটারের সাথে সংযুক্ত করুন এবং কোন সিরিয়াল পোর্টের অধীনে বোর্ডটি দৃশ্যমান তা পরীক্ষা করুন। সিরিয়াল পোর্টগুলির নামকরণের ধরণগুলি নিম্নলিখিত:
· লিনাক্স: /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 দিয়ে লক্ষ্য নির্ধারণ করতে হবে। মনে রাখবেন যে প্রকল্পে বিদ্যমান বিল্ড এবং কনফিগারেশন, যদি থাকে, এই প্রক্রিয়ায় সাফ এবং ইনিশিয়ালাইজ করা হবে। এই পদক্ষেপটি এড়িয়ে যাওয়ার জন্য লক্ষ্যটি পরিবেশ পরিবর্তনশীলে সংরক্ষণ করা যেতে পারে। অতিরিক্ত তথ্যের জন্য লক্ষ্য চিপ নির্বাচন করুন: set-target দেখুন। পূর্ববর্তী পদক্ষেপগুলি সঠিকভাবে সম্পন্ন হলে, নিম্নলিখিত মেনু প্রদর্শিত হবে:

চিত্র ১৭: প্রকল্প কনফিগারেশন - হোম উইন্ডো আপনি প্রকল্পের নির্দিষ্ট ভেরিয়েবল সেট আপ করার জন্য এই মেনুটি ব্যবহার করছেন, যেমন, ওয়াই-ফাই নেটওয়ার্কের নাম এবং পাসওয়ার্ড, প্রসেসরের গতি ইত্যাদি। menuconfig দিয়ে প্রকল্প সেট আপ করা ohello_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 boardns সিরিয়াল পোর্টের নাম দিয়ে প্রতিস্থাপন করুন। আপনি BAUD-কে আপনার প্রয়োজনীয় baud রেট দিয়ে প্রতিস্থাপন করে ফ্ল্যাশার baud রেটও পরিবর্তন করতে পারেন। ডিফল্ট 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 কে ফার্মওয়্যার ডাউনলোড মোডে বুট করবে। একটি প্রাক্তন হিসাবেample, ESP32 DevKitC ডেভেলপমেন্ট বোর্ডের স্কিম্যাটিক পরীক্ষা করুন।
সাধারণভাবে, অফিসিয়াল esp-idf ডেভেলপমেন্ট বোর্ডগুলির সাথে আপনার কোনও সমস্যা হওয়ার কথা নয়। তবে, esptool.py নিম্নলিখিত ক্ষেত্রে আপনার হার্ডওয়্যার স্বয়ংক্রিয়ভাবে রিসেট করতে সক্ষম নয়:
· আপনার হার্ডওয়্যারে GPIO0 এবং CHIP_PU এর সাথে DTR এবং RTS লাইন সংযুক্ত নেই · DTR এবং RTS লাইনগুলি ভিন্নভাবে কনফিগার করা হয়েছে · এরকম কোনও সিরিয়াল নিয়ন্ত্রণ লাইন নেই।
আপনার হার্ডওয়্যারের ধরণের উপর নির্ভর করে, আপনার ESP32 বোর্ডটিকে ম্যানুয়ালি ফার্মওয়্যার ডাউনলোড মোডে (রিসেট) রাখাও সম্ভব হতে পারে।
· Espressif দ্বারা উত্পাদিত ডেভেলপমেন্ট বোর্ডগুলির জন্য, এই তথ্য সংশ্লিষ্ট শুরু করার নির্দেশিকা বা ব্যবহারকারী নির্দেশিকাগুলিতে পাওয়া যাবে। উদাহরণস্বরূপ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) বৈশিষ্ট্য: ওয়াইফাই, বিটি, ডুয়াল কোর, কোডিং স্কিম কোনটিই নয় ক্রিস্টাল হল 40MHz MAC: 24:0a:c4:05:b9:14 স্টাব আপলোড করা হচ্ছে… স্টাব চলছে… স্টাব চলছে… বড রেট 460800 এ পরিবর্তন করা হচ্ছে। ফ্ল্যাশের আকার কনফিগার করা হচ্ছে... ৩০৭২ বাইটকে ১০৩ এ সংকুচিত করা হয়েছে... ০x০০০০৮০০০ এ লেখা... (১০০%) ০.০ সেকেন্ডে ০x০০০০৮০০০ এ ৩০৭২ বাইট (১০৩ সংকুচিত) লেখা হয়েছে (কার্যকর ৫৯৬২.৮ kbit/s)... ডেটার হ্যাশ যাচাই করা হয়েছে। ১৫৪০৮ এ সংকুচিত করা হয়েছে... ০x০০০০১০০০ এ লেখা... (১০০%) ০.৪ সেকেন্ডে ০x০০০০১০০০ এ ২৬০৯৬ বাইট (১৫৪০৮ সংকুচিত) লেখা হয়েছে (কার্যকর ৫৪৬.৭ kbit/s)... ডেটার হ্যাশ যাচাই করা হয়েছে। ১৪৭১০৪ বাইট সংকুচিত করে ৭৭৩৬৪… ০x০০১০০০০০০… (২০%) এ লেখা ০x০০১৪০০০… (৪০%) এ লেখা ০x০০১৮০০০… (৬০%) এ লেখা ০x০০১c০০০… (৮০%) এ লেখা
(পরবর্তী পৃষ্ঠায় চলবে)

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ১. শুরু করুন
(পূর্ববর্তী পৃষ্ঠা থেকে অব্যাহত) 0x00020000 এ লেখা… (100%) 0x00010000 এ 1.9 সেকেন্ডে 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 চালু করা হচ্ছে ১১৫২০০ —– প্রস্থান করুন: Ctrl+] | মেনু: Ctrl+T | সাহায্য: Ctrl+T এর পরে Ctrl+H –ets ৮ জুন ২০১৬ ০০:২২:৫৭
প্রথম: 0x1 (POWERON_RESET), বুট: 0x13 (SPI_FAST_FLASH_BOOT) ets ৮ জুন ২০১৬ ০০:২২:৫৭ …
স্টার্টআপ এবং ডায়াগনস্টিক লগগুলি উপরে স্ক্রোল করার পরে, আপনি অ্যাপ্লিকেশন দ্বারা oHello world! প্রিন্ট করা দেখতে পাবেন।
… হ্যালো বিশ্ব! ১০ সেকেন্ডের মধ্যে পুনরায় চালু হচ্ছে… এটি esp32 চিপ যার মধ্যে ২টি CPU কোর(গুলি), WiFi/BT/BLE, সিলিকন রিভিশন ১, ২MB এক্সটার্নাল ফ্ল্যাশ রয়েছে। সর্বনিম্ন ফ্রি হিপ সাইজ: ২৯৮৯৬৮ বাইট। ৯ সেকেন্ডের মধ্যে পুনরায় চালু হচ্ছে… ৮ সেকেন্ডের মধ্যে পুনরায় চালু হচ্ছে… ৭ সেকেন্ডের মধ্যে পুনরায় চালু হচ্ছে…
IDF মনিটর থেকে বেরিয়ে আসার জন্য Ctrl+] শর্টকাট ব্যবহার করুন। আপলোডের কিছুক্ষণ পরেই যদি IDF মনিটর ব্যর্থ হয়, অথবা, উপরের বার্তাগুলির পরিবর্তে, আপনি যদি নীচের মতো এলোমেলো আবর্জনা দেখতে পান, তাহলে আপনার বোর্ড সম্ভবত 26 MHz স্ফটিক ব্যবহার করছে। বেশিরভাগ ডেভেলপমেন্ট বোর্ড ডিজাইন 40 MHz ব্যবহার করে, তাই ESP-IDF এই ফ্রিকোয়েন্সিটিকে ডিফল্ট মান হিসেবে ব্যবহার করে।

যদি আপনার এমন সমস্যা হয়, তাহলে নিম্নলিখিতগুলি করুন:
১. মনিটর থেকে বেরিয়ে আসুন। ২. মেনুকনফিগ-এ ফিরে যান। ৩. কম্পোনেন্ট কনফিগারেশন > হার্ডওয়্যার সেটিংস > মেইন এক্সটাল কনফিগারেশন > মেইন এক্সটাল-এ যান।
ফ্রিকোয়েন্সি, তারপর 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 তে প্রয়োজনীয় হার্ডওয়্যার অন্তর্ভুক্ত না হওয়ায় এটি সমর্থিত হবে না। যদি একটি ex তৈরি করা হয়ampআচ্ছা, অনুগ্রহ করে README চেক করুন। file সমর্থিত লক্ষ্যমাত্রা টেবিলের জন্য। যদি এটি ESP32 লক্ষ্য সহ উপস্থিত থাকে, অথবা টেবিলটি আদৌ বিদ্যমান না থাকে, তাহলে প্রাক্তনample ESP32 তে কাজ করবে।
অতিরিক্ত টিপস
অনুমতি সংক্রান্ত সমস্যা /dev/ttyUSB0 কিছু লিনাক্স ডিস্ট্রিবিউশনের ক্ষেত্রে, ESP32 ফ্ল্যাশ করার সময় আপনি "Failed to open port /dev/ttyUSB0" ত্রুটি বার্তা পেতে পারেন। বর্তমান ব্যবহারকারীকে ডায়ালআউট গ্রুপে যুক্ত করে এটি সমাধান করা যেতে পারে।
পাইথন সামঞ্জস্য ESP-IDF পাইথন 3.7 বা তার পরবর্তী সংস্করণ সমর্থন করে। এই প্রয়োজনীয়তা পূরণ করে আপনার অপারেটিং সিস্টেমকে সাম্প্রতিক সংস্করণে আপগ্রেড করার পরামর্শ দেওয়া হচ্ছে। অন্যান্য বিকল্পগুলির মধ্যে রয়েছে উৎস থেকে পাইথন ইনস্টল করা অথবা পাইনভের মতো পাইথন সংস্করণ পরিচালনা সিস্টেম ব্যবহার করা।
বোর্ড সাপোর্ট প্যাকেজ দিয়ে শুরু করুন কিছু ডেভেলপমেন্ট বোর্ডে প্রোটোটাইপিং দ্রুত করার জন্য, আপনি বোর্ড সাপোর্ট প্যাকেজ (BSP) ব্যবহার করতে পারেন, যা একটি নির্দিষ্ট বোর্ডের ইনিশিয়ালাইজেশনকে কয়েকটি ফাংশন কলের মতো সহজ করে তোলে। একটি BSP সাধারণত ডেভেলপমেন্ট বোর্ডে প্রদত্ত সমস্ত হার্ডওয়্যার উপাদান সমর্থন করে। পিনআউট সংজ্ঞা এবং ইনিশিয়ালাইজেশন ফাংশন ছাড়াও, একটি BSP সেন্সর, ডিসপ্লে, অডিও কোডেক ইত্যাদির মতো বহিরাগত উপাদানগুলির জন্য ড্রাইভার সরবরাহ করে। BSP গুলি 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 ফোল্ডারটি মুছে ফেলা এবং এটিকে আবার ক্লোন করা, যেন ধাপ ২-এ বর্ণিত প্রাথমিক ইনস্টলেশনটি করা হচ্ছে। ESP-IDF পান। আরেকটি সমাধান হল শুধুমাত্র যা পরিবর্তন হয়েছে তা আপডেট করা। আপডেট পদ্ধতিটি আপনি যে ESP-IDF সংস্করণটি ব্যবহার করছেন তার উপর নির্ভর করে। ESP-IDF আপডেট করার পরে, ইনস্টল স্ক্রিপ্টটি আবার চালান, যদি নতুন ESP-IDF সংস্করণের জন্য বিভিন্ন সংস্করণের সরঞ্জামের প্রয়োজন হয়। ধাপ ৩-এ নির্দেশাবলী দেখুন। সরঞ্জামগুলি সেট আপ করুন। নতুন সরঞ্জামগুলি ইনস্টল হয়ে গেলে, এক্সপোর্ট স্ক্রিপ্ট ব্যবহার করে পরিবেশ আপডেট করুন। ধাপ ৪-এ নির্দেশাবলী দেখুন। পরিবেশ ভেরিয়েবলগুলি সেট আপ করুন।
সম্পর্কিত নথি · ESP32 এর সাথে সিরিয়াল সংযোগ স্থাপন করুন · Eclipse প্লাগইন · VSCode এক্সটেনশন · IDF মনিটর
১.৪ আপনার প্রথম প্রকল্প তৈরি করুন
যদি আপনার ইতিমধ্যেই ESP-IDF ইনস্টল করা থাকে এবং IDE ব্যবহার না করেন, তাহলে আপনি "Start a Project on Windows" অথবা "Start a Project on Linux এবং macOS" কমান্ড লাইন থেকে আপনার প্রথম প্রকল্পটি তৈরি করতে পারেন।
১.৫ ESP-IDF আনইনস্টল করুন
আপনি যদি ESP-IDF অপসারণ করতে চান, তাহলে অনুগ্রহ করে ESP-IDF আনইনস্টল করুন।

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় 2
API রেফারেন্স
২.১ এপিআই কনভেনশন
এই নথিটি ESP-IDF অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেস (API) এর সাধারণ নিয়ম এবং অনুমান বর্ণনা করে। ESP-IDF বিভিন্ন ধরণের প্রোগ্রামিং ইন্টারফেস প্রদান করে:
· পাবলিক হেডারে ঘোষিত সি ফাংশন, স্ট্রাকচার, এনাম, টাইপ সংজ্ঞা এবং প্রিপ্রসেসর ম্যাক্রো fileESPIDF উপাদানগুলির গুলি। প্রোগ্রামিং গাইডের API রেফারেন্স বিভাগের বিভিন্ন পৃষ্ঠায় এই ফাংশন, কাঠামো এবং প্রকারের বর্ণনা রয়েছে।
· সিস্টেম ফাংশন, পূর্বনির্ধারিত ভেরিয়েবল এবং বিকল্পগুলি তৈরি করুন। এগুলি বিল্ড সিস্টেম গাইডে নথিভুক্ত করা হয়েছে। · Kconfig বিকল্পগুলি কোড এবং বিল্ড সিস্টেমে ব্যবহার করা যেতে পারে (CMakeLists.txt) files. · হোস্ট টুল এবং তাদের কমান্ড লাইন প্যারামিটারগুলিও ESP-IDF ইন্টারফেসের অংশ। ESP-IDF-তে ESP-IDF এবং তৃতীয় পক্ষের লাইব্রেরির জন্য বিশেষভাবে লেখা উপাদান থাকে। কিছু ক্ষেত্রে, একটি ESP-IDF-নির্দিষ্ট র‍্যাপার তৃতীয় পক্ষের লাইব্রেরিতে যোগ করা হয়, যা এমন একটি ইন্টারফেস প্রদান করে যা হয় সহজতর হয় অথবা বাকি ESP-IDF সুবিধাগুলির সাথে আরও ভালভাবে সংহত হয়। অন্যান্য ক্ষেত্রে, তৃতীয় পক্ষের লাইব্রেরির মূল API অ্যাপ্লিকেশন ডেভেলপারদের কাছে উপস্থাপন করা হয়। নিম্নলিখিত বিভাগগুলিতে ESP-IDF API এবং তাদের ব্যবহারের কিছু দিক ব্যাখ্যা করা হয়েছে।
2.1.1 ত্রুটি হ্যান্ডলিং
বেশিরভাগ ESP-IDF API esp_err_t টাইপ দিয়ে সংজ্ঞায়িত ত্রুটি কোডগুলি ফেরত দেয়। ত্রুটি পরিচালনার পদ্ধতি সম্পর্কে আরও তথ্যের জন্য ত্রুটি পরিচালনা বিভাগটি দেখুন। ত্রুটি কোড রেফারেন্সে ESP-IDF উপাদানগুলি দ্বারা ফেরত ত্রুটি কোডগুলির তালিকা রয়েছে।
২.১.২ কনফিগারেশন কাঠামো
গুরুত্বপূর্ণ: ESP-IDF-এর ভবিষ্যতের সংস্করণগুলির সাথে অ্যাপ্লিকেশনটিকে সামঞ্জস্যপূর্ণ করার জন্য কনফিগারেশন স্ট্রাকচারের সঠিক সূচনা একটি গুরুত্বপূর্ণ অংশ।
ESP-IDF-এর বেশিরভাগ ইনিশিয়ালাইজেশন বা কনফিগারেশন ফাংশন একটি কনফিগারেশন স্ট্রাকচারের জন্য একটি পয়েন্টারকে আর্গুমেন্ট হিসেবে গ্রহণ করে। উদাহরণস্বরূপampLe:
45

অধ্যায় ২। API রেফারেন্স

const esp_timer_create_args_t my_timer_args = { .callback = &my_timer_callback, .arg = callback_arg, .name = “my_timer”
}; esp_timer_handle_t আমার_টাইমার; esp_err_t ত্রুটি = esp_timer_create(&আমার_টাইমার_আর্গস, &আমার_টাইমার);
ইনিশিয়ালাইজেশন ফাংশন কখনই পয়েন্টারকে কনফিগারেশন স্ট্রাকচারে সংরক্ষণ করে না, তাই স্ট্যাকের উপর স্ট্রাকচার বরাদ্দ করা নিরাপদ।
অ্যাপ্লিকেশনটিকে কাঠামোর সমস্ত ক্ষেত্র শুরু করতে হবে। নিম্নলিখিতটি ভুল:
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 প্রাক্তনampকাঠামোর প্রাথমিককরণের জন্য les 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-এর গুলিগুলিতে এমন API থাকে যা শুধুমাত্র ESP-IDF সোর্স কোডে ব্যবহারের জন্য তৈরি, অ্যাপ্লিকেশনগুলির দ্বারা নয়। এই ধরণের হেডার files-এর নাম বা পাথে প্রাইভেট অথবা esp_private থাকে। কিছু উপাদান, যেমন hal-এ শুধুমাত্র প্রাইভেট API থাকে। প্রাইভেট API গুলি ছোট বা প্যাচ রিলিজের মধ্যে অসঙ্গতিপূর্ণ উপায়ে সরানো বা পরিবর্তন করা যেতে পারে।

২.১.৪ প্রাক্তনে উপাদানampলে প্রকল্প
ESP-IDF প্রাক্তনamples-এ ESP-IDF API-এর ব্যবহার প্রদর্শন করে বিভিন্ন ধরণের প্রকল্প রয়েছে। প্রাক্তনে কোডের ডুপ্লিকেশন কমাতেampকম, একাধিক প্রাক্তন দ্বারা ব্যবহৃত উপাদানগুলির ভিতরে কয়েকটি সাধারণ সাহায্যকারী সংজ্ঞায়িত করা হয়েছেampলেস

এসপ্রেসিফ সিস্টেমস

১ ডকুমেন্ট প্রতিক্রিয়া জমা দিন

রিলিজ v5.0.9

অধ্যায় ২। API রেফারেন্স
এর মধ্যে রয়েছে অবস্থিত উপাদানগুলি

দলিল/সম্পদ

এসপ্রেসিফ সিস্টেমস ESP32 ডেভ কিটসি ডেভেলপমেন্ট বোর্ড [পিডিএফ] ব্যবহারকারীর নির্দেশিকা
ESP32 ডেভ কিটক ডেভেলপমেন্ট বোর্ড, ESP32, ডেভ কিটক ডেভেলপমেন্ট বোর্ড, কিটক ডেভেলপমেন্ট বোর্ড, ডেভেলপমেন্ট বোর্ড, বোর্ড

তথ্যসূত্র

একটি মন্তব্য করুন

আপনার ইমেল ঠিকানা প্রকাশ করা হবে না. প্রয়োজনীয় ক্ষেত্রগুলি চিহ্নিত করা হয়েছে *