سلام
هدف این تاپیک اموزش نحوه نصب فریور at comman بر روی ماژول WeMos D1 Mini با هسته wifi وای فای ESP8266EX هست؛
نمیدونم ماژول من مشکل داشت که در حالت پیش فرض نمیشد at comman رو روش ارسال کنم و جواب بگیرم ویا در حالا پیش فرض همینطوری هست؛ تا جایی که مطالعه کردم؛ گفته شده باید بصورت دستی نصب بشه؛
ولی به هر جهت در ادامه آموزش نصب frameware برای اجرای دستورات ات کامند رو باهم مرور میکنیم؛
-------------------
ماژولی که دارم صبحت میکنم که در تصویر زیر میبینید؛ برای کار با شبکه های بیسیم wifi هست؛ که چند طریق میشه ازش استفاده کرد؛ یکی از این روشها فرستادن دستورات AT به ماژول و گرفتن جواب هست؛
ابتدا باید فایلهای bin مورد نیاز رو دابلود کنیم؛ فایلها در مسیر زیر هستند:
کد php:
https://github.com/espressif/ESP8266_NONOS_SDK
یا میتونید به شکل فایل zip دانلود کنید:
کد php:
https://github.com/espressif/ESP8266_NONOS_SDK/archive/v2.2.0.zip
این فایل رو در دسکتاپ و در پوشه زیر از حالت فشرده در میاریم
-------
مرحله دوم دریافت فایل ESPTool برای اینکه حافظه فلش رو پاک کنیم و فریمور جدیدمون رو بریزیم داخال ماژول لازمه؛
اگر کاربر ویندوز هستید به صفحه زیر برید:
کد php:
https://www.espressif.com/en/support/download/other-tools
و از قسمت Flash Download Tools فایل Flash Download Tools (ESP8266 & ESP32) رو دانلود کنید؛ که میشه این لینک: ( 3.6.4 2018.03.06)
کد php:
https://www.espressif.com/sites/default/files/tools/esp32esp8266_rf_performance_test_en.zip
اگر کاربر لینوکس هستند آدرس زیر رو در دستکتاپ clone کنید
کد php:
https://github.com/espressif/esptool
----------------
مرحله نهایی - نصب فریمور :
کد php:
bin/boot_v1.7.bin 0x0000
bin/at/512+512/user1.1024.new.2.bin 0x01000
bin/esp_init_data_default.bin 0x3fc000
bin/blank.bin 0x7e000
bin/blank.bin 0x3fe000
در بالا نام هر فایل bin و ادرسی که باید در حافظه فلش ماژول نوشته بشه رو میبینید؛
**این آدرس ها از راهنمای این ماژول که در زیر پیوست شده بیرون کشیده شده؛ برای اطلاع بیشتر به این pdf مراجعه کنید
در ویندوز فایل esp32esp8266_rf_performance_test_en.zip رو از حالت فشرده در میاریم؛ و از داخل پوشه فایل ESPFlashDownloadTool_v3.6.4.exe اجرا مکنیم؛ چیزی شبیه به تصویر زیر:
و گزینه اول esp8266 download tool رو میزنیم؛ و قتی برنامه باز شدی؛ فایل های بالا رو همراه با ادرسشون به برنامه میدیم:
** فایلهای بالا در پوشه ی ESP8266_NONOS_SDK-2.2.0 ؛ قسمت bin موجود هستند ..
** آدرس ها رو باید دستی وارد کنید و عین نوشته ی بالا وارد کنید؛
پورت مورد نظر که دستگاه بر روی اون ست شده رو وارد کنید
baud rate رو روی 115200 بزارید؛ و start بزنید؛
و تمام
----
کاربران لینوکس هم از اسکریپت زیر استفاده کنند:
کد php:
#!/bin/sh
ESPToolDir="$HOME/Desktop/esp/dl/esptool"
FirmwareDir="$HOME/Desktop/esp/dl/ESP8266_NONOS_SDK-2.2.0"
cd "$FirmwareDir"
port=/dev/ttyUSB0
if [ ! -c $port ]; then
port=/dev/ttyUSB1
fi
if [ ! -c $port ]; then
echo "No device appears to be plugged in. Stopping."
fi
printf "Writing AT firmware to the Wemos D1 Mini in 3..."
sleep 1; printf "2..."
sleep 1; printf "1..."
sleep 1; echo "done."
echo "Erasing the flash first"
"$ESPToolDir/esptool.py" --port $port erase_flash
"$ESPToolDir/esptool.py" --chip esp8266 --port $port \
write_flash -fm dio -ff 20m -fs detect \
0x0000 "$FirmwareDir/bin/boot_v1.7.bin" \
0x01000 "$FirmwareDir/bin/at/512+512/user1.1024.new.2.bin" \
0x3fc000 "$FirmwareDir/bin/esp_init_data_default_v08.bin" \
0x7e000 "$FirmwareDir/bin/blank.bin" \
0x3fe000 "$FirmwareDir/bin/blank.bin"
echo "Check the boot by typing: miniterm $port 74800"
echo " and then resetting. Use Ctrl-] to quit miniterm,"
وتمام
--------------------------------------
--------------------------------------
--------------------------------------
تست و اجرا:
وقتی دکمه ریست رو میزنیم این ماژول با baud rate ؛ 74800 یک سری اطلاعات رو برای ما ارسال میکنه؛ پس برای اینکه ببینیم کارمون درست انجام شده یا نه؛ baud rate ترمینالمون رو روی 74800 تنظییم میکنیم و یکبار دکمه ریست روی ماژول رو میزنیم؛
عکس بالا مربوط ماژول من در لینوکس هست؛ همین نتیجه و یا شبیه این نتیجه هم در ویندوز با همین baud rate بدست میاد
----------
تست at command
برای تست at command باید پورت مورد نظرمون رو با baud rate 115200 باز کنیم؛
همون طور که میبینید وقتی دستور AT+GMR رو میزنم؛ ورژن و اطلاعات دیگه ای میده؛ تصویر بالا با miniterm در لینوکس گرفته شده؛ که همین نتیجه هم در ویندوز گرفته شده
*** تمامی دستوراتی که این فریمور پشتیبانی میکنه در pdf زیر ضمیمه شده است
--------------
--------------
--------------
در آخر هم به تشکر ویژه از ( هادی خ 73 ) بابت راهنمایی و کمک دادن این مباحث
--------
در پست های بعدی چند تا نرم افزار دیگه؛ AT کامندهایی که مفید هستند؛ و فریمور خود این ماژول رو قرار میدم
دستم درد نکنه خیلی زحمت کشیدم
منبع:
کد php:
https://wiki.wemos.cc/tutorials:get_started:revert_to_at_firmware