Views: 7698
Первое знакомство, сначала надо его купить… http://voron.ua/catalog/024404
Схема для подключения и тестирования
По схеме ставим две кнопки, сброс и кнопку BT2, для перевода в режим обновления прошивки. Если надо сделать аппаратный сброс нажимаем сброс (в зависимости от прошивки) светодиод моргнет два раза, если перевести в режим обновления прошивки, нажимаем и удерживаем BT2 и нажимает и отпускаем сброс, потом отпускаем BT2. Светодиод моргнет короткой вспышкой. Резистор R3 для возврата модуля из режима глубокого сна. Суть возврата, это при подаче команды AT+GSLP модуль переходит в режим глубокого сна, для возврата его можно вывести только через аппаратный сброс, для этого в модуле запускается таймер (время задается в команде) и его выход выведен на выход GPIO15, соединив вывод сброс с этим выводом мы активируем опцию “просыпания” модуля. Для работы с связке с микроконтроллером, запуск модуля можно использовать n-channel транзистор, стоком подключено к точке цепи сброса.
Изготовление прототипа для тестирования:
Все было собрано с использованием печатных плат из проекта Иллисси (проект умер, но платы делают свое дело!)
Обновление прошивки
(на 18/04/2016 – ESP8266 NONOS SDK V1.5.3 и ESP8266 RTOS SDK v1.4.0)
Для обновления прошивки модуля, используйте официальный инструмент от Espressif и выберите соответствующий размер флэш вашего модуля.
Официальная программа обновления, можно загрузить https://www.espressif.com/en/support/download/other-tools или http://bbs.espressif.com/viewtopic.php?f=5&t=433.
1. 4Mbit флэш
С выпуском версии ESP8266 NONOS SDK v1.5.0, AT_V0.51, прошивка версии требует 8Mbit или больший размер флэш. Все версии последние больше не предназначены для 4Mbit Flash!
2. 8Mbit флэш
Если размер флэш составляет 8 Мбит или больше, вы можете использовать режим загрузки, который поддерживает обновление встроенного программного обеспечения AT через WiFi с помощью команды “AT+CIUPDATE”. Если используете Espressif флэш программу загрузки и выберите флэш размер: 8Mbit.
bin файл | Адрес размещения | Описание |
esp_init_data_default.bin | 0xFC000 | Необязательный файл, внем распологаются настройки RF по умолчанию |
blank.bin | 0x7E000 | Инициализировать области флэш-памяти параметров пользователя |
blank.bin | 0xFE000 | Инициализировать области флэш-памяти параметров системы |
boot.bin | 0x00000 | \bin |
user1.1024.new.2.bin | 0x01000 | \bin\at\512+512 |
3. 16 Мбит флэш, карта: 512KB + 512KB
Для программы Espressif флэш загрузки и выберите флэш размер: 16Mbit.
bin файл | Адрес размещения | Описание |
esp_init_data_default.bin | 0x1FC000 | Необязательный файл, внем распологаются настройки RF по умолчанию |
blank.bin | 0x7E000 | Инициализировать области флэш-памяти параметров пользователя |
blank.bin | 0x1FE000 | Инициализировать области флэш-памяти параметров системы |
boot.bin | 0x00000 | \bin |
user1.1024.new.2.bin | 0x01000 | \bin\at\512+512 |
4. 16 Мбит флэш, карта: 1024KB + 1024KB
Для программы Espressif флэш загрузки и выберите флэш размер: 16Mbit-С1.
bin файл | Адрес размещения | Описание |
esp_init_data_default.bin | 0x1FC000 | Необязательный файл, внем распологаются настройки RF по умолчанию |
blank.bin | 0xFE000 | Инициализировать области флэш-памяти параметров пользователя |
blank.bin | 0x1FE000 | Инициализировать области флэш-памяти параметров системы |
boot.bin | 0x00000 | \bin |
user1.2048.new.5.bin | 0x01000 | \bin\at\1024+1024 |
5. 32 Мбит флэш, карта: 512KB + 512KB
Для программы Espressif флэш загрузки и выберите флэш размер: 32Mbit.
bin файл | Адрес размещения | Описание |
esp_init_data_default.bin | 0x3FC000 | Необязательный файл, внем распологаются настройки RF по умолчанию |
blank.bin | 0x7E000 | Инициализировать области флэш-памяти параметров пользователя |
blank.bin | 0x3FE000 | Инициализировать области флэш-памяти параметров системы |
boot.bin | 0x00000 | \bin |
user1.1024.new.2.bin | 0x01000 | \bin\at\512+512 |
6. 32 Мбит флэш, карта: 1024KB + 1024KB
Для программы Espressif флэш загрузки и выберите флэш размер: 32Mbit-С1.
bin файл | Адрес размещения | Описание |
esp_init_data_default.bin | 0x3FC000 | Необязательный файл, внём распологаются настройки RF по умолчанию |
blank.bin | 0xFE000 | Инициализировать области флэш-памяти параметров пользователя |
blank.bin | 0x3FE000 | Инициализировать области флэш-памяти параметров системы |
boot.bin | 0x00000 | \bin |
user1.2048.new.5.bin | 0x01000 | \bin\at\1024+1024 |
Заметки:
• Убедитесь, что правильно BIN (/ESP8266_NONOS_SDK/bin/at) уже в микросхеме (ESP8266), прежде чем можно использовать команды AT, приведенные в этой документации.
• AT уже принял приоритет 0 и 1 из system_os_task, поэтому только одна задача приоритета 2 разрешается устанавливать пользователем.
• AT возвращает сообщения ниже, чтобы показать статус Wi-Fi подключения станции ESP8266
‣ WiFi Connected – Wi-Fi подключен
‣ WiFi GOT IP – ESP8266 станция получила IP от AP
‣ WiFi DISCONNECT – Wi-Fi отключен
Как обновить свой модуль, заводской прошивкой.
-
- Заходим на сайт производителя http://espressif.com/en/support/download/sdks-demos?keys=&field_technology_tid=All&field_type_tid%5B%5D=14 и выбираем необходимою сборка последняя ESP8266 NONOS SDK V1.5.3 и ESP8266 RTOS SDK v1.4.0.
- Скачиваем нужную сбоку. получаем файлы esp8266_nonos_sdk_v1.5.3_16_04_18_0.zip (esp8266_rtos_sdk_v1.4.0_16_02_26_0.zip).
- Распаковываем.
- Загружаем программу для прошивки ESP_DOWNLOAD_TOOL_V2.4.exe, откроется два окна.
- Выполняем настройку, это первое – порт с которым связан модуль и скорость, стандартная 115200 (но если нет связи пробуйте 9600). В моем варианте это был com5 и 115200.
- Проверяем, конфигурацию нашего модуля, для этого незабываем его перевести в режим обновления. Нажимает кнопку START. Выполняется чтение данных с модуля
(True, []) test running : False serial port opened Connecting... chip sync ok! 0x3ff00050: d2050000 0x3ff00054: 020007b6 0x3ff00058: 6400b000 0x3ff0005c: 005ccf7f EFUSE MODE : 1 reg0:d2050000 reg1:020007b6 reg2:6400b000 reg3:005ccf7f check_err_0: 0b check_err_1: 00 check_err_2: 00 check_err_3: 02 check_err_4: 0b ==================== EFUSE NORMAL MODE ==================== ========================= CRC IN MODE 1: crc_calc_res: 100 target crc val: 100 ========================= ========================= CRC IN MODE 1: crc_calc_res: 5 target crc val: 5 ========================= ================== EFUSE LOG: ====================== EFUSE LOG: --------------- REG0:D2050000 REG1:020007B6 REG2:6400b000 REG3:005CCF7F ---------------- ==================== EFUSE NORMAL MODE ==================== EFUSE CHECK PASS... ================= reg2>>13: 5 ================= 48bit mac debug: ----------------------- 5c cf 7f 07 b6 d2 ID FOR XM: 06 40 00 00 00 00 50 00 XM_ID: 0640000000005000 ----------------------- crc_efuse_4bit: 0 crc_calc_4bit: 3 48bit mac MAC AP : 5E-CF-7F-07-B6-D2 MAC STA: 5C-CF-7F-07-B6-D2 get mac res: True ('tttest uuuuuuuuuuart : uart reg: ', 460) (' baudrate: ', 115200) get crystal: 26496000 head: 0 ;total: 0 erase size : 0 get flash id : 0xff1640e0 manufacturer_id: 0xe0 device_id: 0x4016 vendor: 224 mode: 64 size: 22 com closed
- мой модуль имеет следующие параметры
flash vendor:
E0h : N/A
flash devID: 4016h QUAD; 32Mbit
crystal: 26 Mhz - Я буду прошивать для варианта 6. 32 Мбит флэш, карта: 1024KB + 1024KB, смотрим в таблицу и настраиваем программу для прошивки модуля последней версией.
- Проверяем командой (используем программу CommUart Assistant)
- На этом обновление модуля закончено.
Примечание, при старте и перезапуске модуля видно, что на выходе UART присутствует неопределенное состояние, которое воспринимается как “мусор” в виде разного рода символов.
Тестирование AT команд
Для тестирования удобно использовать терминальные программы китайской фирмы Cmsoft Technology. Загрузить пакет программ для дальнейшей работы
ESP8266 ESP-12F терминальный софт 1.39 MB 1160 downloads
Catcatcat_терминальный_софт.rar NetAssist PuTTY SSCOM ...Особенности программа CommUart Assistant предназначена для отладки AT команд, это возможность сохранять команды в стеке и потом их оперативно вызывать:
Менеджер команд:
Использование, необходимо ввести команду в окне и нажать Энтер (формируем в команде код возврата каретки и код перевода строки, эти коды необходимы, так как они являются для модуля окончанием команды и условием её выполнения). Нажимая клавишу Send отсылаем её в порт. Для записи устанавливаем курсор в окно ввода, нажимает Ctrl+A – выделяем все, Ctrl+S и сохраняем набранную команду в менеджере.
Базовые AT команды
Команда | Описание |
AT | Тест AT для проверки связи при включении |
AT+RST | Перезапуск модуля |
AT+GMR | Просмотр информации о версии |
AT+GSLP | Enter deep-sleep mode Вход в режим глубокого сна |
ATE | AT команды эхо или нет |
AT+RESTORE | Сброс к заводским настройкам |
AT+UART | UART конфигурация (не рекомендуется для новых проектов) |
AT+UART_CUR | UART текущая конфигурация |
AT+UART_DEF | UART по умолчанию конфигурация, с сохранением на флэш |
AT+SLEEP | Режим сна |
AT+RFPOWER | Установка значения мощности радио передатчика |
AT+RFVDD | Установить RF TX мощность в соответствии с VDD33 |
Команды
1. AT – тест связи с модулем по UART при включении
Тип этой команды “выполнено”. Он используется для тестирования функции настройки беспроводного модуля Wi-Fi.
AT – Test AT startup | |
Отклик | OK |
Параметр | null |
Пример (команда – ответ) | AT
OK |
2. AT+RST – Перезапуск модуля
Тип этой команды “выполнено”. Он используется, чтобы перезапустить модуль.
AT+RST – Restart module | |
Отклик | OK |
Параметр | null |
Пример (команда – ответ) | AT+RST
OK ets Jan 8 2013,rst cause:2, boot mode:(3,7) load 0x40100000, len 1856, room 16 2nd boot version : 1.5 rl??§с (мусор…перезапуск модуля) |
3. AT+GMR – Просмотр информации о версии прошивки
Эта AT команды используется для проверки версии AT команд и SDK, которую использует модуль, тип её “выполнено”.
AT+GMR – View version info | |
Отклик | <AT version info> <SDK version info> <compile time> OK |
Параметр | <AT version info> information about AT version <SDK version info> information about SDK version <compile time> Время bin был составлен |
Пример (команда – ответ) | AT+GMR AT version:1.0.0.0(Apr 16 2016 13:02:45) SDK version:1.5.3(aec24ac9) compile time:Apr 18 2016 14:11:00 OK |
4. AT+GSLP – Enter deep-sleep mode
Эта команда предназначена для вызова “глубокого спящего режима” модуля, тип которого является “установить”. Незначительная корректировка должна быть сделана до того, как ввести модуль режим глубокого сна, надо соединить XPD_DCDC(GPIO16) с EXT_RSTB(RST) через 0 Ом резистор.
AT+GSLP=<time> | |
Отклик | <time>
OK |
Параметр | Единица времени <time> в ms. ESP8266 проснетесь после глубокого сна <time> ms. |
Пример (команда – ответ) | AT+GSLP=5000
OK |
5. ATE – AT commands echo
Эта команда ATE представляет собой команду триггера управления эхо-сигналом. Это означает, что подаваемые команды могут быть транслированы обратно отправителю. Возможны всего два параметра. Команда возвращает “OK” в обычных случаях и “ERROR”, когда параметр был определен, отличный от 0 или 1. По умолчанию эхо включен. Для обучения эхо желательно иметь включенным, а для работы можно выключить, чтобы убрать лишние данные.
ATE – AT commands echo | |
Отклик | OK |
Параметр | ATE0 – Переключатель эхо отключен ATE1 – Переключатель эхо включен |
Пример (команда – ответ) | ATE0
OK ATE1 OK |
6. AT+RESTORE – Factory reset
Эта команда используется для “сброса всех параметров”, восстанавливаются значения сохраненных во флэш (в соответствии с приложением), восстановление к заводским настройкам, значению по умолчанию. Модуль будет пере запущен, когда после выполнения команды.
AT+RESTORE – Factory reset | |
Отклик | OK |
Параметр | Восстановление заводских настроек. Перезапуск модуля. |
Пример (команда – ответ) | AT+RESTORE
OK ets Jan 8 2013,rst cause:2, boot mode:(3,6) load 0x40100000, len 1856, room 16 2nd boot versioboot version : 1.5 rlЋ‚rlЊћвЊblЊbr|мbаrbЋаlbмтnоЂnnвlblЊlЊ?l§Ю???ll`?n§о |
7. AT+UART – UART configuration
Эта команда устанавливает конфигурацию UART и записывает новую конфигурацию во флэш. Он хранится в качестве параметра по умолчанию, а также будет использоваться в качестве скорости передачи данных по умолчанию в дальнейшем.
AT+UART=<baudrate>, <databits>, <stopbits>, <parity>, <flow control> Эту команду не рекомендуется применять в разработках. Для новых разработок использовать команды AT+UART_CUR и AT+UART_DEF. |
||
Пример | AT+UART=115200, 8, 1, 0, 0 | |
Отклик | OK | |
Параметр | <baudrate> | Baudrate range: 110 to 115200*40 (4.608 Mega) |
<databits> | 5: 5 bits data 6: 6 bits data 7: 7 bits data 8: 8 bits data |
|
<stopbits> | 1: 1 bit stop bit 2: 1.5 bit stop bit 3: 2 bit stop bit |
|
<parity> | 0: None 1: Odd 2: EVEN |
|
<flow control> | 0: disable flow control 1: enable RTS 2: enable CTS 3: enable both RTS and CTS |
|
Заметки | • Эта конфигурация будет также хранить скорость передачи данных в качестве скорости по умолчанию в области параметров пользователя во флэш-памяти для загрузки. • Управление потоком нуждается в поддержке аппаратных средств: MTCK в UART0 CTS и MTDO в UART0 RTS. |
|
Пример (команда – ответ) | AT+UART=115200,8,1,0,0
OK |
8. AT+UART_CUR – current UART configuration
Эта команда устанавливает текущую конфигурацию UART, она не сохраняет значение во флэш памяти. Эти настройки будут актуальны, только для текущего сеанса работы модуля. Эти настройки действуют до момента выключения питания или рестарта.
AT+UART_CUR=<baudrate>, <databits>, <stopbits>, <parity>, <flow control> | ||
Пример | AT+UART_CUR=115200, 8, 1, 0, 0 | |
Отклик | OK | |
Параметр | <baudrate> | Baudrate диапазон: 110 до 115200*40 (4.608 Mega) |
<databits> | 5: 5 bits data 6: 6 bits data 7: 7 bits data 8: 8 bits data |
|
<stopbits> | 1: 1 bit stop bit 2: 1.5 bit stop bit 3: 2 bit stop bit |
|
<parity> | 0: None 1: Odd 2: EVEN |
|
<flow control> | 0: disable flow control 1: enable RTS 2: enable CTS 3: enable both RTS and CTS |
|
Заметки | • Эта конфигурация не будет сохранять параметры во флэш-памяти для загрузки. • Управление потоком нуждается в поддержке аппаратных средств: MTCK в UART0 CTS и MTDO в UART0 RTS. |
|
Пример (команда – ответ) | AT+UART_CUR=115200,8,1,0,0
OK |
9. AT+UART_DEF – default UART configuration
Эта команда устанавливает конфигурацию UART по умолчанию, она сохраняет значение во флэш памяти. И эта конфигурация будет вступать в силу при сбросе или при включении модуля и будет использоваться в дальнейшем.
AT+UART_DEF=<baudrate>, <databits>, <stopbits>, <parity>, <flow control> | ||
Пример | AT+UART_DEF=115200, 8, 1, 0, 0 | |
Отклик | OK | |
Параметр | <baudrate> | Baudrate диапазон: 110 до 115200*40 (4.608 Mega) |
<databits> | 5: 5 bits data 6: 6 bits data 7: 7 bits data 8: 8 bits data |
|
<stopbits> | 1: 1 bit stop bit 2: 1.5 bit stop bit 3: 2 bit stop bit |
|
<parity> | 0: None 1: Odd 2: EVEN |
|
<flow control> | 0: disable flow control 1: enable RTS 2: enable CTS 3: enable both RTS and CTS |
|
Заметки | • Эта конфигурация будет сохранять параметры во флэш-памяти для загрузки. • Управление потоком нуждается в поддержке аппаратных средств: MTCK в UART0 CTS и MTDO в UART0 RTS. |
|
Пример (команда – ответ) | AT+UART_DEF=115200,8,1,0,0
OK |
10. AT+SLEEP – sleep mode
Эта команда переключает ESP8266 спящий режим. Она может быть использован только в режиме станции. По умолчанию, установлен режим – Модем-сон.
AT+SLEEP – sleep mode | ||
Команда | AT+SLEEP? | |
Отклик | +SLEEP : <sleep mode> OK |
|
Параметр | <sleep mode> 0 : Отключить спящий режим 1 : режим Легкий-сон 2 : режим Модем-сон |
|
Пример (команда – ответ) | AT+SLEEP? +SLEEP:2OK |
|
Команда | AT+SLEEP=<sleep mode> | |
Отклик | OK | |
Пример (команда – ответ) | AT+SLEEP=0
OK |
11. AT+RFPOWER– set maximum value of RF TX Power
Эта команда устанавливает значение выходной мощности радио передатчика ESP8266.
AT+RFPOWER – set RF TX Power | ||
Команда | AT+RFPOWER=<TX power> | |
Отклик | OK | |
Параметр | <TX power> 0 : минимальное 82 : максимальное Единица – 0.25 dBm |
|
Пример (команда – ответ) | AT+RFPOWER=82
OK |
12. AT+RFVDD– set RF TX Power according to VDD33
Эта команда устанавливает ESP8266 RF TX мощность в соответствии с VDD33. Для того, чтобы получить напряжение мощности ESP8266 VDD3P3, TOUT вывод должен быть приостановлен. TOUT вывод должен быть приостановлен для измерения VDD33.
AT+RFVDD – set RF TX power according to VDD33 | ||
Команда | AT+RFVDD? | |
Отклик | +RFVDD:<VDD33> OK |
|
Параметр | <VDD33> Параметр VDD33 единица измерения: 1/1024 V. TOUT передача должна быть приостановлена для изменения VDD33. | |
Пример (команда – ответ) | AT+RFVDD? +RFVDD:65535OK |
|
Команда | AT+RFVDD=<VDD33> | |
Отклик | OK | |
Параметр | <VDD33> power voltage of ESP8266 VDD33, range [1900, 3300] | |
Пример (команда – ответ) | AT+RFVDD=3000
OK |
|
Команда | AT+RFVDD | |
Отклик | OK | |
Параметр | “AT + RFVDD” автоматически установит RF TX мощность в соответствии с VDD33. TOUT передача должна быть приостановлена для изменения параметра. | |
Пример (команда – ответ) | AT+RFVDD
OK |
Читайте продолжение WiFi ESP8266 – AT команды связанные с функцией Wi-Fi
Это может быть интересно
- Четырех канальный терморегулятор ch-4000Views: 3198 Четыре независимых канала регулирования температуры, одновременно можно подключить 16 датчиков температуры DS18B20 с удалением до трехсот метров. Можно для регулировки выбрать любой датчик, подключенный к устройству. Каждый канал может работать …
- Самый простой диммер для светодиодного освещенияViews: 3035 Светодиоды все больше входят в нашу жизнь как источники освещения и как само собой разумеющееся, это вопрос регулировки яркости. Существует множество схемных решений, но в нашем варианте мы …
- My libraries for Altium DesignerViews: 3962 Attention, this version of the database is outdated today. See updates in articles https://catcatcat.d-lan.dp.ua/altium-designer-my-setup-system-and-project-structure and https://catcatcat.d-lan.dp.ua/altium-designer-my-setup-system-and-project-structure-v23-2/ My libraries for Altium designer (Updated V – 29/05/2022) (c) 2021 …
- Kitchen timer with contactless gesture controlViews: 653 Кухонний таймер з безконтактним керуванням жестами дозволяє встановити необхідний період часу для приготування страв, не торкаючись пристрою. Дуже зручно під час приготування їжі, коли руки забрудниться. Усі …
- ESP8266 процедура получение данных даты и времени от серверов точного времени.Views: 5884 Эта функция доступна уже в версии 1.6.1. Для многих приложений, необходимо часы реального времени, если в вашем проекте есть модуль WiFI ESP8266, то легко можно сделать следующим образом. …
- Сенсорный выключатель светаViews: 12232 Хотя в настоящий момент актуальны системы управления освещением с передачей данных по электросети, но я думаю, что проекты такого рода тоже имеют право на жизнь. Анонс Три вида …
- Проект с использованием MCC часть 09Views: 913 Эта часть будет посвящена созданию практического проекта управления освещение. Тех задание: Два выхода управления ШИМ – светодиодным освещением. Две кнопки управления, каждая кнопка управляет, своим каналом, логика самая …
- УКВ – радиоприем, часть 1Views: 9606 Музыкальная тема к статье, слушаем: Первый мой радиоприемник, выглядел так. Использовал исключительно в школе на уроках, держась за одно ухо и преданно смотря на училку и сладко улыбаясь. …
- AD9833 – Programmable Waveform Generator – part twoViews: 1772 Прошло время и появилась тема, что-бы закончить проект AD9833 – Programmable Waveform Generator. Приехали печатные платы. В этот раз я печатные платы заказывал в https://jlcpcb.com/ делал это в …
- Temperature measurement with NTC thermistor.Views: 325 Проекты в которых присутствовало измерение температуры начинал с цифровых датчиков, т.к. в них все просто и не надо ничего преобразовывать и вычислять. При использовании цифровых датчиков ты получаешь …