Esp8266 прошивка espeasy linux

ESP Easy: flash the firmware with esptool.py on ESP8266 (GitHub)

ESP Easy is very easy to flash on Windows using the installation utility contained in the project repository. If you are a Linux user (PC, Raspberry Pi, Orange PI …) or macOS, it will be necessary to use esptool.py already presented in this tutorial. In this tutorial, we will install on firmware on a Wemos D1 Mini, but the method also applies to all ESP8266 NodeMCU (attention, some boards need to be in bootload mode before you can flash the firmware).

Install Python and esptool.py

Before you begin, verify that the version 2.7.x of python is installed correctly. Open the Terminal and run Python. If Python is installed, the shell must be started. Type exit() to exit the shell.

If Python is not installed on your machine, install it by going here.

To install esptool.py, it is best to let Python load it so that all dependencies are installed at the same time.

In case of difficulty, you can also run python -m pip install esptool or pip2 install esptool.

On Windows

Launch PowerShell (which allows you to run Unix commands). Go to the esptool installation directory, for example Documents and launch the installation of esptool (and dependencies) as on macOS or Linux.

You can now call esptool.py from anywhere. Indeed, it was installed in the default executables directory of Python (C: \ Python27 \ Scripts ).

Flash ESP Easy firmware on a Wemos D1 Mini

Now that everything is ready, we will be able to launch the installation. In a Terminal, place yourself in the ESP Easy directory. You can retrieve it directly from GitHub here or clone it using the command

The esptool.py command to flasher the flash memory of an ESP8266 is of the following form

We must therefore pass the following parameters:

  • The serial port on which the ESP8266 is connected. On moaOS or linux, run the ls /dev/tty.* command. On Windows, run mode in the command prompt
  • mode (-fm or –flash_mode): dio by default
  • size (-fs or –flash_size): 32m for 4MB
  • nodemcu-firmware: the path to the binary to flash. Here ESPEasy_Rxxx_xxxx.bin

What gives for example for a Wemos D1 Mini (4MB)

It is possible to specify other parameters

  • baud (-baud): the transfer speed. In case of problem, it should not hesitate to decrease it to 115200 baud for example.
  • after (–after): allows to reset (no_reset, hard_reset or soft_reset) after the flash operation.

How to flash ESP Easy on another ESP8266 NodeMCU board

Esptool.py is a utility for all ESP8266 boards on the market. It will be necessary to adapt the command by passing the parameters that correspond to your board. It also works for the new generation ESP32. To do this, it will be necessary to go in the documentation of esptool.py which is here. Esptool.py send another

The boards NodeMCU, WeMOS, HUZZAH Feather, Core Board, ESP32-WROVER-KIT are able to switch to bootload mode, for others it will be necessary to apply the classical method already explained in this tutorial.

To retrieve the characteristics of the board, run the command esptool.py –port COMx flash_id

And on Windows?

On Windows, everything works the same. Esptool being a Python script, the program is cross-platform. It will simply change the port of destination. On Windows it will be of the form COM1, COM2 … To know the COM port to which the ESP8266 is connected, execute the command mode. The command allows to retrieve many more parameters than the command under Linux.

Nothing works! Clear memory

If you encounter installation problems, you may try to erase the memory with the erase_flash command.

Источник

Tutorial ESPEasy Firmware Upload

When you buy the ESP module it will most likely have the factory AT or NodeMCU (LUA) firmware inside. To get the ESP Easy running, you need to replace the firmware with the ESP Easy firmware first.

This can be done with a special flash upload tool that uses the ESP serial interface. You can download the latest stable ESP Easy build from our website. This downloadable zipfile contains the flash tool, a command batchfile to launch the actual flash process and three versions of the binary firmware image.

Contents

Know your hardware

It’s important to understand the hardware of your module. Some have USB to serial build in, some have not. Some modules can be flashed with an auto-reset mechanism, some need to be put in flash mode manually.

Also make sure that you know the flash size of the ESP module that you’re going to flash with the firmware as you need the right firmware file for this particular module.

The ESPEasy 2.0 or ESPEasy Mega firmware will not work on the smaller devices, you’ll need the 4096k modules.

Flash size

Some information on well known modules:

512k Modules

It is best to avoid buying these modules. They will most probably not supported in future versions of ESP Easy. OTA is not possible.

1024k Modules

4096k Modules

Connecting the module

For your first experience with ESP Easy, we recommend the NodeMCU V1 development board, because it has a build in USB to Serial convertor and can be programmed without manual intervention.

Читайте также:  Компонент joomla для агентства недвижимости

This module requires CP2102 drivers on your host before the COM port will be recognized. Download and install these drivers before connecting the board to your computer.

The ESP-01 needs an external USB to Serial board to upload the firmware. Well known are FT232, PL2302, CP2102 based modules. Make sure you install the right drivers first.

To make life easier for ESP-01 you can also use this board that has a CP2102 convertor and auto-reset circuitry for ESP-01:

Flashing the module

After successful uploading, reboot the ESP module (press reset if you have a button or power off/power on the module)

The ESP module should start a Wifi Access point named ESP_0

Flash scripts

The zip file contains the esptool and a script for Windows, a similar bash script for Linux is available on the flash script linux page.

Источник

Flashing¶

The programming procedures for flashing an ESP82xx and ESP32 via the serial port differ slightly.

In general the steps are the same to enter flashing mode on both types ESP boards:

Boot the node with GPIO-0 connected to GND

Start the flashing procedure

Most boards which already have an USB to serial on board, also have some circuit present to help booting into flash mode via the USB port. Such a circuit consists of 2 transistors and a few resistors to trigger the reset and GPIO-0 pin in the correct sequence. All flashing software is able to use this way of bootstrapping.

Some flashing tools also support different methods and thus require a parameter indicating the specific method to boot into flash mode. For ESP boards with an USB to serial adapter on board, the needed boot method is referred to as “NodeMCU” or some abbreviation of this name.

Flashing Software¶

A number of flashing tools is included in the nightly build ZIP files. The included tools are all for Windows.

ESP.Easy.Flasher.exe A flasher with graphic UI written by Grovkillen. This tool can also be used to send a number of commands to prepare the unit while still connected to the PC. For example to configure WiFi.

esptool.exe A command line ESP8266/ESP32 build and upload helper tool, maintained by Ivan Grokhotkov

FlashESP8266.exe A very simple flash tool “ESPEasy Flasher” for ESP82xx. Should be called from the same directory as the compiled bin files: C:\Download\ESPEasy\bin> ..\FlashESP8266.exe

Espressif Flash Download Tool located in the directory Espressif_flash_download_tool_v3.8.5 . New versions can be found Espressif Download

For Linux or Mac users, the recommended tool for ESP82xx/ESP32 is esptool.py

Flashing Parameters¶

Some flash tools allow to set specific parameters, like flash chip related settings. Those parameters are also defined in the compiled .bin files, but when set in the flash tool they are overridden for the boot sequence. As soon as the ESPEasy code is executed, the configured parameters at compile time will be used.

N.B. Not all parameters can be set in all flashing tools.

See the documentation of the flash tool for more information.

Baud Rate¶

Most flashing tools allow to set the communication speed. It is advised to use a baud rate of 115200 bps as this seems to be the best trade off between flashing speed and success rate. However it is possible to select a higher baud rate, which may reduce flashing time significantly.

Boards using a FTDI USB to serial chip seem to work fine when flashing at rates of upto 921600 bps. When they fail, it is often presented as a timeout. Try again with flashing at a lower baud rate.

Boards using a CH340 USB to serial chip are less likely to handle high baud rates without errors.

Crystal¶

On ESP8266, the tool will overwrite the 48th byte of RF parameter(default_init_data.bin) if chosen. This option will do nothing for ESP32 chips.

SPI Speed¶

This is the SPI clock speed to read/write SPI flash. (40Mhz default)

Usually 40Mhz is enough and safe, if you want to enable 80Mhz for SPI flash, make sure:

The flash you are using support 80Mhz.

Your PCB layout is good enough for 80Mhz.

The configure byte is in the 4th byte from flash address 0x0. So the tool will overwrite the 4th byte of bin file which is to be written to 0x0 address.

SPI Mode¶

This sets the SPI data mode for flash R/W operations.

From fastest to slowest mode:

QIO/QOUT: use /HOLD and /WP pin as SPI data2/data3, make sure your flash support Quad instructions before select. QIO and QOUT are almost the same. “QIO” will send address in quad mode, where “QOUT” will not.

DIO/DOUT: Use Dual mode instructions to read/write flash. DIO and DOUT are almost the same. “DIO” will send address in Dual mode, where “DOUT” will not.

Almost all flash chips used on ESP32 support DIO/DOUT mode.

Almost all ESPEasy builds are set to use “DOUT” mode.

ESP82xx¶

ESPEasy builds based on esp8266/Arduino library version 2.7.x and later can handle compressed .bin.gz files. When in doubt, just use the .bin files.

ESP32В¶

Flashing ESP32 nodes is slightly more complex compared to ESP82xx.

The main differences:

The binary layout on the flash is split in several parts each with their own specific offset from the start of the flash block.

ESP32 allows to have several fuses set (flags which can be set only once)

Most tutorials show the Espressif Download Tool with a number of separate binaries each with their own offset. This is rather error prone, and therefore the ESPEasy build process creates 2 different .bin files.

A binary with factory in the file name, used for flashing via serial.

A binary without factory in the file name, used for flashing via the web interface.

The factory bin file has all separate binaries with their offsets included in a single file. Therefore the needed offset for this factory bin file should be set to 0. (starting at the begin of the flash area)

Читайте также:  Как прокачать принтер кэнон 3411

When the ESP board later needs to update the firmware to a different version, there is no need for a serial connection. This can be done “OTA” (over the air) via the web interface. For OTA updates, use the bin file without factory in the file name.

Flash ESP32 with Espressif Download Tool¶

Select “Developer Mode”¶

Select “ESP32 DownloadTool”¶

Select the bin file and offset of 0В¶

Double check all parameters and start flashing¶

Support us by using one of these alternatives: Patreon Ko-Fi PayPal

© Copyright 2018-2022, ESP Easy.
Created using Sphinx 4.5.0.

Источник

ESPEasy — готовая прошивка для ESP8266. Загрузка и настройка

Готовая прошивка «ESP Easy» позволит легко превратить любой модуль на базе ESP в многофункциональный сенсор или модуль для умного дома под управлением таких систем, как OpenHab и Domoticz. ESP Easy является отличным инструментом для изучения протокола MQTT.

Всё что вам необходимо сделать — это один раз загрузить прошивку ESP Easy на ваш модуль ESP, а дальше все настройки системы происходят в браузере с помощью удобного веб-интерфейса. Для ежедневной работы с модулем не нужны никакие дополнительные программы.

Последней стабильной версией прошивки ESP Easy является R120. Она хорошо подходит не только для домашних экспериментов, но и для производственных прототипов. Модуль с ESP Easy на борту может выступать в роли низкоуровневого управляющего устройства, но этот функционал в системе еще не полностью стабилен. Полный список возможных подключаемых дачиков, устройств ввода-вывода, реле и дисплеев можно посмотреть здесь.

Прошивка ESP Easy может быть установлена практически на любые платы на базе ESP8266. Вы можете прошить как самые простые модули типа ESP-01 или ESP-12, так и устройства типа NodeMCU development board, Wemos D1 и практически все устройства от производителя Sonoff. После прошивки вы сможете работать с GPIO 0, 1, 2, 3, 4, 5, 12, 13, 14, 15, 16, A0. Пин номер 9 не рекумендуется использовать из-за нестабильной работы. На модулях Sonoff будут доступны пины 0 (кнопка), 12 (Реле), 13 (Светодиод) и, возможно, еще несколько в зависимости от конкретной модели устройства.

Поддерживаются следующие протоколы для передачи данных и работы с системами умных домов: OpenHAB MQTT, Domoticz HTTP и MQTT, PiDome MQTT, ThingSpeak, EmonCMS, протокол HTTP и другие. Подробнее про работу с ними будет написано в разделе с примера использования.

С чего начать?

В большинстве случаев модули ESP продаются с предустановленными прошивками AT firmware или NodeMCU LUA firmware. Начать делать сенсоры на базе ESPEasy легко: нужно просто заменить стандартную прошивку на ESPEasy, и можно приступать к работе. Это можно сделать с помощью программы flashtool (к сожалению, она доступна только на Windows) или с помощью Arduino IDE. Во время установки мы будем действовать по следующей схеме:

1. С официального сайта скачать стабильную прошивку
В архиве также будет программа flash tool для прошивки

2. Подключить модуль ESP к компьютеру
Используем USB/UART переходник для простых плат типа ESP-01 или просто подключаем Micro-USB к платам типа NodeMCU dev board.

3. Загружаем ESPEasy на плату с помощью flash tool или Arduino IDE
Обратите внимание на то, что GPIO должен быть соединен с GND при включении для запуска режима прошивки на плате.

4. Перезапускаем модуль ESP. Появляется WiFi сеть с названием «ESP_Easy_0». Подключаемся к ней
(в версии прошивки 2.0 точка доступа будет называться ESP_0)
Если страница настройки не открылась автометически, необходимо набрать 192.168.4.1 в вашем браузере

5. В появившемся окне настраиваем подключение к вашей домашей WiFi сети и нажимаем Connect

6. Модуль ESP перезагрузится и подключится к вашей домашней сети

7. Откройте в браузере новый IP адрес платы ESP и начинайте собирать данные с сенсоров

Поздравляем, всё настроено, и вы можете начать работать с ESPEasy!

Скачиваем прошивку

Скачиваем стабильную версию прошивки с официального сайта — ESPEasy R120.

Подключаем модуль ESP к компьютеру

Для всех, кто только начинает разбираться с EPS, MQTT и умными домами, мы рекомендуем обратить внимание на модуль NodeMCU ESP8266 (он же NodeMCU dev board). У него есть ряд плюсов: встроенный преходник USB/UART, большое количество GPIO, аналоговый пин A0, не нужно подключать GPIO к GND для прошивки, наличие питания 5 и 3.3 вольта. Просто подключаете плату к компьютеру с помощью Micro-USB кабеля и начинаете работать. NodeMCU dev board позволит вам сэкономить большое количество времени! При программировании обратите внимание, что номер ножки не соответствует номеру GPIO.

Также встроенный переходник USB/UART есть на плате Wemos D1 Mini:

Если у вас плата без переходника, например, ESP-01 или ESP-12, или вы хотите прошить модули Sonoff, то вам понадобится переходник USB/TTL.

В обоих случаях дополнительно вам понадобится установить на компьютер драйвер для вашего встроенного или внешнего переходника USB/TTL.

Загрузка прошивки ESPEasy с помощью Flash Tool

Данный способ подходит только для компьютеров с Windows, но он самый простой! Сначала необходимо проверить к какому порту компьютера подключен наш ESP помуль. Подключаем модуль к компьютеру по USB. Открываем «Диспетчер устройвств», смотрим вкладку «Порты (COM и LPT)» и видим нашу плату. В моем случае порт COM4. Если ваше устройство не отображается в списке портов — значит вы не поставили драйвер для USB/TTL переходника.

Обратите нимание, что перед прошивкой модулей с внешнем адаптером USB/TTL их необходимо перевести в режим загрузки программного обеспечения. Для этого необходимо соединить GPIO0 на плате ESP с GND, воткнуть переходник в плату, а потом уже в USB. Если у вас NodeMCU или Wemos, то этого делать не нужно.

Распаковываем скаченный архив ESPEasy_R120.zip в папку ESPEasy_R120 и запускаем файл flash.cmd. Откроется черное окно, в котором необходимо будет ответить на несколько вопросов.

1 вопрос: Comport (example 3,4. ) — необходимо ввести номер порта, к которому подключен модуль ESP и нажать Enter. Я ввожу 4. Enter.

2 вопрос: Flash size (example 512, 1024 or 4096) — необходимо ввести количество памяти, которое доступно на нашей плате. Сколько памяти на вашей плате вы можете посмотреть в этой таблице. Для платы NodeMCU dev board вводим 4096. Enter.

3 вопрос: Build — необходимо ввести номер версии прошивки, которую вы загружаете. В нашем случае вводим 120. Enter.

В чёрном окне проскочет несколько строк с системным кодом, и начнут появляться точки, и через некоторое время система напишет, что загрузка завершена. Вы увидете такой экран:

Читайте также:  Админ шаблон для wordpress

Нажимаем любую клавишу. Прошивка ESPEasy успешно загружена на ваш модуль! Поздавляю! Переходим к пункту «Подключение и первичная настройка» в этой статье.

Возможные проблемы с Flash Tool

Если вы не видите своё устройство в диспетчере устройств, значит у вас не установлен драйвер переходника USB/TTL.

Если файлы не распаковать в папку, а просто запустить из архива, то после вопросов система выдаст ошибку, т.к. не сможет работать с файлом esptool.exe. Просто распакуйте архив в папку и заново запустите flash.cmd.

Если вам так и не удалось прошить модуль ESP с помощью flash.cmd, но плата видна в системе, то вы можете сделать прошивку программой ESPEasy Flasher. В ней надо будет только выбрать порт и соответствующую прошивку. В скаченной папке с прошивками будет 3 разных файла прошивок для плат с разным размером памяти.

Если у вас не получилось сделать загрузку ни одним из этих способов — вы можете попробовать сделать загрузку через Arduino IDE.

Загрузка прошивки ESPEasy с помощью Arduino IDE

Данный способ отлично подходит, если вы уже загружали свои собственные скетчи на плату через Arduino IDE и сейчас хотите попробовать поработать с ESPEasy. Если же вы раньше просто программировали ardunino и ни разу не прошивали esp8266, то предварительно вам необходимо подготовить Arduino IDE. Подробную инструкцию вы можете найти в нашей статье. Через Arduino IDE вы можете сделать загрузку как на Windows, так и на Mac OS.

В папке, которую вы скачали с официального сайта, кроме файлов последней прошивки и программы для загрузки также есть папка Source. В ней находятся два папки: в одной — необходимые библиотеки, во второй — файлы нашей прошивки. Копируете библиотеки из папки librares в папку с библиотеками ArduinoIDE на вашем компьютере.

На компьютерах Windows эта папка обычно: C:\Users\USERNAME\Documents\Arduino\librares — в папке с вашими документами.

На Mac OS: \Users\USERNAME\Documents\Arduino\librares — в папке с вашими документами.

Дальше заходим во вторую папку из скаченного архива (\Source\ESPEasy) и запускаем оттуда файл ESPEasy.ino. Откроется Arduino IDE.

Теперь в меню «Инструменты» необходимо выбрать порт, тип платы, размер памяти. Какие параметры выбирать для разных плат и как настраивать Arduino IDE для работы с ESP вы может прочитать в нашей отдельной статье.

Для NodeMCU dev board выбираем параметры как на картинке + выбираем свой порт.

Заходим в меню «Скетч» и выбираем «Загрузка»

В Arduino IDE внизу в чёрной консоли пробежит несколько строчек системных сообщений, потом появится несколько строчек с точками и программа напишет, что загрузка прошла успешно. Если программа выдаёт строчки с оранжевыми ошибками, то скорее всего у вас проблемы с подключение платы к компьютеру.

Прошивка загружена на модуль ESP, теперь мы можем переходить к настройке.

Подключение и первичная настройка

Теперь на своём компьютере откройте список доступных Wi-Fi сетей — в списке должна появиться сеть ESP_0 (В некоторых версиях прошивки возможно будет Esp_Easy_0). Подключитесь к ней (стандартный пароль configesp).

Если ваш браузер не открыл автоматически страницу настройки EspEasy, то в адресной строке браузера наберите 192.168.4.1. В появившемся окне необходимо выбрать вашу домашнюю wi-fi, ввести пароль от нее в поле password и нажать кнопку Connect.

Вы увидите сообщение о том, что система перезагружается.

После этого ваш компьютер отключится от сети Esp и подключится обратно к вашей домашнией Wi-Fi сети. В браузере покажется ip адрес вашего esp. В адресной строке вашего браузера введите ip esp модуля (например, 192.168.1.65). Откроется окно с основный информацией о модуле esp, на котором вы можете посмотреть: беспрырывное время работы модуля, уровень сигнала, ip адрес модуля и точки доступа, версию прошивки, MAC адреса, информация о свободной памяти и список других esp модулей в сети.

Вверху расположено меню для перехода в разделы системы. Зайдите во вкладку Config. Здесь находятся основные настройки системы, рассмотрим их подробнее.

1. Name — имя вашего ESP модуля. Оно используется как сетевое имя, а также для идентификации каналов при работе по MQTT протоколу.

2. Admin Password используется для установки пароля на настройки. По умолчанию пароля нет, но если его установить, то при открытии ip адреса вашего esp модуля необходимо будет ввести пароль. Только в этом случае вы сможете редактировать настройки. Это очень удобно, если вы используете свои модули в публичных местах.

3. SSID, WPA Key — используется для подключения к вашей домашней Wi-Fi сети.

4. WPA AP Mode Key — данный пароль используется в том случае, если ваш esp модуль работает в режиме точки доступа.

5. Unit nr — это номер машего модуля в сети. Для корректной работы системы он должен быть уникальным для каждого esp модуля.

6. Protocol и следующие за ним поля отвечают за выбор и настройку сетевого протокола, по которому ваш esp модуль взаимодействует с сервером умного дома или облачным сервером сбора данных. Мы можем выбрать OpenHAB MQTT, Domoticz MQTT, PiDome MQTT и ThingSpeak и другие менее популярные варианты.

7. Sensor Delay отвечает за то, как часто данные с модуля ESP отправляются на сервер. Значение необходимо писать в секундах.

8. Sleep Mode используется для перевода устройства в режим глубокого сна. Используйте этот параметр только после полной настройки вашего устройста.

В разделе Hardware вы можете выбрать какой светодиод на плате будет отвечать за состояние Wi-Fi подключения, а также выставить дефолтные состояния пинов. Во вкладке Rules можно настроить простые правила автоматизации. Обратите внимание, что по умолчанию данная вкладка не отображается. В разделе Devices происходит добавление и настройка датчиков и управляемых девайсов. В разделе Tools находятся более тонкие настройки, а также есть поле для выполнения команд.

В данной статье мы рассказали вам о том, что из себя представляет готовая прошивка EspEasy, для чего ее можно использовать, как прошить ее ваш ESP модуль, а также как провести первичные настройки. В следующих статьях мы подробно расскажем о том, как использовать EspEasy в ваших проектах. Поключим к плате ESP самые популярные датчики, поробуем передавать данные с них в облачный сервер ThingSpeak и построить по ним графики. Также мы подключить ESP модуль к умному дому на базе OpenHAB по протоколу MQTT — будем собирать данные с датчиков и управлять светодиодами.

Источник

Поделиться с друзьями
КомпСовет
Adblock
detector