برد ESP8266 برد Nodemcu برد ویموس Wemos

راه اندازی و کار با ماژول ESP8266، بخش دوم: نصب هسته و راه اندازی اولیه

نوشته شده توسط معین صابری

در سلسله آموزش های ماژول ESP8266، به نصب هسته این برد در نرم افزار آردوینو و چگونگی پروگرام کردن این ماژول می پردازیم. ماژول ESP8266 یک ماژول فوق العاده کاربردی جهت اجرای پروژه های اینترنت اشیاست. این ماژول که مبتنی بر فناوری وای فای به تبادل داده می پردازد، می تواند به مودم های خانگی متصل شده و داده ها را در بستر اینترنت ارسال و دریافت کند. از طرف دیگر این ماژول می تواند در مد نقطه دسترسی جهت اتصال سایر دستگاه ها نظیر تلفن همراه، قرار گیرد. از دیگر قابلیت های کلیدی این ماژول علاوه بر امکانات وای فای آن، امکان برنامه نویسی آن همانند یک برد آردوینوست. به عبارت دیگر این ماژول می تواند بدون نیاز به هیچ میکروکنترلر اضافی، برنامه ها به زبان آردوینو را اجرا کند. در این قسمت به آماده سازی اولیه برد ESP جهت برنامه نویسی با آردوینو می پردازیم.  در ادامه با مرجع تخصصی آردوینو به زبان فارسی ، دیجی اسپارک همراه باشید.

 


نصب هسته ESP8266 در آردوینو


اولین قدم جهت راه اندازی و کار با ماژول ESP8266، نصب هسته آن در نرم افزار آردوینو است. به همین منظور، ابتدا مطابق تصویر زیر، بر روی گزینه file و سپس روی گزینه Preferences کلیک نمایید.

نصب هسته ESP8266 در نرم افزار آردوینو - دیجی اسپارک

 

پس از انتخاب منوی فوق، با تصویر زیر رو به رو خواهید شد. در قسمت مشخص شده می بایست آدرس لینک دانلود هسته ESP8266 برای آردویینو را قرار دهید. نصب هسته ESP8266 در نرم افزار آردوینو IDE - دیجی اسپارک

 

http://arduino.esp8266.com/stable/package_esp8266com_index.json

پس از این مرحله، نوبت به دانلود هسته برد ESP8266 می رسد. برای این منظور، بر روی گزینه Tools آردویینو کلیک نمایید. با کلیک بر روی این گزینه، ابتدا بر روی گزینه Board و سپس Board Manager، همانطور که در تصویر مشخص شده، کلیک نمایید.دانلود هسته برد ESP8266 - دیجی اسپارک

 

پس از کلیک بر روی گزینه Boards Manager، با یک منو جدید رو به رو می شوید. در کادر جستجو این منو، عبارت ESP8266 را تایپ نمایید تا مطابق تصویر، این برد در مخازن آردویینو جستجو و یافت شود. مطابق تصویر، پس از اینکه بردESP8266 یافت شد، می بایست بر روی گزینه Install کلیک نمایید تا برد نصب شود. پس از نصب، در منوی Tools، بر روی گزینه Boards کلیک نموده و عبارت Generic Esp8266 Module را انتخاب نمایید. این مورد را در تصویر زیر مشاهده می نمایید.

فرآیند نصب هسته esp8266 در آردوینو - دیجی اسپارک

 

در این مرحله هسته اصلی ESP8266 جهت برنامه نویسی از طریق آردوینو نصب شده و آماده برنامه نویسی برد هستیم. همانطور که اطلاع دارید، در این سلسله آموزش ما از برد ESP8266-12E استفاده می کنیم. البته شما برای راحتی کار می توانید از برد NODEMCU نیز استفاده کنید. در قسمت بعدی به نحوه پروگرام کردن برد و اجرای یک برنامه ساده آردوینو می پردازیم.

 


نحوه آپلود برنامه روی ESP8266-12E


جهت آپلود برنامه بر روی بردESP8266-12E نیاز به مبدل سریال به USB دارید. مبدل های سریال به USB معمولا بر روی خود خروجی تغذیه ۳٫۳ و ۵ ولت دارند. شما می بایست تغذیه ماژول ESP را از پایه ۳٫۳ ولت تامین کنید.  تصویر زیر اتصالات را جهت آپلود کد نمایش می دهد.

نحوه آپلود برنامه روی ESP8266-12E - دیجی اسپارک

 

جهت برقراری اتصالات مدار فوق، به شکل زیر عمل کنید:

  • اتصال پایه RX مبدل سریال به پایه TX ماژول ESP8266
  • اتصال پایه TX مبدل سریال به پایه RX ماژول ESP8266
  • اتصال پایه GND مبدل سریال به پایه GND ماژول ESP8266
  • اتصال پایه ۳V3 ماژول مبدل سریال به پایه VCC ماژول ESP8266
  • اتصال پایه GPIO0 به یک پایه کلید و اتصال پایه دیگر همان کلید به GND
  • اتصال پایه RESET ماژول ESP8266 به یک پایه کلید و اتصال پایه دیگر همان کلید به GND

در ادامه، جهت آپلود کد های برنامه بر روی ماژول ESP8266، ابتدا کلید پایه GPIO0 را وصل کنید تا این پایه به GND متصل گردد. سپس کلید متصل به پایه RESET را یکبار فشرده و سپس رها کنید. در این حالت ماژول ESP در حالت پروگرام قرار می گیرد.

توجه: برای راه اندازی و کار با ماژول ESP8266-12E، حتما مبدل SMD به DIP آن را می بایست تهییه کرده باشید. پس از قرارگیری در مد پروگرام، می بایست برنامه خود را دقیقا مشابه آپلود برنامه های آردوینو، بر روی برد ESP آپلود کنید. در قسمت بعدی به ارائه مثالی می پردازیم.

 


آپلود یک نمونه برنامه بر روی ESP


پس از این که در مرحله قبلی ماژول ESP در حالت پروگرام قرار گرفت، در این قسمت به آپلود یک برنامه ساده  می پردازیم. در این برنامه، خروجی تابع millis() بر روی سریال مانیتور نمایش داده می شود. ابتدا کد برنامه را مشاهده می کنید.

void setup() {
  Serial.begin(9600);

}

void loop() {
 Serial.println(millis());
 delay(1000);

}

برای آپلود کد فوق، ابتدا در نرم افزار آردوینو، ابتدا بر روی منوی Tools کلیک کرده و گزینه Boards را انتخاب کنید. پس آن گزینه Generic Esp8266 Module را انتخاب کرده وپس از انتخاب برد، بر روی گزینه آپلود کلیک کنید. آپلود برنامه بر روی بردهای ESP ممکن است گاهی اوقات زمان ببرد. بنابراین کمی صبور باشید. پس از آپلود کد، اتصال پایه GPIO0 را از زمین جدا کنید. سپس یکبار دکمه متصل به پایه RESET را یکبار فشار داده و سپس رها کنید. در این حالت برد وارد مد عادی شده و برنامه شما را اجرا می کند. خروجی این برنامه در سریال مانیتور با باودریت ۹۶۰۰ مطابق تصویر زیر، نمایش داده می شود.

 

بدین ترتیب به سادگی و با همان دستورات آردوینو، برنامه اجرا می شود. در قسمت های بعدی این سلسله آموزش به شرح کامل تری از دستورات و اجرای برنامه بر روی این برد می پردازیم.

 


اشکالات متداول حین آپلود برنامه


حین آپلود برنامه بر روی ماژول ESP8266، ممکن است با ایراداتی مواجه شوید. این ایرادات اغلب به دلیل عدم برقراری صحیح ارتباط بین برد و رایانه ناشی می شود. یکی از ایرادات متداول، پیغام خطایی با مضمون زیر است.

could not open com port

خطای فوق به دلیل عدم اتصال مبدل سریال به USB به رایانه است. اگر مبدل متصل شده اما این پیغام را مشاهده کردید، می بایست درایور آن را نصب کنید. همچنین برای اطمینان بیشتر، بر روی گزینه Tools->ports کلیک کرده و پورتی که مبدل به آن متصل است را یافته و انتخاب کنید. در کنار این، دیگر خطای معمول هنگام آپلود برنامه روی ماژول ESP8266، پیغامی با مضمون زیر است.

time out waiting for packet header

خطای فوق به دلیل عدم برقراری ارتباط صحیح پایه های سریال و یا عدم ورود ماژول ESP به مد پروگرام است. در این حالت، موارد زیر را کنترل کنید.

  • ارتباط سریال بین مبدل USB و ماژول ESP8266 به درستی برقرار شده باشد.
  • ماژول ESP8266 به درستی وارد مد پروگرام شده باشد. جهت اطمینان عملیات ورود ماژول به مد پروگرام را یکبار دیگر کنترل کنید.

 


لوازم مورد نیاز


مبدل سریال به USB

ماژول ESP8266-12E

ماژول مبدل SMD به DIP

 


جمع بندی


در بخش دوم از سلسله آموزش های پایه ای ماژول ESP8266، به سراغ نحوه راه اندازی اولیه آن پرداختیم. در این آموزش ابتدا به صورت مرحله به مرحله نحوه نصب هسته نرم افزاری ESP8266 را در نرم افزار آردوینو طی کردیم. پس از این قسمت، به نحوه قرار گیری ماژول ESP8266 در مد پروگرام پرداختیم. در نهایت با اجرای یک نمونه برنامه، نحوه عملکرد برنامه با دستورات آردوینو را بر روی این ماژول، مشاهده کردیم. در قسمت های بعدی به شرح کامل تری از امکانات شبکه ای این ماژول به کمک دستورات آردوینو، خواهیم پرداخت.

 

چنانچه مطالب این آموزش را گنک یافتید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در مطالب درج شده و یا کدها وجود دارد می‌توانید از همین طریق اطلاع رسانی کنید.

 

درباره نویسنده

معین صابری

کارشناسی ارشد رشته معماری سیستم های کامپیوتری

مالي که ز تو کس نستاند، علم است
حرزي که تو را به حق رساند، علم است
جز علم طلب مکن تو اندر عالم
چيزي که تو را ز غم رهاند، علم است
(شیخ بهایی)

تبادل نظر و رفع عیب با ثبت دیدگاه

۹۲ دیدگاه

  • با عرض سلام، اول تشکر میکنم از مطالب فوق العادتون
    من طبق اموزش شما رفتم جلو، اما وقتی خواستم اپلود کنم کد رو، با ارور espcomm_upload_mem failed
    مواجه شدم، لطفا راهنمایی بفرمایید کجای کارم ایراد داشته که با این ارور مواجه شدم؟ ماژول من هم ۱۲f , 07 هست که هردوتاش همین خطا رو داد،
    ممنون میشم راهنمایی بفرمایید

    • سلام و متشکرم از لطف شما
      این ایراد به این دلیل هست که ماژول شما وارد مد پروگرام نشده و یا اینکه اتصالات بین ماژول و مبدل سریال به درستی صورت نگرفته، برای این مورد اتصالات را به صورت زیر انجام دهید.
      اتصال پایه RX مبدل سریال به TX ماژول ESP
      اتصال پایه TX مبدل سریال به پایه RX ماژول ESP
      اتصال پایه GND مبدل سریال به GND ماژول ESP
      برای قرار گیری ماژول در مد پروگرام، باید به صورت زیر عمل کنید:
      پایه GPIO0 ماژول را به GND متصل کرده و سپس یکبار مازول را ریست کنید.
      توجه: در صورتیکه از برد تبدیل SMD به DIP برای ماژول ESP-12F و ۰۷ استفاده نمی کنید، پایه GPIO15 را حتما به کمک یک مقاومت ۱۰ کیلویی به زمین متصل کنید.

      • سلام جناب مهندس وقت بخیر. این موضوع که گفتید : ” در صورتیکه از برد تبدیل SMD به DIP برای ماژول ESP-12F و ۰۷ استفاده نمی کنید، پایه GPIO15 را حتما به کمک یک مقاومت ۱۰ کیلویی به زمین متصل کنید ” ، سوال داشتم.
        برای پروگرم کردن ماژول ESP8266 V1.0 هم همین موضوع صادق هست؟ یعنی باید پایه CH_PD اون رو پول آپ کنیم هنگام پروگرم کردن؟؟

        • سلام و متشکرم
          بله، پایه CH_PD این برد حتما باید پول آپ شود. در حقیقت این پایه، پایه فعال ساز (EN) ماژول است.

  • سلام
    تشکر از وقتی که برای اموزش میزارید
    من یک‌ سوال کلی داشتم
    زمانی که از یک کتابخانه استفاده میکنیم چجوری میشه ازهمه توابع اون کتابخانه به همراه آرگومان های ورودی تابع ها اطلاع پیدا کرد

    • سلام
      متشکرم از لطف شما
      در این زمینه از حدود چند ماه پیش، برای کتابخانه های مختلف تحلیل و بررسی، بر روی دیجی اسپارک قرار داده ایم. در لینک زیر می توانید کتابخانه هایی که تاکنون تحلیل شده اند را مشاهده نمایید.
      لینک اموزش های تحلیل کتابخانه، کلیک کنید

      اما به طور کلی برای دست یابی به لیست کامل توابع یک کتابخانه، می بایست وارد پوشه آن شوید. در آردوینو با فرض اینکه بر روی درایو c نرم افزار آن نصب شده باشد، در مسیر c://Ducuments/libraries بخشی از کتابخانه ها را می توانید مشاهده کنید. سایر کتابخانه ها در مسیر c:/programfiles/arduino/libraries قرار گرفته اند. با باز کردن پوشه یک کتابخانه، دو فایل اصلی با پسوند h. و .cpp مخصوص توابع کتابخانه هستند. فایل اول لیست کامل تابع و فیال دوم کدهای توابع را نمایش می دهد.

  • سلام مهندس میشه اموزش ساخت لامپ هوشمند بزارید که با فرمان صوتی من توسط موبایل لامپ روشن و خاموش بشه و همچنین قابلیت تغییر رنگ هم داشته باشد

  • سلام جناب مهندس
    ببینید در ماژول ESP01 من وقتی یه کد مربوط به وب سرور از طریق ماژول USB به سریال CP2102 روی ESP آپلود میکنم، کامل آپلود انجام میشه، بعد از اینکه آپلودش تموم شد، پایه GPIO 0 رو که زمین بوده و حالت پروگرم فعال بوده، از حالت زمین خارجش میکنم و ماژول رو یکبار ریست میکنم. اما بعد اینکه ریست میکنم به محض اینکه دستمو برمیدارم، ماژول ESP01 جریان خیلی زیادی از تغذیه میکشه(حدودا ۲۵۰mA !!) و رگولاتور ۳٫۳v تغذیه ام بشدت تلفات حرارتی میده

    میخوام ببینم این حالت برای شما پیش نیومده تا الآن؟؟

    چیکار باید کنیم که این اتفاق نیوفته؟؟

    اتصالات تغذیه و رابط سریال هم با اطمینان کامل صد در صدی و به شکل صحیح بستم.

    از تغذیه خارجی هم استفاده کردم و گراندها هم مشترک هستند.

    • سلام
      به نظر می رسد ماژول آسیبی دیده است. پایه CH_PD را مستقیم به VCC متصل کرده اید یا با مقاومت متصل نموده اید؟

      • یکبار بدون مقاومت متصل کردم، اما بعدا متوجه شدم باید با مقاومت پول آپ بشه. از اون به بعد با یک مقاومت ۱۰K پول آپش کردم. به نظر شما مقدار مقاومت پول آپ در ماژول های ESP بهتره چند اهم باشه؟؟ ۱۰K یا ۱K ؟؟
        پس این که آسیب دیده، هیچکارش نمیشه کرد دیگه درسته؟

        • ۱۰ کیلو مناسب هست
          به احتمال خیلی زیاد آسیب دیده است، بهتر است با ماژول دیگری تست و بررسی کنید.

  • سلام مهندس . خسته نباشید . من مازول رو میبرم رو مد پروگرام و برنامه اپلود میشه ولی بعد که ریست میکنم دیتکت نمیشه و دوباره اگه ببرم روی مد پروگرام دوباره دیتکت میشه علت از چیه بنظر شما ؟ضمنا این پایین این مطلب رو مینویسه. البته در بالا دان اپلود زده .
    Leaving…
    Hard resetting via R T S pin…
    Invalid library found in C:\Users\ali\Documents\Arduino\libraries\Adafruit_OV7670: no headers files (.h) found in C:\Users\ali\Documents\Arduino\libraries\Adafruit_OV7670

  • سلام و خسته نباشید مهندس ، خواستم تجربه بسیار سختم از اپلود کد روی ماژول esp8266 12e با همه به اشتراک بذارم و قطعا اگه دوستانی مثل من که مشکل دارن با این نکته ساده مشکلشون حل میشه ، اونم اینکه این مبدل های usb بهttl که برای پروگرام کردن استفاده میکنیم متاسفانه برق ۳٫۳ ولت درست به ماژول نمیدن و باعث دردسر و ارور میشن و من بعد از ساعتها ور رفتن و ماژول عوض کردن بالاخره مشکل رو با مازولهای تامین برق بردبورد حل کردم واگه برق ماژول esp رو از ماژول دیگه ای مثل اینی که عرض کردم (مازول برق بردبورد) بگیرن و فقط RX و TX رو به ماژول USB TO TTL وصل کنن . اینطوری برق درست به ماژول میرسه و ارور نمیده . امیدوارم نظرم کاربردی باشه . ممنون از سایت خوب دیجی اسپارک و پرسنل خوبشون

  • سلام وقتتون بخیر ،
    ببخشید من یک مشکلی برام پیش اومد
    برای نصب هسته esp وقتی گزینه نصب instal رو می زنم دانلود روی ۹۳۵ کیلوبایت گیر می کنه
    اتصال شبکه رو چک کردم با شبکه های مختلف هم چک کردم ، سرعت نت هم بالا هستش ولی دانلود نمیشه
    ایا فیلتر هستش ؟ باید از فیلتر شکن استفاذه کنم
    به نظرتون چیکار کنم؟

    • سلام
      بله، اما از VPN استفاده کنید که کل سیستم تونل شود. نه VPN هایی که صرفا مرورگر را تونل می کنند.

  • Arduino: 1.8.19 (Windows 7), Board: “Generic ESP8266 Module, Serial, 80 MHz, 40MHz, DIO, 115200, 512K (64K SPIFFS), ck”

    Sketch uses 203948 bytes (46%) of program storage space. Maximum is 434160 bytes.

    Global variables use 33190 bytes (40%) of dynamic memory, leaving 48730 bytes for local variables. Maximum is 81920 bytes.

    An error occurred while uploading the sketch

    error: Failed to open COM6

    error: espcomm_open failed

    • سلام
      پورت سریال را نرم افزار نتوانسته باز کند. از منوی tools و گزینه port، پورت مناسب را انتخاب کنید.

  • سلام
    اخر پلود برنامه گزینه done uploding میادش و هیچ اتفاق دیگه ایی نمی افته؟ چه کنم
    و این که خروجی برنامه در سریال مانیتور رو چطوری ببینم

    • پس از آپلود برنامه، کابل متصل به پایه GPIO را از زمین جدا کرده و یکبار برد را ریست(روشن/خاموش) کنید تا برنامه اجرا شود.

  • سلام مهندس صابری وقت بخیر
    من در حین آپلود کد با مشکل زیر روبرو میشوم. ایراد از نحوه ریست کردن و قرار نگرفتن ماژول esp روی حالت پروگرام هستش ؟ چون تمامی مراحل را با دقت و چنیدن بار انجام دادم ولی موفق نشدم.
    esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
    و اینکه نحوه اتصالات من ب شکل زیر هست. آیا اتصالات درست هست ؟
    https://s6.uupload.ir/files/1_9ywl.jpg
    در ضمن با عرض پوزش، یک درخواستی هم ازتون دارم، اینکه برای کسانیکه مثل من مبتدی هستند، فیلم پروگرام کردن و نحوه قرار دادن ماژول در مد پروگرام رو هم در سایت قرار دهید خیلی ممنون میشیم.

    • سلام و متشکرم از شما
      اتصالات شما با ماژول ESP8266 به خوبی برقرار نیست. لطفا به پایه های ماژول ESP(برد راه انداز) پین هدر لحیم کنید. سپس برد را در بردبورد قرار دهدی تا اتصالات را به شکلی صحیح برقرار کنید.
      ممنونم از شما مجددا
      حتما روی فیلم کار خواهیم کرد.

  • با سلام خدمت مهندس عزیز
    من در آخر که آپلود تموم میشه و ریست رو در سریال مانیتور میزنم یکسری حروف عجیب برام میاره
    البته بنده بسیار مبتدی هستم، توی پلن اتصالات منظور از GND که برای ریست و GPIO0 معرفی شده هردو باید به GNd تبدیل متصل شوند؟
    حروفی که برام توی سریال مانیتور میاد بدین شکل هست
    {l{l{l{l؟؟؟no{l{l
    البته یکسریش اینجا کپی نمیشه

  • سلام وقت بخیر مهندس
    من پروژه رو برنامه شو اپلود کردم صفحه نمایش و سنسور روشن می شد فقط توی نمایشگر عدد ۹۹۹ می داد که ازتون سوال کردم و گفتید فیلم بفرستید تا ببینم
    الان بعد یک هفته از دوباره اومدم راه اندازی کنم موقع اپلود برنامه روی چیپ esp8266 با این ارور مواجه میشم

    EROOR compiling for boared generic esp8266

    اتصالات رو چک کردم
    شک خودم داخل مد پروگرم چیپ باشه
    چه کنم؟
    یک سوال
    یک led ابی روی چیپ قرار داره اون باید توی چه وضعیتی باشه
    وقتی مبدل سریال متصل می کنم پورت لپ تاپ ال ایی دی روشن میشه و وقتی پایه GPI0 رو به زمین متصل می کنم خاموش میشه
    یک سوال دیگه
    مبدل سریال من روش LED داره وضعیت این چراغا باید چطوری باشه

    • سلام و متشکرم از شما
      از تاخیر در پاسخگویی عذر خواهی می کنم
      عدد ۹۹۹ به دو دلیل، یکی به خاطر عدم قرارگیری صحیح انگشت روی سنسور و دیگر به دلیل عدم برقراری اتصالات صحیح با ESP اتفاق افتاده است.
      مورد خطایی که شما گفتید ارتباطی به اتصالات ندارد، این مورد نرم افزاری است. در گزینه بردها، چه بردی را انتخاب کرده اید؟

  • Arduino: 1.8.19 (Windows 7), Board: “Generic ESP8266 Module, 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, dtr (aka nodemcu), 26 MHz, 40MHz, DOUT (compatible), 1MB (FS:64KB OTA:~470KB), 2, nonos-sdk 2.2.1+100 (190703), v2 Lower Memory, Disabled, None, Only Sketch, 115200”

    In file included from C:\Users\7\Documents\Arduino\libraries\U8g2\src\clib\mui_u8g2.c:97:

    C:\Users\7\Documents\Arduino\libraries\U8g2\src\clib\mui_u8g2.h:41:10: fatal error: mui.h: No such file or directory

    ۴۱ | #include

    | ^~~~~~~

    compilation terminated.

    exit status 1

    Error compiling for board Generic ESP8266 Module.

    سلام جناب مهندس ، روز مهندس رو بهتون تبریک می گم
    ببخشید این ارور رو موقع کامپایل و اپلود دارم ، مشکلم از کجاست؟

    بعدش یک سوالی دارم ، یک LED روی ماژل ESP8266 قرار داره اون نشانگر چی هستش؟

    • سلام مجدد
      کتابخانه U8G2 را آیا بروز رسانی کرده اید؟ در منوی TOOLS و سپس MANAGE LIBRARIES این کتابخانه را با تایپ عبارت U8G2 یافته و ببینید با چه ورژنی نصب شده است؟

      • سلام جناب مهندس
        ببخشید نمی دونم سایت چه مشکلی داشت کامنت هارو نمی گذاشت بزارم برای همین چندتا سوال شد
        خدمتون عرض کنم هنوز این ارور رو دارم .Error compiling for board Generic ESP8266 Module.
        ماژول رو esp8266 انتخاب کردم که ورژنش ۳٫۰٫۱ هستش. ورژن u8g2 هم ۲٫۳۱٫۱ هستش .
        بهتره روی چه ورژنی باشه

  • سلام جناب مهندس وقت بخیر
    من با این ارور روبه رو می شم
    مشکلم از کجاست
    Arduino: 1.8.19 (Windows 7), Board: “Generic ESP8266 Module, 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, dtr (aka nodemcu), 26 MHz, 40MHz, DOUT (compatible), 1MB (FS:64KB OTA:~470KB), 2, nonos-sdk 2.2.1+100 (190703), v2 Lower Memory, Disabled, None, Only Sketch, 115200”

    In file included from C:\Users\7\Documents\Arduino\libraries\U8g2\src\clib\mui_u8g2.c:97:

    C:\Users\7\Documents\Arduino\libraries\U8g2\src\clib\mui_u8g2.h:41:10: fatal error: mui.h: No such file or directory

    ۴۱ | #include

    | ^~~~~~~

    compilation terminated.

    exit status 1

    Error compiling for board Generic ESP8266 Moduln .

    • مشکل از عدم صحیح کپی شدن کدها در برنامه است. برای این مورد لطفا یکبار دیگر و با دقت کدها را کپی کنید. مشکلی در ابتدای برنامه با # وجود دارد.

  • سلام با تشکر از پروژه اموزشی جذابتون من بعد انجام پروژه مقابل مقدار sبا عدد -۹۹۹مواجه میشم وگاهی با طی زمان زیادی مشکل حل میشه و گاهی هم حل نمیشه علت چی میتونه باشه ؟؟؟

    • سلام و متشکرم از لطف شما
      بابت تاخیر در پاسخگویی عذرخواهی می کنم
      باید انگشت خود را صحیح قرار دهید. همینطور که در حین نمونه برداری تا دریافت پاسخ صححی، انگشت خود را روی سنسور نگاه دارید.

      • سلام یک سوال من کد جمر وای فای رو که تو سایت گیت هاب بود ریختم روی
        بعد چیپ esp8266 رو از روش درآوردم و اتصالات به ال سی دی وصل کردم ولی کار نمیکنه قبلش که روی nodemcu بود کار میکرد

        • سلام
          راه افتادن تراشه esp به الزامات زیادی نیاز دارد، البته شاید موقع دمونتاژ کردن تراشه آسیب دیده باشد!

  • با سلام و عرض ادب،
    امکانش هست با استفاده از رزبری پای بدون استفاده از مبدل این برنامه ریزی روی ESP8266 رو انجام بدیم یا اینکار لزوما باید با مبدل انجام بشه؟

    • سلام و متشکرم
      روال پیچیده می شود. اگر می خواهید تحت سیستم عامل لینکوس برد رزبری کار کنید مشکلی نیست، اما برای ویندوز کار پیجیده می شود.

  • سلام من برد آردیونو یونو وایفای خریدم که ماژول esp 8266هم روی خود برد هست از طریق دیپ سویچ ارتباط ماژول رو ست میکنم ولی وقتی میخوام کد رو آپلود کنم ارور تایم اوت میده بنظرم مشکل از مودش باشع خواستم مودش تغییر بدم ولی چک کردم ماژول پین gpio0 نداره که مودش تغییر بدم ممنون میشم راهنماییم کنید .

  • سلام من از ماژول ۸۲۶۶-۰۱ استفاده می کنم و رابط ftdi pl2303
    تمام اتصالات رو چندین مرتبه چک کردم و از درست بودنشون مطمئن هستم ولی دائم این خطا رو میده
    A fatal esptool.py error occurred: Failed to connect to ESP8266: Timed out waiting for packet header
    وقتی در حال پروگرام هستم led tx روی رابط ftdi هم چشمک می زنه
    روی چند تا ماژول ۸۲۶۶ هم چک کردم ولی همین ارور رو میده
    مشکل از کجاست و چطور می تونم حلش کنم ؟؟

  • . Variables and constants in RAM (global, static), used 28092 / 80192 bytes (35%)
    ║ SEGMENT BYTES DESCRIPTION
    ╠══ DATA 1496 initialized variables
    ╠══ RODATA 924 constants
    ╚══ BSS 25672 zeroed variables
    . Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 59747 / 65536 bytes (91%)
    ║ SEGMENT BYTES DESCRIPTION
    ╠══ ICACHE 32768 reserved space for flash instruction cache
    ╚══ IRAM 26979 code in IRAM
    . Code in flash (default, ICACHE_FLASH_ATTR), used 236244 / 1048576 bytes (22%)
    ║ SEGMENT BYTES DESCRIPTION
    ╚══ IROM 236244 code in flash
    esptool.py v3.0
    Serial port COM16
    Connecting…….._____….._____….._____….._____…..
    Failed uploading: uploading error: exit status 2
    سلام
    تمام اتصالات هم درسته

    • آیا ماژول به درستی به مد پروگرام رفته؟
      مازول را چگونه در مد پروگرام قرار داده اید؟

  • سلام
    برای راه اندازی و کار با nodemcu فقط کافیست از طریق micro USB کامپیوتر رو به تراشه متصل کنم و برنامه رو پروگرم کنم؟ اگه راهنمایی مرحله به مرحله ای هم برای nodemcu بذارید ممنون میشم

    • سلام
      بله همین روال کافیست. با اتصال کابل هم برد پروگرام می شود و هم تغذیه خواهد شد.

  • سلام
    ممنوم از آموزش کاملتون
    ممکنه راهنمایی کنید از کجا میتونم درایور ماژول رو پیدا کنم؟ چون سایت هایی که بررسی کردم برای Nodemcu گذاشتن

    • سلام و متشکرم از شما
      در سایت daneshjookit.com نام مبدل را سرچ کنید و وارد صفحه محصول شوید. در قسمت دانلود فایل را دانلود کنید.

  • سلامو درود خدمت شما و تیم دیج اسپارک من یک مشگل داشتم حین اپلود. برنامه اپلود نمیشه وا ارور “time out waiting for packet header” مشگل از چیه همه چیز به درستی کار میکنه ولی این ارور نشون داده میشه امکانش هست از شناسایی نشدن پورت یا وصل نبودن برد به منبع تغذیه باشه

    • سلام
      اتصالات uart بین رایانه و esp را چک کنید. همچنین چک کنید که ماژول در مد پروگرام قرار گرفته شده باشد

  • سلام ایا می توان برای تغزیه این ماژول، (بعد از اپلود کد )ان را به طور مستقیم به ۵ ولت وصل کرد ؟

    • با سلام
      برای بردهای ESP01 و ESP12 بایستی از ولتاژ ۳٫۳ استفاده کنید. برای بردهایی که تراشه esp روی آنها استفاده شده است از جمله Nodemcu میتوانید از ولتاژ ۵ ولت استفاده کنید.

  • سلام من ماژول esp12f را به صورت مستقیم(بدون هیچ مقاومتی) به nodemcu وصل کردم . یعنی
    (tx به tx )و(rx به rx)و (gnd به gnd)و (vccبه vcc)
    ابتدا ال ای دی رو ماژول esp12f روشن شد و بعد خاموش شد و بعد از چند ثانیه دوباره روشن شد و خاموش شد و دیگه ال ای دی روی esp12f با اتصال تعزیه روشن نشد .
    آیا ماژول esp12f آسیب دیده است ؟
    آیا می توان آن را به نحوی تعمیر کرد ؟

  • سلام خسته نباشید . من یک عدد ماژول وای فای esp12-f دارم . این ماژول رو به صورت مستقیم به node mcu برای پروگرام کردن وصل کردم : یعنی (tx بهtx) (rx به rx) (gnd به gnd ) (vcc به vcc) . وقتی که این کار را انجام دادم، بعد ال ای دی رو برد esp12 روشن شد و خاموش شد . بعد از چند ثانیه دوباره روشن شد و بعد خاموش
    شد. اما دیگه بعد از اتصال ال ای دی رو ان روشن نشد و نمی توانستم هیچ برنامه ای را روی ان اپلود کنم .
    میشه راهنماییم کنید ؟
    ایا برد من اسیب دیده ؟
    ایا راهی برای برطرف کردن ای اسیب هست ؟
    سپاس فراوان

  • سلام خسته نباشید. اگر از مبدل smd به dip استفاده نکنیم یا پایه GPIO15 را پول اپ نکنیم،امکان سوختن یا اسیب دیدن ماژول esp12f هست ؟؟

  • A fatal esptool.py error occurred: Failed to connect to ESP8266: Timed out waiting for packet header
    برای چه اینطور میشود هنگام اپلود کد

  • سلام خسته نباسید . ایا می توان بعد از اپلود کد روی esp12e ، ولتاژ۳٫۳ ولت را به طور مستقیم و بدون برد راه انداز و مقاومت و خازن به esp12e وصل کرد ؟؟؟؟؟

  • سلام مهندس . خسته نباشید . یک سوال داشتم. ایا میشه تغزیه ماژول esp12e/f را با باتری ۳٫۷ ولت لیتیوم پلیمر وصل کرد ؟؟؟

  • سلام و خدا قوت با تشکر از آموزش روان بعد از راهنمایی شما ماژول رو بستم بعد از آپلود برنامه خطا میده
    . Variables and constants in RAM (global, static), used 28284 / 80192 bytes (35%)
    ║ SEGMENT BYTES DESCRIPTION
    ╠══ DATA 1496 initialized variables
    ╠══ RODATA 1092 constants
    ╚══ BSS 25696 zeroed variables
    . Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 60675 / 65536 bytes (92%)
    ║ SEGMENT BYTES DESCRIPTION
    ╠══ ICACHE 32768 reserved space for flash instruction cache
    ╚══ IRAM 27907 code in IRAM
    . Code in flash (default, ICACHE_FLASH_ATTR), used 241860 / 1048576 bytes (23%)
    ║ SEGMENT BYTES DESCRIPTION
    ╚══ IROM 241860 code in flash
    esptool.py v3.0
    Serial port COM8
    Connecting….
    Chip is ESP8266EX
    Features: WiFi
    Crystal is 26MHz
    MAC: 10:52:1c:e8:f3:9a
    Uploading stub…
    Running stub…
    Stub running…
    Configuring flash size…
    Auto-detected Flash size: 4MB
    Flash params set to 0x0340
    Compressed 276512 bytes to 202839…
    Writing at 0x00000000… (7 %)
    Writing at 0x00004000… (15 %)
    Writing at 0x00008000… (23 %)
    Writing at 0x0000c000… (30 %)
    Writing at 0x00010000… (38 %)
    Writing at 0x00014000… (46 %)
    Writing at 0x00018000… (53 %)
    Writing at 0x0001c000… (61 %)
    Writing at 0x00020000… (69 %)
    Writing at 0x00024000… (76 %)
    Writing at 0x00028000… (84 %)
    Writing at 0x0002c000… (92 %)
    Writing at 0x00030000… (100 %)
    Wrote 276512 bytes (202839 compressed) at 0x00000000 in 18.1 seconds (effective 122.4 kbit/s)…
    Hash of data verified.

    Leaving…
    Hard resetting via RTS pin…
    به serial monitor وصل نمیشه
    Port monitor error: EOF. Could not connect to COM8 serial port.