Изменения

ESP

4638 байт добавлено, 22:00, 28 августа 2021
Нет описания правки
= Общая информация =
* [http://www.esploradores.com/wp-content/uploads/2018/04/A-Beginners-Guide-to-the-ESP8266-1.pdf A Beginner's Guide to the ESP8266]
 
= ESP8266 =
Инструкция подготовлена Владимиром Слугиным на базе описания следующего видео: https://www.youtube.com/watch?v=64_9O9sKuqM
== Настройка IDE ==
# Установить IDE (http://www.arduino.cc/en/Main/Software)
# Запустить [[может использовать::Arduino IDE]], далее Файл – Настройки – в поле Additional Boards Manager URLs вставить ссылку http://arduino.esp8266.com/package_es...
# Инструменты – Плата – Boards Manager
# В Boards Manager найти и установить (около 130 мб) [[маркировка::ESP8266 ]] by ESP8266 Community Forum
# В меню Инструменты выбрать Плата – Generic ESP8266. При необходимости установить: частота - 80MHz, скорость записи - 9600, Flash Size - 512K.
== Сборка проекта ==
Для сборки необходимо выполнить следующую команду:
<codepre>
./build.py /path/to/sketch/
</codepre>
Собранный проект будет в подкаталоге в '<code>/tmp'</code>.
После загрузки нужно перезагрузить МК -- можно через кнопку, если таковая есть на плате.
== Bluetooth ==* [https://github.com/espressif/esp-idf/tree/master/examples/bluetooth Примеры программ]* https://hackaday.io/project/28904-read-phone-notifications-using-esp == Troubleshooting ======= Прошивка загрузилась, но не работает ====
В этом случае следует перезагрузить МК.
== = Brownout detector was triggered ======= Симптомы ====При работе с Bluetooth система выдаёт в последовательный порт следующее сообщение:<code><pre>ets Jun 8 2016 00:22:57 rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)configsip: 0, SPIWP:0xeeclk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00mode:DIO, clock div:1load:0x3fff0018,len:4load:0x3fff001c,len:956load:0x40078000,len:0load:0x40078000,len:13076entry 0x40078ad0Starting BLE wor0k! Brownout detector was triggered</pre></code> ==== Причина ====Использование BLE приводит к повышению энергопотребления. Если источник питания не может обеспечить необходимое напряжение, то при падении напряжения до заданного минимума срабатывает "brownout detector" и микроконтроллер автоматически перезагружается. Это сделано для того, чтобы МК не находился в промежуточном состоянии "вроде работает, а вроде и нет", так как в этом случае возможны случайные сбои в его работе, которые могут привести к выходу МК из строя.<ref name="brownout-detector">https://electronics.stackexchange.com/questions/37561/what-is-a-brownout-condition</ref> ==== Решение ====Заменить USB-провод подключения на более качественный, или использовать более мощный БП для запитки МК. === Watchdog reset ======= Симптомы ====На монитор приходят сообщения, похожие на <code><pre>Exception (0):epc1=0x4021372a epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000 >>>stack>>> ctx: syssp: 3fffed10 end: 3fffffb0 offset: 01a03fffeeb0: 00000000 402132ac 0000004c 40100808 3fffeec0: 9b0110ac e50110ac 3fffef30 402132ac 3fffeed0: 3ffef15a 3ffef134 00000002 3ffed5b0 3fffeee0: 3ffee434 000000f8 000000f8 401005b8 3fffeef0: 3fffdc80 3ffeee5c 3ffef11c 3ffeeea4 3fffef00: 00000608 3ffee84c 3ffef134 4020aa8c 3fffef10: 3fffdc80 3ffeee5c 3ffef11c 4020a8a7 3fffef20: 402298f6 3ffeee5c 3ffef11c 40229907 3fffef30: 3ffef144 3ffef134 00000000 3fffdcb0 * [3fffef40: 3ffedca8 00000000 3ffef11c 4022b573 3fffef50: 40000f49 3fffdab0 3fffdab0 40000f49 3fffef60: 40000e19 40001878 00000004 00000000 3fffef70: 3fffff10 aa55aa55 00000000 401047dc 3fffef80: 401047e2 00000004 00000000 00000000 3fffef90: 4010000d 40102f8e 00040000 b302b935 3fffefa0: 40100a94 3fffef3c 40100a41 3fffff68 3fffefb0: 3fffffc0 00000000 00000000 feefeffe 3fffefc0: feefeffe feefeffe feefeffe feefeffe...  <<<stack<<<  ets Jan 8 2013,rst cause:4, boot mode:(3,6) wdt resetload 0x4010f000, len 1384, room 16 tail 8chksum 0x2dcsum 0x2dv951aeffa~ld</pre></code>  ==== Причина ====Сторожевой таймер может срабатывать из-за недостаточного уровня питания, либо реже - утечки памяти.Команды в духе ESP.wdtDisable(); ESP.wdtFeed(); не помогут. Вочдог находится на какой-то внещней схеме.<ref name="wstresetreasons">https://github.com/espressifesp8266/esp-idfArduino/treeissues/master3535</examplesref> yield(); автору тоже не помог.  ==== Решение ==== Можно попрыгать вокруг вашего устройства с бубном. По крайней мере, этот метод не применялся. А можете разобраться, как работает Arduino ESP8266/bluetooth Примеры программ]ESP32 Exception Stack Trace Decoder.
= Общая информация =
* http://www.esp8266learning.com/wemos-oled-shield-example.php
* http://arduino-project.net/oled-l2c-arduino-uno/
 
= [[маркировка::ESP8285]] + WiFi Repeater =
<code><pre>
$ apt install esptool
$ cd $ESP_REPEATER_SOURCE_PATH/firmware
$ esptool --port /dev/ttyUSB0 write_flash -fs 1MB -fm dout 0x00000 0x00000.bin 0x02000 0x02000.bin
</pre></code>
 
https://gustavovelascoh.wordpress.com/2017/11/07/how-to-set-a-wifi-repeater-using-an-esp8285/
 
= Ссылки =
<references/>
[[Категория:База знаний]]